keytool、opensslを使って、P12からJKS、PEMへの変換します。
fingerprint
keystoreのfingerprintを表示するには
Code language: Bash (bash)$ keytool -list -v -keystore myapp.p12 -storetype PKCS12 $ keytool -list -v -keystore myapp.jks
署名済みAPKのfingprintを表示するには
Code language: Bash (bash)$ keytool -list -printcert -jarfile myapp.apk
keystoreのfingerprintとAPKのfingerprintが同じなら、そのkeystoreで署名されたAPKということがわかります。
P12からJKSへ変換
a.p12からb.jksへ変換するには
Code language: Bash (bash)$ keytool -importkeystore -keystore b.jks \ -srckeystore a.p12 \ -srcstoretype PKCS12
a.p12からb.jksへ変換するには(同時にエイリアスxをエイリアスy変更する)
Code language: Bash (bash)$ keytool -importkeystore -keystore b.jks \ -srckeystore a.p12 \ -srcstoretype PKCS12 \ -srcalias x \ -destalias y
a.p12からb.jksへ変換するには(同時にパスワードをabcからxyzに変更する)
Code language: Bash (bash)$ keytool -importkeystore -keystore b.jks \ -srckeystore a.p12 \ -srcstoretype PKCS12 \ -srcstorepass abc \ -deststorepass xyz
P12からPEMへ変換
a.p12をb.pemに変換するには
$ openssl pkcs12 -in a.p12 -out b.pem
Code language: Bash (bash)
a.p12 を b.pemに変換するには(秘密鍵を平文で)
$ openssl pkcs12 -nodes -in a.p12 -out b.pem
Code language: Bash (bash)
PEMからP12へ変換
a.pem を b.p12に変換するには
$ openssl pkcs12 -export -in a.pem -out b.p12
Code language: Bash (bash)