如何在OS X中安装无限强度JCE for Java 8?

时间:2016-06-10 06:17:15

标签: java macos jce

我需要在Java 8 / OS X中为mac OS安装 Java密码术扩展。事实证明installer附带的自述文件文件中的步骤仅包含UnixWindows的说明,但不适用于OS X / mac OS。我试图将JAR文件放在$JAVA_HOME/lib/security中,但它也没有用。你知道我怎么安装它们?

8 个答案:

答案 0 :(得分:95)

Java 8 Update 161

正如another answer和Oracle release notes for Java 8 Update 161中指出的那样,默认情况下启用无限加密,因为更新161,如果使用全新安装,您不应该做任何事情这个版本。

Java 8 Update 151

使用Java 8 Update 151,Oracle在Java 8中包含了与Java 9相同的JCE机制。要在Java 8 Update 151或更高版本中启用JCE,只需设置属性

crypto.policy=unlimited
$JAVA_HOME/jre/lib/security/java.security中的

如果早先添加旧政策JAR,那么删除旧政策JAR可能是个好主意,正如Oracle在release notes中所述:

  

因为旧的JCE管辖权文件留在了   / lib / security,它们可能不符合最新的安全JAR   签署标准,在6u131,7u121,8u111和   以后的更新。

旧版本

建议通过Homebrew安装JCE文件的解决方案不再适用,因为在Java 8 Update 151发布后,已从Homebrew存储库中删除了存储桶。如果使用旧版本的Java 8,则可以参考到accepted answer

答案 1 :(得分:78)

如果您是mac用户,如果您的java版本是8,请将从jce_policy-8.zip中提取的jar放入。*使用以下路径(将jar放在其下)

/Library/Java/JavaVirtualMachines/**< jdk_version_of_your_pc >**/Contents/Home/jre/lib/security

答案 2 :(得分:11)

对于Java 8上的Mac用户(OS X):

  

$ brew重新安装java8

从JDK 1.8u151开始,没有必要单独下载JCE库。只需编辑

  

$ JDK_HOME / JRE / LIB /安全/ java.security

取消注释该行:

crypto.policy=unlimited

这将启用无限强度JCE。

JDK 1.8u151 Release Notes

答案 3 :(得分:11)

从Java 8u152开始,只需在<{p>中的crypto.policy=unlimited文件中设置java.security即可启用无限强度

/Library/Java/JavaVirtualMachines/<jdk_version>/Contents/Home/jre/lib/security 

它已经在该文件中,但已注释掉。

enter image description here

请参阅http://www.oracle.com/technetwork/java/javase/8u152-relnotes-3850503.html#JDK-8157561

答案 4 :(得分:8)

从Java JDK版本8u161 unlimited cryptography is enabled by default开始,不再需要其他建议的方法(除非你想禁用它)。

此更改也appears to be included in other major JDK versions from JDK 6 to JDK 9.

答案 5 :(得分:5)

由于你没有在这里解释你的问题,所以猜测一下。

  1. 使用互联网搜索引擎,你可能会找到这个页面http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
  2. 您可能已下载此文件jce_policy-8.zip
  3. 也许你会解压缩它并查看目录UnlimitedJCEPolicyJDK8/
  4. 也许文件README.txt会引起你的兴趣
  5. 如果所有这些步骤都是真的,那么你就找到了

    3)  Install the unlimited strength policy JAR files.
    
    In case you later decide to revert to the original "strong" but
    limited policy versions, first make a copy of the original JCE
    policy files (US_export_policy.jar and local_policy.jar). Then
    replace the strong policy files with the unlimited strength
    versions extracted in the previous step.
    
    The standard place for JCE jurisdiction policy JAR files is:
    
        <java-home>/lib/security           [Unix]
        <java-home>\lib\security           [Windows]
    

    您可以假设OSX上的位置与列出的系统相同。

答案 6 :(得分:5)

对于更高版本的macOS(例如Sierra),Oracle Java安装在两个位置,具体取决于您是否安装了JRE或JDK。

  • JRE:/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/
  • JDK:/Library/Java/JavaVirtualMachines/jdk1.x.x_xxx.jdk/Contents/Home/
    • 如果您安装了JDK,它还会在上面列出的JRE位置安装JRE。

JRE允许您双击以从Finder打开jar并在浏览器中运行Java。 JRE没有java二进制文件,因此如果要运行任何典型的Java命令,则必须安装JDK。更多信息https://java.com/en/download/faq/yosemite_java.xml

所有这些都说,在安装无限强度的JCE文件时,将它们安装在上面列出的两个目录中以获得一致的行为。

答案 7 :(得分:3)

如果您是Windows用户:

http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

上下载最新的JCE

提取zip文件并复制以下目录中的两个jar文件

\ Program Files \ Java \ jre1.8.0_131 \ lib \ security