我想使用与桌面应用相同的证书来签署Android应用。我有3个文件 - .cer,.p12和.pfx。是否可以使用其中任何一种来签署Android应用程序?
更新:我已成功将.cer密钥(似乎是X.509格式的证书)导入到新创建的密钥库中,但我无法使用它进行签名。这是jarsigner
给出的错误消息:
未找到证书链:[别名]。密钥必须引用有效 KeyStore密钥条目,包含私钥和相应的公共密钥 密钥证书链。
也许,在导入证书后,我必须对密钥库执行其他操作才能使其有效?生成公钥还是什么?
答案 0 :(得分:0)
您是否使用-validity创建了密钥库,然后会出现此问题,请删除-validity。它会起作用。
keytool -importkeystore -srckeystore certificate/xxxxx.pfx -srcstoretype pkcs12 -destkeystore certificate/xxxxx.keystore -deststoretype JKS **-validity 36500**
更改为
keytool -importkeystore -srckeystore certificate/xxxxx.pfx -srcstoretype pkcs12 -destkeystore certificate/xxxxx.keystore -deststoretype JKS
由于尝试将有效期添加到具有有效到期日期的pfx,因此我将此问题排序。