我有一个依赖于许多罐子的小程序。在我将 java 更新到 7.45 后,小程序生成消息“<strong>此应用程序将在未来的 Java 安全更新中被阻止,因为 JAR 文件清单不包含 Permissions 属性”我添加了权限属性“<strong>Permissions: all -permissions” 之后我通过我们的“6NRJ”证书退出了所有这些 jar 文件。
所有 jar 都经过良好签名,但不幸的是,小程序仅在“bcprov-ext-jdk16-140.jar”中生成异常。
这里的异常详细信息:
java.security.NoSuchProviderException: JCE cannot authenticate the provider BC
at javax.crypto.JceSecurity.getInstance(JceSecurity.java:101)
at javax.crypto.KeyGenerator.getInstance(KeyGenerator.java:249)
at org.bouncycastle.cms.CMSEnvelopedHelper.createKeyGenerator(Unknown Source)
at org.bouncycastle.cms.CMSEnvelopedHelper.createSymmetricKeyGenerator(Unknown Source)
at org.bouncycastle.cms.CMSEnvelopedDataGenerator.generate(Unknown Source)
at com.atexo.mpe.applet.AppletDiagnostic.init(AppletDiagnostic.java:142)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.init(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.util.jar.JarException: http://wma-migration.whitecapetech.local/ressources/applet/bcprov-ext-jdk16-140.jar is not signed by a trusted signer.
at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:503)
at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:322)
at javax.crypto.JarVerifier.verify(JarVerifier.java:250)
at javax.crypto.JceSecurity.verifyProviderJar(JceSecurity.java:161)
at javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:187)
at javax.crypto.JceSecurity.getInstance(JceSecurity.java:98)
... 8 more
我认为 bcprov-ext-jdk16-140.jar 之前是由充气城堡签署的。
添加权限属性后有没有办法重新签署“bcprov-ext-jdk16-140.jar”?
提前感谢您的帮助