web-dev-qa-db-ja.com

JDK9のJCEZipファイル

JDK 9を試したいのですが、JCEにパッチを適用する必要があります。どこで買えるの JCE Zip file for JDK 9?または、JDK 8用のものを使用できますか? JDK9のJCEZipを検索しましたが、見つかりません。前もって感謝します。

15
Anjana

更新:Java 6-9。の現在のすべてのリリースで、強力な暗号化がすぐに有効になりました。参照: https://stackoverflow.com/a/39889731/3392724


「JCEZipファイル」とは、「Java Cryptography Extension(JCE)Unlimited Strength JurisdictionPolicyFiles」を意味すると思います。

どうやら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構成ファイルを編集します。

  • お好みのテキストエディタで<jre9-home>/ conf/security/Java.securityを開きます
  • 「crypto.policy = limited」という行を検索します
  • 「crypto.policy = unlimited」に変更します
32
cranphin