2010-05-19 5 views
6

On m'a proposé quelques commandes pour créer un fichier .pfx en utilisant OpenSSL. Pour la plupart, mon partenaire a rassemblé ces informations à partir de: Is it possible to convert an SSL certificate from a .key file to a .pfx?en utilisant OpenSSL pour créer le fichier .pfx

je les fichiers suivants:

  1. 2010certificate.cer
  2. 2010cert_and_key.pem
  3. private_verisign10to11.key

J'ai essayé de générer avec les deux:

openssl pkcs12 -export -out s2010-1.pfx -inkey private_verisign10to11.key -in 2010cert_and_key.pem -certfile 2010certificate.cer 
and 
openssl pkcs12 -export -out s2010-1.pfx -inkey private_verisign10to11.key -in 2010certificate.cer -certfile 2010cert_and_key.pem 

Aucune erreur n'est générée dans cette situation, mais lorsque j'essaie d'afficher ou d'importer le fichier généré s2010-1.pfx, Protecle indique qu'il ne peut pas l'ouvrir. Keytool dit:

keytool -import -file s2010-1.pfx x -keystore cacerts -alias fqdn -storepass <.pfx's pass word> 
keytool error: java.lang.Exception: Input not an X.509 certificate 

Je suppose le problème est avec la génération .pfx, mais je ne sais pas vraiment comment tester jusqu'à ce que la commande keytool. Toutes les suggestions sur ce qu'il faut faire à partir d'ici serait génial.

+0

Java peut traiter une PKCS12 _as_ un keystore, mais [avant 8u60 (en 2015 bien après cette Q)] (http://www.oracle.com/technetwork/java/javase/8u60-relnotes-2620227.html) vous deviez le spécifier: 'keytool -list -keystore quel.pfx -storetype pkcs12 ' –

Répondre

1

Essayez d'utiliser TinyCA pour ouvrir chacun de vos 3 fichiers, car ils peuvent être quelque chose d'autre que leur extension, spécialement les .pem. Ensuite, utilisez TinyCA pour exporter les clés. Une fenêtre de message affiche à la fois la commande openssl et la sortie de la commande.

0

Le problème est dû au fait que keytool -importcert (-import dans Java < 1.6) prend uniquement en charge l'importation de certificats x509.

Pour importer un PKCS12 (parfois livré dans un fichier .pfx) dans le fichier de Java, y compris cacerts:

keytool -importkeystore -srckeystore my.pfx -srcstoretype PKCS12 -srcstorepass <mysecret> -destkeystore cacerts -deststoretype JKS -deststorepass changeit 
Questions connexes