【发布时间】:2016-12-30 00:56:44
【问题描述】:
我想尝试 JDK 9,我需要修补 JCE。
我在哪里可以得到JCE zip file for JDK 9?
或者我可以将它用于 JDK 8 吗?
我搜索了 JDK 9 的 JCE zip,但找不到它。
提前致谢。
【问题讨论】:
我想尝试 JDK 9,我需要修补 JCE。
我在哪里可以得到JCE zip file for JDK 9?
或者我可以将它用于 JDK 8 吗?
我搜索了 JDK 9 的 JCE zip,但找不到它。
提前致谢。
【问题讨论】:
更新: 现在所有当前版本的 Java 6 - 9 都启用了开箱即用的强加密。有关详细信息,请参阅:https://stackoverflow.com/a/39889731/3392724
我假设“JCE zip 文件”是指“Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files”。
显然在 Java 9 中您不再需要 zip,请参阅: http://mail.openjdk.java.net/pipermail/security-dev/2016-October/014943.html
添加,'Security.setProperty(“crypto.policy”, “unlimited”);'要么 编辑 java.security 配置文件将启用无限制 实力。
其他细节:
使用代码设置属性的示例:
import javax.crypto.Cipher;
import java.security.Security;
class Test {
public static void main(String[] args) {
Security.setProperty("crypto.policy", "unlimited");
try {
System.out.println("Hello World!");
int maxKeyLen = Cipher.getMaxAllowedKeyLength("AES/CBC/PKCS5Padding");
System.out.println(maxKeyLen);
} catch (Exception e){
System.out.println("Sad world :(");
}
}
}
结果:
Hello World!
2147483647
Press any key to continue . . .
java-版本:
Java(TM) SE Runtime Environment (build 9-ea+138)
Java HotSpot(TM) Server VM (build 9-ea+138, mixed mode)
或者,编辑 JRE 安装文件夹中的 java.security 配置文件:
【讨论】: