เนื่องจากบางครั้ง ลูกค้าต้องการใช้งาน SSL certificate ไปติดตั้งบน Platform ที่ใช้ไฟล์ประเภท Java Keystore หรือไฟล์นามสกุล .jks
ซึ่งแน่นอนว่า ท่านอาจจะเริ่มจากการ Generate CSR และ Private Key แบบ PEM format เช่น จากหน้าเว็บไซต์ https://ssl.in.th/tools/generate-csr
อย่างไรก็ตาม หากต้องการแปลงไฟล์จากประเภท PEM format ไปยัง JKS format โดยตรง อาจจะทำได้ลำบาก จึงแนะนำให้แปลงไฟล์จาก PEM format เป็น PFX/PKCS#12 format ก่อน อ้างอิงตามคู่มือ การแปลงไฟล์จาก PEM Format ไป PFX/PKCS#12
ข้อแนะนำ การแปลงไฟล์จาก PEM format ไป PFX/PKCS#12 จะต้องใช้รหัสผ่านสำหรับไฟล์ PFX ควรตั้งรหัสผ่านเดียวกันกับรหัสผ่านที่จะใช้สำหรับ JKS format ด้วยเช่นกัน
สิ่งที่ต้องเตรียม
1. โปรแกรม JDK (Java SE Development Kit) หรือ JRE (Java SE Runtime Environment) Version 1.8 ขึ้นไป
สามารถ Download ได้จาก Link: https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
2. ตัวอย่างดังกล่าวสาธิตบน Windows 10
วิธีการ
1. เข้าไปยัง Directory ของ JDK หรือ JRE > bin ผ่าน Command Prompt เพื่อเข้าใช้คำสั่ง Keytool
2. รันคำสั่งต่อไปนี้ เพื่อแปลงไฟล์ PFX เป็น JKS format
คำสั่งสำหรับการแปลงไฟล์
keytool -importkeystore -srckeystore certificate.pfx -srcstoretype pkcs12 -destkeystore certificate.jks -deststoretype JKS
ตัวอย่าง
keytool -importkeystore -srckeystore D:\SSL\certificate.pfx -srcstoretype pkcs12 -destkeystore D:\SSL\certificate.jks -deststoretype JKS
Enter destination keystore password : รหัสผ่านที่จะกำหนดให้เป็นรหัสผ่านของ JKS
Re-enter new password : รหัสผ่านของ JKS อีกครั้ง
Enter source keystore password : รหัสผ่านของ PFX file
หากดำเนินการเรียบร้อยแล้ว ท่านจะได้ไฟล์ JKS format ซึ่ง Default alias ของ SSL certificate ชุดดังกล่าว คือ 1
3. ท่านสามารถตรวจสอบรายละเอียดในไฟล์ Keystore JKS ดังกล่าวได้ ด้วยคำสั่งต่อไปนี้
keytool -v -list -keystore certificate.jks
ตัวอย่าง
จะสังเกตุเห็นว่า Alias name คือ 1 ซึ่งมาจากการแปลงไฟล์จาก pfx เป็น jks format
4. ท่านสามารถเปลี่ยน Alias name เป็นชื่อที่ท่านต้องการ ด้วยคำสั่งต่อไปนี้
keytool -changealias -alias "old-alias" -destalias "new-alias" -keystore /path/to/keystore
ตัวอย่าง