签名的jar文件在java 1.7.0_76中识别,但不在java 1.7.0_75中识别

时间:2017-04-25 08:54:47

标签: java security java-7 jarsigner jar-signing

我使用jdk 1.7.0_71提供的签名者签署了一个jar文件。这也是先前的工作,直到我们从

更新
X.509, CN=GlobalSign CodeSigning CA - SHA256 - G2, O=GlobalSign nv-sa

X.509, CN=GlobalSign CodeSigning CA - SHA256 - G3, O=GlobalSign nv-sa

现在我们的行为是,jar文件被识别为1.7.0_76但不是1.7.0_75。我看到的唯一区别是代。

虽然我强烈认为某些类似于Signing JAR files in the explorer showing "unsigned" when verifying them中描述的主题的安全更新会导致问题,但我找不到任何证据。

有人已经遇到类似或相同的问题,更重要的是,找到了解决方案吗?

1 个答案:

答案 0 :(得分:0)

问题不在于新证书。它实际上取决于另外两个因素。

  1. 从中获取jarsigner的Java版本。如果从某些Java 8 JDK中获取jarsigner,则可能会因为每个Java 7 JRE不再有效,因为在“Timestamp摘要算法”中使用了SHA256。
  2. 用于加时间戳的网址。如果您使用的是提供更高安全性的(假设是SHA256),那么它对每个Java 7 JRE也不再起作用,因为再次使用SHA256,现在位于“Timestamp签名算法”。