Unable to load Private Key. (PEM routines:PEM_read_bio:no start line:pem_lib.c:648:Expecting: ANY PRIVATE KEY)

匿名 (未验证) 提交于 2019-12-03 02:18:01

问题:

I have a .key file which is PEM formatted private key file. I didn't make this file but I got this from somewhere.

I wanted to see its MD5 hash with openssl tool like below command.

openssl rsa -in server.key -modulus -noout 

But this generates below error.

unable to load Private Key 13440:error:0906D06C:PEM routines:PEM_read_bio:no start line:.\crypto\pem\pem_lib.c:648:Expecting: ANY PRIVATE KEY 

Here's some asn1parse of the .key file.

openssl asn1parse -in server.key 0:d=0  hl=4 l= 603 cons: SEQUENCE 4:d=1  hl=2 l=   1 prim: INTEGER           :00 7:d=1  hl=3 l= 129 prim: INTEGER           :C141201603899993919CBAA56985E9C7 C6A2AF713A02F5FE88D38CEFBED9304599689280B84B0AB577A9719CA20DDA1246A894AF397A2C57 EE5A582B036CC367E3667454DCD82DBDBF187C35FE39F61C71B517DDDF576F5471B4EC2E045E0F9D 619F5616C4E832F00CBD0DBF41B4BA3CBC4B4B603AE1FE61965917DA732E0DEF 139:d=1  hl=2 l=   3 prim: INTEGER           :010001 144:d=1  hl=3 l= 128 prim: INTEGER           :1687B9AE67562CEDEBDD7A531B84CDB7 093CE138519B93C34B7F626076FF0A262B16EA71904ACB6251A39307C04ADE202055BA13DD9F1539 6123EE408183361A9BC08B9413FA360EA928E48CC3F52B33ACF2980758F02BA2139F652F30A257C2 2E45D7C25835FC4D22B9ECECC12AB632318D4F47E1EBDAD9781B96BCFF03A2D1   ... 

Is there anything more I can try?

回答1:

I changed the header and footer of the PEM file to

-----BEGIN RSA PRIVATE KEY----- 

and

-----END RSA PRIVATE KEY----- 

Finally, it works!



回答2:

> I have a .key file which is PEM formatted private key file. > ... > Here's some asn1parse of the .key file... 

That it appears OK with asn1parse leads me to believe its not PEM encoded.


Is there anything more I can try?

Because it appears to be ASN.1, try:

$ openssl rsa -in server.key -inform DER -modulus -noout 

Notice the -inform DER to switch between encodings.



回答3:

Remove any whitespace at the start of the .key file.



回答4:

Create CA certificate

c:\mycert>openssl genrsa -out privateKey.pem 4096 c:\mycert>openssl req -new -x509 -nodes -days 3600 -key privateKey.pem -out caKey.pem 


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!