1

我已经有一个VeriSign证书来签署 EXE。我需要重用它来签署罐子。

是否可以重用该证书来签署罐子?

有人可以解释一下,如何使用这个 VeriSign 证书和 Oracle 的 jarsigner 来签署 jar 文件吗?

任何帮助表示赞赏。

我遵循的步骤:

步骤 1. 创建密钥库 keytool -genkey -keyalg rsa -keystore MYStore.ks -alias mySelf -keysize 2048

密钥库密码:4804994 mySelf 密码:abcdef

步骤 2. 将 Verisign 证书导入密钥库

keytool -importcert -file MSCV-VSClass3.cer -keystore MYStore.ks

这将显示证书信息并询问;相信这个证书?[否]:是的

证书已添加到密钥库。

步骤 3. jarsigner -keystore MYStore.ks TestRun.jar mySelf

警告:签名者证书将在六个月内到期。

现在我想验证签名的 jar。

jarsigner -verify -verbose -certs TestRun.jar

警告:此 jar 包含签名证书将在六个月内到期的条目。此 jar 包含未验证证书链的条目。

据我了解,密钥库在证书中没有公钥的私钥。

如何解决这个问题?

干杯。

4

1 回答 1

1

您可以使用 PFX 文件开始签名,因为这可以看作是一个密钥库文件。您可以尝试使用的命令类似于

jarsigner -storetype pkcs12 -keystore cert2013.pfx something.jar "1" -tsa http://verisignstimestampurl.something.com

或者您可以将 PKCS12 文件导入到 JKS 文件中,但这似乎有点毫无意义;

keytool -importkeystore -srckeystore cert2013.pfx -srcstoretype PKCS12 -deststoretype JKS -destkeystore keystore.jks

希望以上两个命令中的任何一个都有帮助。第一个命令您将必须找出 VeriSigns 时间戳 URL 是什么,“1”也是一个猜测,您可以通过键入查看分配给它的别名;

keytool -list -keystore cert2013.pfx -storetype PKCS12

问候,

于 2013-11-08T09:54:02.213 回答