JDK 1.6 या बाद का उपयोग करना
यह जस्टिन द्वारा टिप्पणी में बताया गया है कि केवल कीटलूल निम्नलिखित कमांड का उपयोग करने में सक्षम है (हालांकि केवल जेडीके 1.6 और बाद में):
keytool -importkeystore -srckeystore mypfxfile.pfx -srcstoretype pkcs12
-destkeystore clientcert.jks -deststoretype JKS
JDK 1.5 या नीचे का उपयोग करना
ओपनएसएसएल यह सब कर सकता है। JGuru पर यह उत्तर सबसे अच्छा तरीका है जो मैंने अब तक पाया है।
सबसे पहले सुनिश्चित करें कि आपके पास ओपनएसएसएल स्थापित है। कई ऑपरेटिंग सिस्टम पहले से ही इसे स्थापित कर चुके हैं जैसा कि मैंने मैक ओएस एक्स के साथ पाया।
निम्न दो आदेश pfx फ़ाइल को एक स्वरूप में परिवर्तित करते हैं जिसे Java PKCS12 कुंजी स्टोर के रूप में खोला जा सकता है:
openssl pkcs12 -in mypfxfile.pfx -out mypemfile.pem
openssl pkcs12 -export -in mypemfile.pem -out mykeystore.p12 -name "MyCert"
ध्यान दें कि दूसरे कमांड में प्रदान किया गया नाम नए कुंजी स्टोर में आपकी कुंजी का उपनाम है।
आप निम्न कमांड के साथ जावा कीटूल उपयोगिता का उपयोग करके कुंजी स्टोर की सामग्री को सत्यापित कर सकते हैं:
keytool -v -list -keystore mykeystore.p12 -storetype pkcs12
अंत में अगर आपको जरूरत है तो आप इसे JKS कुंजी स्टोर में बदल सकते हैं।
keytool -importkeystore -srckeystore mykeystore.p12 -destkeystore clientcert.jks -srcstoretype pkcs12 -deststoretype JKS