Chcę wypróbować JDK 9 i potrzebuję łatki JCE. Gdzie mogę uzyskać JCE zip file for JDK 9
? Czy mogę użyć tego do JDK 8? Szukałem zip JCE dla JDK 9, ale nie jestem w stanie go zlokalizować. Z góry dzięki.Plik ZIP z JCE dla JDK 9
Odpowiedz
Aktualizacja: Silna kryptografia jest teraz włączony po wyjęciu z pudełka do wszystkich aktualnych wersjach Java 6 - 9. szczegóły patrz: https://stackoverflow.com/a/39889731/3392724
zakładam z „JCE pliku zip” masz na myśli "Pliki zasad jurysdykcji Java Cryptography Extension (JCE) Unlimited Strength Policy".
Podobno w Javie 9 nie trzeba już zip, patrz: http://mail.openjdk.java.net/pipermail/security-dev/2016-October/014943.html
dodając 'Security.setProperty («crypto.policy», «nieograniczony»);' lub edytowanie pliku konfiguracyjnego java.security umożliwi nieograniczoną moc .
Dodatkowe szczegóły:
- 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
przykład za pomocą kodu w celu ustawienia własności:
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 :(");
}
}
}
Wynik:
Hello World!
2147483647
Press any key to continue . . .
java -version:
Java(TM) SE Runtime Environment (build 9-ea+138)
Java HotSpot(TM) Server VM (build 9-ea+138, mixed mode)
Alternatywnie, edytować plik konfiguracyjny java.security w folderze instalacji JRE:
- Otwarte < jre9-home > /conf/security/java.security w preferowanym edytorze tekstu
- Szukaj linii "crypto.policy = ograniczona"
- go zmienić na "crypto.policy = nieograniczona"
tak, dzięki, to też dobrze. –