2009-02-09 5 views

Répondre

3

Ce gars() semble avoir écrit une petite classe Java et fichier batch avec de bonnes instructions pour le faire ici: http://www.crionics.com/products/opensource/faq/signFree.htm#DownloadTools

Si vous voulez faire vous-même les principales lignes dans le fichier .bat semblent être utilise

keytool -export -rfc -keystore %KEYSTORE% -storepass %PASSWORD% -alias %ALIAS% > %CERT_64% 
java -classpath %JAVACLASSPATH% ExportPrvKey %KEYSTORE% %PASSWORD% %ALIAS% > %PKEY_8% 
openssl enc -in %PKEY_8% -a >> %PKEY_64% 
openssl pkcs12 -inkey %PKEY_64% -in %CERT_64% -out %CERT_P12% -export 

où ExportPrvKey exécute l'étape d'extraction de la clé privée à partir du magasin de clés.

+0

Merci pour la réponse. Je suis également tombé sur le site que vous avez lié via Google et l'ai essayé. Cependant, la dernière étape échoue pour moi. openssl se termine par le message: Impossible de charger la clé privée Des conseils supplémentaires seraient grandement appréciés! –

+0

Regardez le fichier de clé privée (% PKEY_64%). Est-ce qu'il existe réellement? Googling, il semble que les erreurs les plus courantes sont l'avoir dans le mauvais répertoire ou un mauvais format. Quelle version d'openssl avez-vous? –

+0

Le fichier PKEY_64 existe et semble correct (il contient 858 caractères ascii "aléatoires"). J'utilise openssl 0.9.7d sur une machine Linux. –

40

A partir de Java 6 partir, keytool a une option -importkeystore, qui devrait être en mesure de convertir un magasin JKS en PKCS # 12 magasin (p12/.pfx):

keytool -importkeystore -srckeystore thekeystore.jks \ 
      -srcstoretype JKS \ 
      -destkeystore thekeystore.pfx \ 
      -deststoretype PKCS12 
+0

Je reçois ces erreurs lorsque j'utilise cette commande: Problème d'importation d'entrée pour alias root: java.security.KeyStoreException: TrustedCertEntry non pris en charge. Avez-vous vu cela? – mikebz

+0

@mikebz Oui, vous ne pouvez pas avoir d'entrées avec seulement des certificats dans le magasin PKCS # 12, cela ne fonctionne que pour les entrées pour lesquelles il y a aussi une clé privée. – Bruno

-1

Vous pouvez exporter un fichier PFX, y compris la clé privée, avec la commande suivante:

keytool -importkeystore -deststorepass secret -destkeypass secret -destkeystore KEYSTOREFILE.jks -srckeystore PFXFILE.pfx -srcstoretype PKCS12 -srcstorepass secret 
Questions connexes