看来您有DER
格式为的证书,而不是PEM
。这就是为什么当您提供-inform PEM
命令行参数(告诉openssl期望什么样的输入格式)时它可以正常工作的原因。
您的私钥可能使用了相同的编码。看起来该openssl rsa
命令似乎也接受-inform
参数,因此请尝试:
openssl rsa -text -in file.key -inform DER
-----BEGIN RSA PRIVATE KEY-----
MIGrAgEAAiEA0tlSKz5Iauj6ud3helAf5GguXeLUeFFTgHrpC3b2O20CAwEAAQIh
ALeEtAIzebCkC+bO+rwNFVORb0bA9xN2n5dyTw/Ba285AhEA9FFDtx4VAxMVB2GU
QfJ/2wIRANzuXKda/nRXIyRw1ArE2FcCECYhGKRXeYgFTl7ch7rTEckCEQDTMShw
8pL7M7DsTM7l3HXRAhAhIMYKQawc+Y7MNE4kQWYe
-----END RSA PRIVATE KEY-----
While DER
是二进制编码格式。
有时,密钥以PKCS#8格式(可以是PEM或DER编码)分发。尝试一下,看看会得到什么:
openssl pkcs8 -in file.key -inform der