125 votes

Impossible de charger la clé privée. (Routines PEM:PEM_read_bio:no start line:pem_lib.c:648:Expecting : UNE CLÉ PRIVÉE QUELCONQUE)

J'ai un fichier .key qui est un fichier de clé privée au format PEM. Je n'ai pas créé ce fichier mais je l'ai trouvé quelque part.

Je voulais voir son hachage MD5 avec l'outil openssl comme la commande ci-dessous.

openssl rsa -in server.key -modulus -noout

Mais cela génère l'erreur suivante.

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

Voici une analyse asn1parse du fichier .key.

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

 ...

Y a-t-il autre chose que je puisse essayer ?

0voto

Paul Dejean Points 1440

Dans notre cas, la cause du problème est que la clé privée que nous essayions d'utiliser était cryptée avec une phrase de passe.

Nous avons dû décrypter la clé privée en utilisant ssh-keygen -p avant que nous puissions utiliser la clé privée avec l'outil de ligne de commande openssl.

0voto

Poncin André Points 1

J'ai reçu les fichiers RTF des clés privées et publiques pour le certificat SSL HTTPCS. La méthode qui fonctionne pour moi pour faire .pfx avec mot de passe est : convertir le fichier rtf de la clé privée (privateKey.rtf) (avec un convertisseur en ligne gratuit) au format texte brut : privateKey.txt (ne pas copier/coller le texte de la clé privée). -----BEGIN PRIVATE KEY----- a -----END PRIVATE KEY----- vers un nouveau fichier texte, cela ne fonctionne pas) ouvrez le fichier texte converti dans Nodepad++ et changez l'encodage en UTF-8 au lieu de UTF-8 BOM et changez l'extension en .key. Sauvegardez-le Exécutez la console Openssl dans le dossier du certificat :

pkcs12 -export -out C:\Users\user\Documents\CertFolder\Cert.pfx -inkey C:\Users\user\Documents\CertFolder\privateKey.key -in C:\Users\user\Documents\CertFolder\certificate.crt

openssl vous demandera un mot de passe, créez votre propre mot de passe pour votre certificat et vous aurez votre .pfx à utiliser dans les paramètres d'IIS, SOAPUI, MMC, . Bonne chance

-1voto

Ionut Stoica Points 1

J'ai eu le même problème aujourd'hui, et j'ai remarqué que cela se produit lorsque le propriétaire/groupe du fichier n'est pas celui qui exécute l'application qui lit la clé. C'est peut-être aussi votre problème.

-2voto

gregn3 Points 348

Aucune des autres réponses ne semblait correcte dans mon cas, cependant j'ai trouvé la vraie réponse aquí

Mon id_rsa était déjà au format PEM, j'ai juste eu besoin d'ajouter l'adresse de l'utilisateur. .pem au nom du fichier.

Merci à

Les options possibles pour le openssl rsa -inform sont l'un des paramètres : PEM DER

A PEM Le fichier encodé est un encodage en texte clair qui ressemble à quelque chose comme à quelque chose comme :

-----BEGIN RSA PRIVATE KEY-----
MIGrAgEAAiEA0tlSKz5Iauj6ud3helAf5GguXeLUeFFTgHrpC3b2O20CAwEAAQIh
ALeEtAIzebCkC+bO+rwNFVORb0bA9xN2n5dyTw/Ba285AhEA9FFDtx4VAxMVB2GU
QfJ/2wIRANzuXKda/nRXIyRw1ArE2FcCECYhGKRXeYgFTl7ch7rTEckCEQDTMShw
8pL7M7DsTM7l3HXRAhAhIMYKQawc+Y7MNE4kQWYe
-----END RSA PRIVATE KEY-----

Alors que DER est un format d'encodage binaire.

-2voto

Si votre certificat provient de godaddy, il vous suffit de changer l'encodage de UTF-8 (BOM) à UTF 8 et de renommer le fichier en private.key.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X