Convert Keystore to Private Key (pk8) and Public Key (x509.pem) for Signing Android | Buat Private Key (pk8) dan Public Key (x509.pem) dari Keystore Java Android | Konvert Rubah Keystore ke Private/Public Key – ZOOBA.ID – Salam agan semua, bahwasanya bagi para developer niscaya sudah hafal yang namanya signing atau menandatangani aplikasi, sehingga aplikasi sanggup diterbitkan di toko aplikasi. Celakanya, bila tandatangan ini berbeda niscaya akan ditolak oleh toko aplikasi, contohnya Google Playstore. Playstore sendiri telah menunjukkan pilihan penandatanganan. Namun, banyak yang masih memakai keystore untuk menandatangani aplikasinya. Keystore ini dibentuk oleh sistem java melalui Android Studio maupun Eclipse.
Namun, cara penandatanganan aplikasi banyak caranaya. Selain melalui IDE, sanggup juga dilakukan dengan derma JAR Signer/SignApk.jar dengan ukuran sangat ringan hanya 9KB! Dibandingkan dengan harus membuka IDE butuh waktu lama, signing dengan signapk ini cepat. Sayangnya, keystore yang kita miliki tidak didukung. Karena signapk.jar membutuhkan private dan public key. Begitu pula dengan aplikasi semacam APK Editor niscaya membutuhkan private key (pk8) dan public key (x509.pem) untuk menandatangani. INGAT, KALAU BEDA TANDATANGAN TIDAK BISA UPDATE PLAYSTORE MAUPUN INSTALL TIMPA APLIKASI DI ANDROID.
SOLUSI
Solusinya, kita harus merubah keystore ke private key maupun public key ini. Cara menciptakan private Key (pk8) dan public key (x509.pem) dari keystore adalah:
1. Sediakan keystore anda. misal namanya ialah appkey (di Eclipse tidak ada ekstensinya, bila di Android Studio pakai ekstensi .jks) taruh di folder dasar, contohnya buat sendiri C:\KeystoreToKeys.
2. Kita rubah ke bentuk PKCS12 dengan derma keytool. (Keytool sanggup ditemukan di folder BIN dari JDK di Program Files). Jalankan perintah ini di CMD dari folder C:\KeystoreToKeys:
yang berwarna merah silakan sesuaikan sendiri. Saya menyimpan hasil PKCS12 di folder gen (jangan lupa buat folder “gen” ya di dalam C:\KeystoreToKeys) dengan nama file satu.p12"C:\Program Files\Java\jdk1.8.0_112\bin\keytool.exe" -importkeystore -srckeystore appkey -destkeystore gen\satu.p12 -srcstoretype JKS -deststoretype PKCS12
3. Download aktivitas OPENSSL (googling sendiri yah), kemudian ekstrak di C:\KeystoreToKeys. Setelah itu kita rubah file satu.p12 ke bentuk pem. Ketikkan di CMD dari folder C:\KeystoreToKeys:
openssl pkcs12 -in gen\satu.p12 -nodes -out gen\dua.rsa.pem4. Lalu dari hasil pengubahan itu kita mendapat file dua.rsa.pem silakan buka pakai notepad/notepad++. Anda akan menemukan goresan pena BEGIN CERTIFICATE juga BEGIN RSA PRIVATE KEY. ups… belum tamat lhoh…
5. Buat file gres di C:\KeystoreToKeys\gen dengan nama public.x509.pem kemudian kopikan bab “BEGIN CERTIFICATE” and “END CERTIFICATE” ke file itu. Anda sudah punya public key.
6. Buat file gres di C:\KeystoreToKeys\gen dengan nama private.rsa.pem kemudian kopi bagian “BEGIN RSA PRIVATE KEY” and “END RSA PRIVATE KEY” ke file itu.
7. Konvert private.rsa.pem ke pk8 dengan derma OPENSSL. Ketikkan di CMD dari C:\KeystoreToKeys:
openssl pkcs8 -topk8 -outform DER -in gen\private.rsa.pem -inform PEM -out gen\private.pk8 –nocrypt8. Lalu di folder C:\KeystoreToKeys\gen, anda akan menjumpai file private.pk8.
9. SELESAI. Sekarang anda punya public.x509.pem dan private.pk8, selamat signing apk dengan akta yang sama dengan keystore.
Convert Keystore to Private Key (pk8) and Public Key (x509.pem) for Signing Android | Buat Private Key (pk8) dan Public Key (x509.pem) dari Keystore Java Android | Konvert Rubah Keystore ke Private/Public Key – ZOOBA.ID
Sumber https://www.zooba.id/