当前位置: 首页 > 面试题库 >

如何安装无限强度辖区策略文件?

臧正平
2023-03-14
问题内容

有人可以向我解释如何安装无限强度管辖权策略文件。我从Oracle网站下载了.jar文件,但安装时遇到了问题。我正在制作的Java程序不断给我这个错误:

Jan 11, 2017 12:32:31 AM com.subgraph.orchid.TorClient start
INFO: Starting Orchid (version: 1.0.0)
Jan 11, 2017 12:32:31 AM com.subgraph.orchid.TorClient verifyUnlimitedStrengthPolicyInstalled
SEVERE: Unlimited Strength Jurisdiction Policy Files are required but not installed.
Exception in thread "main" com.subgraph.orchid.TorException: Unlimited Strength Jurisdiction Policy Files are required but not installed.
    at com.subgraph.orchid.TorClient.verifyUnlimitedStrengthPolicyInstalled(TorClient.java:208)
    at com.subgraph.orchid.TorClient.start(TorClient.java:79)
    at com.nikola.WebCrawlerApp.App$OrchidDemo.startOrchid(App.java:46)
    at com.nikola.WebCrawlerApp.App$OrchidDemo.access$000(App.java:38)
    at com.nikola.WebCrawlerApp.App.main(App.java:35)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)

问题答案:

您需要确定Java主目录路径(通过System.getenv("JAVA_HOME")Java或$ echo $JAVA_HOME在命令行上)。它应该是如下路径:

  • C:\Program Files\Java\jre8 在Windows上
  • /Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home 在Mac OS X上
  • /usr/java/jdk1.8.0_101/bin/java 在* nix上

然后,您需要将下载的US_export_policy.jarlocal_policy.jar文件复制到目录中:<JAVA_HOME>/jre/lib/security并覆盖同名的现有文件。

更新了05/17/17

以下代码(仅出于演示目的)将指示JVM,无论安装了什么策略文件,都允许使用AES-256位加密和相应的TLS密码。这是 不建议 采用这种方法。

if (Cipher.getMaxAllowedKeyLength("AES") < 256) {
  try {
    Field field = Class.forName("javax.crypto.JceSecurity").
    getDeclaredField("isRestricted");
    field.setAccessible(true);
    field.set(null, java.lang.Boolean.FALSE);
  } catch (Exception e) {
    fail("Could not override JCE cryptography strength policy setting");
    fail(e.getMessage());
  }
}


 类似资料:
  • 有人能向我解释一下如何安装无限力量管辖权政策文件吗?我从甲骨文网站下载了. jar文件,但我在安装它们时遇到了问题。我正在制作Java程序一直给我这个错误:

  • 与eclipse有关,因为我可以在cmd中成功运行代码。我在windows 10上使用标准oracleJava版本15和eclipse版本2020-12(4.18.0) 在上面的一行,我得到了如下粘贴的错误。 请注意:为null 异常在java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.(未知源)在java.base/sun.ne

  • 问题内容: 我有一个使用256位AES加密的应用程序,Java开箱即用不支持。我知道要使其正常运行,我在security文件夹中安装了JCE不限强度的jars。作为开发人员,这对我来说很好,我可以安装它们。 我的问题是,由于将分发此应用程序,最终用户很可能不会安装这些策略文件。让最终用户下载这些文件只是为了使应用程序功能并不是一个有吸引力的解决方案。 有没有一种方法可以使我的应用程序运行而不会覆盖

  • 问题内容: 我需要安装 Java加密扩展 为在/ 。原来,从步骤 自述 其附带的文件,安装程序只包括指令和,但不为/ 。我试图将JAR文件放入,但也没有用。您知道如何安装吗? 问题答案: 正如另一个答案和Oracle 针对Java 8 Update 161 的发行说明中所指出的那样,自从Update 161起,默认情况下将启用无限加密,并且如果使用此版本或更高版本的全新安装,则无需执行任何操作。

  • 问题内容: 对于仅支持Java 8的服务器,它无法从cent OS建立安全的套接字连接 版 资源 使用相同版本的JVM,它可以在OSX上成功进行握手,在centOS上失败,失败原因是它仅尝试使用(JVM 8中的默认设置)并且不尝试使用较低的协议 调试说明: 题: 为什么可以在OSX而不是CentOS上进行选择? 如何告诉JVM按特定顺序使用协议,或者如果它考虑版本的顺序,那么我如何告诉JVM也尝试

  • 问题内容: 与重新安装软件包有关的两个选项是和。 这两个选项在官方文档中描述如下 似乎它们都忽略了某些东西并进行了重新安装,但是我不能说出它们之间的区别(如果我实际执行它们,我可以看到一些区别……但是我无法解释)。如果我搜索“以pip强制重新安装软件包”,结果将同时列出和,这使我很困惑。 问题答案: 在安装软件包之前,请先将其卸载(如果已安装)。与运行包及其每个依赖项几乎相同。 忽略软件包及其De