JDK 1.6 veya üzerini kullanma
Aşağıdaki yorumlarda Justin tarafından, keytool'un aşağıdaki komutu kullanarak tek başına bunu yapabildiğini belirtmiştir (sadece JDK 1.6 ve sonrasında):
keytool -importkeystore -srckeystore mypfxfile.pfx -srcstoretype pkcs12
-destkeystore clientcert.jks -deststoretype JKS
JDK 1.5 veya altını kullanma
OpenSSL hepsini yapabilir. JGuru'daki bu cevap, şimdiye kadar bulduğum en iyi yöntem.
Öncelikle OpenSSL'nin kurulu olduğundan emin olun . Mac OS X'te bulduğum gibi birçok işletim sisteminde zaten yüklü durumda.
Aşağıdaki iki komut, pfx dosyasını Java PKCS12 anahtar deposu olarak açılabilen bir biçime dönüştürür:
openssl pkcs12 -in mypfxfile.pfx -out mypemfile.pem
openssl pkcs12 -export -in mypemfile.pem -out mykeystore.p12 -name "MyCert"
İkinci komutta verilen adın, yeni anahtar deposundaki anahtarınızın diğer adı olduğuna dikkat edin.
Java keytool yardımcı programını kullanarak aşağıdaki komutla anahtar deposunun içeriğini doğrulayabilirsiniz:
keytool -v -list -keystore mykeystore.p12 -storetype pkcs12
Son olarak, gerekirse, yukarıda oluşturulan anahtar deposunu yeni bir anahtar deposuna aktararak bunu bir JKS anahtar deposuna dönüştürebilirsiniz:
keytool -importkeystore -srckeystore mykeystore.p12 -destkeystore clientcert.jks -srcstoretype pkcs12 -deststoretype JKS