JDK 9 を試してみたいのですが、JCE にパッチを適用する必要があります。どこで入手できますJCE zip file for JDK 9
か? または、JDK 8 用のものを使用できますか? JDK 9 の JCE zip を検索しましたが、見つかりません。前もって感謝します。
質問する
7242 次
1 に答える
32
更新: Java 6 ~ 9 の現在のすべてのリリースで、すぐに使用できる強力な暗号化が有効になりました。詳細については、https ://stackoverflow.com/a/39889731/3392724 を参照してください。
「JCE zip ファイル」とは、「Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files」を意味すると思います。
どうやら Java 9 では、zip は不要になったようです 。
追加、「Security.setProperty(“crypto.policy”, “unlimited”);」または java.security 構成ファイルを編集すると、無制限の強度が有効になります。
追加の詳細:
- https://bugs.openjdk.java.net/browse/JDK-8061842
- http://hg.openjdk.java.net/jdk9/dev/jdk/file/f82971b324f6/src/java.base/share/conf/security/policy/README.txt
コードを使用してプロパティを設定する例:
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 構成ファイルを編集します。
- お好みのテキストエディタで <jre9-home> /conf/security/java.security を開きます
- 「crypto.policy=limited」という行を検索します
- 「crypto.policy=unlimited」に変更
于 2016-10-05T10:58:23.970 に答える