How can I generate an Android Keystore from a key.pk8 and certificate.pem?

13,570

Ok, So I eventually managed to solve the problem.

I downloaded openssl for windows from here

Keytool can be found at E:\Program Files\Java\jdk1.7.0_17\bin

Then using keytool and openssl managed to build the key.pk8 and certificate.pem into a keystore entry

openssl pkcs8 -inform DER -nocrypt -in key.pk8 -out key.pem

openssl pkcs12 -export -in certificate.pem -inkey key.pem -out platform.p12 -password pass:android -name mykey

keytool -importkeystore -deststorepass password -destkeystore .keystore -srckeystore platform.p12 -srcstoretype PKCS12 -srcstorepass android

keytool -list -v -keystore .keystore

The last step is just to verify that the key has been added to the keystore.

Share:
13,570
Sam Shute
Author by

Sam Shute

Updated on June 05, 2022

Comments

  • Sam Shute
    Sam Shute almost 2 years

    So today I finally update my SDK to 22.0.0 however this creates an error in the AndroidManifest.xml for android:debuggable="false" which means I can no longer externally sign and zipalign my own apks.

    I have been signing using my own key.pk8 and certificate.pem, however eclipse ADT requires a keystore.

    Does anyone know a way to either build a keystore using my already generated key or find some way around this?

  • Jinghao Shi
    Jinghao Shi almost 10 years
    In first step, if the input pk8 file has a password, remove the -nocrypt option, openssl will prompt password input.
  • Basher51
    Basher51 almost 10 years
    @SamShute: From where did you get the .pk8 and .pem certificates? Can I search and find them on my android device's OS files?
  • ᴛʜᴇᴘᴀᴛᴇʟ
    ᴛʜᴇᴘᴀᴛᴇʟ over 8 years
    I have the .pk8 and .pem files. I have a .keystore file. what is platform.p12 here??