使用新安装的JDK 1.7,我们签署了JAR文件。紧接着我们使用相同的jarsigner和相同的密钥库来验证它...它失败并显示消息:
无效的SHA256哈希...
签名/验证码很简单(Windows批处理中有两个后续行):
%JAVADIR%\jarsigner -keystore \path\to\SBBJavaCodeSigningStore -storepass my_password SecureBlackbox.JCE.jar sbbjavacodesigningkey
%JAVADIR%\jarsigner -verify -keystore \path\to\SBBJavaCodeSigningStore -storepass my_password SecureBlackbox.JCE.jar
最糟糕的是问题似乎是随机的,并且当验证失败时,jarsigner甚至没有设置errorlevel(退出代码)。
它是Java签名者或加密类或其他什么的错误吗?
答案 0 :(得分:1)
我将此解决方案作为其他用户的一课。
似乎稍后在批处理文件中我们批量签名所有JAR,并且这个特定的JAR被签名两次。 jarsigner允许你做第二个签名并以这种方式打破第一个签名。