jks或pkcs12:我应该使用哪个签名Google Play商店的apk?

时间:2019-12-13 06:07:04

标签: android android-studio google-play pkcs#12 jks

Android Studio 3.5.3创建新的密钥存储区后,建议我使用以下命令对其进行转换:

  

keytool -importkeystore -srckeystore /path/myKeyStore.jks -destkeystore /path/myKeyStore.jks -deststoretype pkcs12

在Web上和SO上,我都读了一些(例如,pkcs12格式得到了广泛支持,而与用于读取它的编程语言无关),但是我找不到此问题的答案:

pkcs12格式与Google Play商店发布我的应用程序完全兼容吗?

如果是,我应该使用哪一个对我的apk签名,为什么?

非常感谢!

2 个答案:

答案 0 :(得分:4)

pkcs12jks都是持有公钥和私钥(PPK)的格式,该公钥和私钥用于对APK进行签名以在Google Play商店中发行和发布。 PPK的存储方式无关紧要,只要您可以使用它进行签名即可。某些工具或服务可能更喜欢使用一种格式,然后通过使用命令行工具,KeyStore Explorer或类似工具在它们之间进行转换。无论转换方向如何,所包含的PPK始终保持不变。

Convert from PKCS12 to JKS

Convert from JKS to PKCS12

KeyStore Explorer

答案 1 :(得分:1)

jks是Java密钥库,它更多是与Java相关的格式,您可以直接将其用于为Playstore签署发行apk。因此,如果您只是打算将其用于此目的,则实际上不需要将其转换为pkcs12。 PKCS12并非特定于Java。如果要出于其他目的存储其他密钥,请以与语言无关的格式在同一密钥存储区中将其转换为pkcs12。