如何将DER私钥转换为PEM?解决OpenSSL转换报错问题
二进制私钥转PEM格式解决方案
你的私钥确实大概率不是标准DER格式——从错误信息来看,OpenSSL尝试按PKCS#8和RSA私钥的DER结构解析均失败,说明输入的二进制数据不符合这两种DER编码的ASN.1规范。
以下是几种可行的解决方法:
先尝试让OpenSSL自动识别私钥格式,无需指定输入格式:
openssl rsa -in test.key -out test_pem.key若自动识别成功,会直接生成PEM格式密钥。
如果上述命令失败,尝试按PKCS#8 DER格式转换(部分二进制私钥采用PKCS#8编码,需用专门的子命令处理):
openssl pkcs8 -inform DER -in test.key -out test_pem.key -nocrypt注:
-nocrypt适用于未加密的私钥;若提示需要密码,去掉该参数并输入对应密码即可。若仍失败,检查是否为PKCS#12(.pfx/.p12)格式的二进制文件,尝试:
openssl pkcs12 -in test.key -nodes -out test_pem.key若文件有保护密码,执行时需输入密码。
可以先用
file命令判断文件类型,辅助定位格式:file test.key该命令会输出文件的类型描述,比如是否为ASN.1 DER、PKCS#12等。
内容的提问来源于stack exchange,提问作者dssof
相关产品推荐
相关产品推荐

