我已经有了一个VeriSign
证书来签署 EXE。我需要重复使用它来签署罐子。
是否可以重用该证书对 jar 进行签名?
有人可以解释一下,如何将此 VeriSign 证书与 Oracle 的 jarsigner 一起使用来签署 jar 文件?
任何帮助,不胜感激。
我遵循的步骤:
第 1 步。创建密钥存储keytool -genkey -keyalg rsa -keystore MYStore.ks -alias mySelf -keysize 2048
密钥库 PW : 4804994mySelf pw: abcdef
第 2 步。将威瑞信证书导入密钥存储
keytool -importcert -file MSCV-VSClass3.cer -keystore MYStore.ks
这将显示证书信息并询问;信任此证书 ?[否] : 是
证书已添加到密钥库。
第 3 步。jarsigner -keystore MYStore.ks TestRun.jar mySelf
警告:签署者证书将在六个月内过期。
现在我想验证签名的罐子。
jarsigner -verify -verbose -certs TestRun.jar
警告:此 jar 包含其签署者证书将在六个月内过期的条目。此 jar 包含证书链未经过验证的条目。
据我了解,密钥存储中没有公钥的私钥。
如何解决这个问题?
干杯。
您可以开始使用 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
希望上述两个命令中的任何一个有所帮助。第一个命令您必须找出 VeriSign 时间戳 URL 是什么,"1"也是一个猜测,您可以通过键入来查看分配给它的别名;
keytool -list -keystore cert2013.pfx -storetype PKCS12
问候