繁体   English   中英

GCP KMS 导入以太坊钱包私钥

[英]GCP KMS Importing Ethereum Wallet private key

我有一个由 64 个字节组成的以太坊私钥。 我需要使用 p256k1 椭圆曲线(以太坊上使用的签名算法)将此密钥用于非对称加密。

现在在导入我的密钥的过程中,KMS 支持这一点,我在 GCP KMS 文档中遇到了以下部分。

在此处输入图像描述

它规定密钥必须是 PKCS#8 格式。 我已经尝试了几个使用 openssl 的命令。 像下面这样

openssl pkcs8 -topk8 -in ./private.pem -outform DER -out ./private.key

这是我的private.pem格式

-----BEGIN PRIVATE KEY-----
64_CHAR_PRIVATE_KEY_PASTED_HERE
-----END PRIVATE KEY-----

我知道这可能不是正确的转换方式,因为在我运行此命令时会发生错误。

unable to load key
4456490668:error:0DFFF07B:asn1 encoding routines:CRYPTO_internal:header too long:/System/Volumes/Data/SWE/macOS/BuildRoots/b8ff8433dc/Library/Caches/com.apple.xbs/Sources/libressl/libressl-75/libressl-2.8/crypto/asn1/asn1_lib.c:152:
4456490668:error:0DFFF066:asn1 encoding routines:CRYPTO_internal:bad object header:/System/Volumes/Data/SWE/macOS/BuildRoots/b8ff8433dc/Library/Caches/com.apple.xbs/Sources/libressl/libressl-75/libressl-2.8/crypto/asn1/tasn_dec.c:1132:
4456490668:error:0DFFF03A:asn1 encoding routines:CRYPTO_internal:nested asn1 error:/System/Volumes/Data/SWE/macOS/BuildRoots/b8ff8433dc/Library/Caches/com.apple.xbs/Sources/libressl/libressl-75/libressl-2.8/crypto/asn1/tasn_dec.c:317:Type=PKCS8_PRIV_KEY_INFO
4456490668:error:09FFF00D:PEM routines:CRYPTO_internal:ASN1 lib:/System/Volumes/Data/SWE/macOS/BuildRoots/b8ff8433dc/Library/Caches/com.apple.xbs/Sources/libressl/libressl-75/libressl-2.8/crypto/pem/pem_pkey.c:143:

我的目标仍然是能够尽可能安全地将密钥导入 KMS。 提前感谢您的回复:D

所以对于任何可能处理类似事情的人来说。 John Hanley向我指出这个链接,它描述了将以太坊私钥基本上转换为 EC PEM 或 DER 编码的密钥文件的过程。

需要添加几个字符串(链接的答案很好地解释了它)。 然后,我能够将 EC PEM 转换为 PKCS#8 DER 格式,这是将密钥导入 GCP KMS 所需的格式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM