使用 Python 加载人类可读的十六进制字符串 Private/Public 键(或将它们转换为 Pem 或 ASN.1 格式)

Loading Human Readable Hex String Private/Public Keys Using Python (Or Converting Them to Pem or ASN.1 Format)

我有一个人类可读的 private/public 十六进制字符串形式的椭圆曲线 (ecdh) 密钥对。 public 密钥是 64 Bytes128 hex 个字符),私钥是 32 Bytes

问题:如何将它们加载到 python 加密密钥或使用 python 将它们转换为 pem 或 der 格式?

我可以轻松加载 pem 命令 der private/public 密钥,因此将它们转换为这两种格式之一就足够了。

没有人能够给你一个具体的答案,因为它取决于图书馆。

通常,EC public 密钥使用 RFC 5480 中的 ASN.1 定义进行编码。

经过更多研究,我能够弄清楚这一点。 Python-ECDSA 具有允许加载人类可读密钥的字节并以 PEM 或 DER 格式输出它们的功能。参见 python-ecdsa here