El uso de JDK 1.6 o posterior
Se ha señalado por Justin en los comentarios que herramienta de claves por sí sola es capaz de hacer esto con el siguiente comando (aunque sólo en el JDK 1.6 y posteriores):
keytool -importkeystore -srckeystore mypfxfile.pfx -srcstoretype pkcs12
-destkeystore clientcert.jks -deststoretype JKS
El uso de JDK 1.5 o por debajo de
OpenSSL puede hacerlo todo. This answer on JGuru es el mejor método que he encontrado hasta ahora.
Primero asegúrese de tener OpenSSL instalado. Muchos sistemas operativos ya lo tienen instalado como me encontré con Mac OS X.
Los siguientes dos comandos convertir el archivo PFX a un formato que se puede abrir como un almacén de claves de Java PKCS12:
openssl pkcs12 -in mypfxfile.pfx -out mypemfile.pem
openssl pkcs12 -export -in mypemfile.pem -out mykeystore.p12 -name "MyCert"
NOTA de que el nombre proporcionado en el segundo comando es el alias de su clave en el nuevo almacén de claves.
Puede verificar el contenido del almacén de claves con la utilidad keytool de Java con el siguiente comando:
keytool -v -list -keystore mykeystore.p12 -storetype pkcs12
Por último si es necesario se puede convertir esto en un almacén de claves JKS importando el almacén de claves creado anterior en un nuevo almacén de claves:
keytool -importkeystore -srckeystore mykeystore.p12 -destkeystore clientcert.jks -srcstoretype pkcs12 -deststoretype JKS
Esto puede ser útil: cómo puedo encontrar y ejecutar la herramienta de claves para Windows http://stackoverflow.com/questions/5488339/how-can-i-find-and-run-the-keytool –