Java 如何重新匹配已签名的小程序并使用我自己的证书对其重新签名?

Java 如何重新匹配已签名的小程序并使用我自己的证书对其重新签名?,java,applet,certificate,digital-signature,Java,Applet,Certificate,Digital Signature,我有4个签名JAR,其中一个包含applet类,并希望向applet添加一些函数。我有他们的消息来源。Applet jar依赖于其他3个非Applet jar,让我们将它们称为helper jar。我看到三种方法: 创建新项目,添加3个助手jar作为项目库,将小程序jar的整个源代码复制到新项目,将所需的函数添加到小程序类。将项目重建为jar,用我们国家证书颁发机构发给我的证书签名。 创建新项目,将所有4个jar添加为库,只创建一个扩展现有小程序的类,将其构建为jar,使用国家证书颁发机构发给我

我有4个签名JAR,其中一个包含applet类,并希望向applet添加一些函数。我有他们的消息来源。Applet jar依赖于其他3个非Applet jar,让我们将它们称为helper jar。我看到三种方法:

创建新项目,添加3个助手jar作为项目库,将小程序jar的整个源代码复制到新项目,将所需的函数添加到小程序类。将项目重建为jar,用我们国家证书颁发机构发给我的证书签名。 创建新项目,将所有4个jar添加为库,只创建一个扩展现有小程序的类,将其构建为jar,使用国家证书颁发机构发给我的证书对其进行签名。现在,我的小程序代码库包含5个JAR。 创建新项目,复制所有小程序的所有源,通过删除jar中的.RSA文件和清单文件来删除符号。向小程序添加新函数。将项目重建为单个jar,使用国家证书颁发机构发给我的证书进行签名。 问题:

第一个和第二个选项可能导致这样的情况,一些JAR将使用一个原样使用的密钥进行签名,其他JAR将使用我的密钥进行签名。可以吗? 在这三种选择中,我至少要用我的钥匙在一个罐子上签名。我知道,Java7U51和更高版本不允许自签名JAR,但我有我们国家证书颁发机构发给我的证书。使用这样的证书可以吗?它还会被阻止吗? 我从受信任的站点安装了根证书,但不完全了解它是否必要。好的,我的证书包含url,可以在其中验证证书,根证书的安装强制我的JVM信任此url。我说得对吗

您需要使用相同的证书保存所有JAR 是的,正式证书就足够了 对于再分配,您有两种可能性:

制作一个肥罐,并在第三方LIB未包装和内部签名 使用源代码创建applet.jar,并对其进行签名,包括所有第三方LIB 请注意,您还需要设置权限清单属性