0

签署 jar 后,我们可以使用 jar 从 jar 中检索公钥

Certificate[] cert = jarentry.getCertificates();

提取证书后,我们可以将其作为受信任的证书保存到新的密钥库中。

完成此操作后,第二个用户可以使用此证书签署任何 jar,不是吗?

我想将内容分发为 jars ,内容将包含应用程序初始化的属性文件。

我想确保用户无法使用他从 jarentry 中提取的证书重建属性文件。

在读取 jar 内容的代码中,我正在检查 jar 是否仅使用我的证书签名,并检查 jar 是否未被篡改。

但是我想到了一个问题,如果我能够从 jar 中提取证书,那么为什么不;第三个人呢?

有什么帮助吗?

4

1 回答 1

1

完成此操作后,第二个用户可以使用此证书签署任何 jar,不是吗?

不,您需要私钥才能签署 JAR。您不能仅使用公钥签署 JAR。当然,私钥不在证书中。

请参阅Sun 的 Java 教程中的签署和验证 JAR 文件,它详细解释了原理以及如何执行此操作。

于 2010-05-07T11:42:56.697 回答