【问题标题】:How to sign application with existing .cer, .p12 or .pfx certificate?如何使用现有的 .cer、.p12 或 .pfx 证书签署应用程序?
【发布时间】:2011-12-06 13:14:29
【问题描述】:

我想使用与桌面应用相同的证书签署 Android 应用。我有 3 个文件 - .cer、.p12 和 .pfx。是否可以使用其中任何一个来签署 Android 应用程序?

更新:我已成功将 .cer 密钥(似乎是 X.509 格式的证书)导入新创建的密钥库,但我无法使用它进行签名。这是jarsigner 给我的错误消息:

找不到证书链:[别名]。密钥必须引用一个有效的 包含私钥和相应公钥的 KeyStore 密钥条目 密钥证书链。

也许,在导入证书以使其有效后,我还必须对密钥库执行其他操作?生成公钥什么的?

【问题讨论】:

  • 您的证书有效期是否为 10 年或更长时间? Android 市场需要一个巨大的长期。另见stackoverflow.com/questions/3985419/…
  • @rekire:感谢您的提醒!顺便说一句,自动生成的证书(我在按照网络上的教程后得到的)只有 6 个月的有效期。很奇怪。
  • Signing apk with .p12的可能重复

标签: android signing


【解决方案1】:

您是否使用-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 中。

【讨论】:

    猜你喜欢
    • 2022-07-11
    • 2020-03-21
    • 2013-09-10
    • 2018-11-30
    • 2018-05-27
    • 2012-08-13
    • 2019-04-11
    • 1970-01-01
    • 2014-08-26
    相关资源
    最近更新 更多