Pliki JAR podpisane z algorytmami SHA-1 podlegają teraz ograniczeniom

Pliki JAR podpisane przy użyciu algorytmów SHA-1 są obecnie domyślnie objęte ograniczeniami i traktowane w środowisku Java SE 17 tak, jak gdyby były niepodpisane. Ta zmiana ma zastosowanie do algorytmów używanych do tworzenia skrótu, podpisywania i opcjonalnie dodawania znaczników czasu do pliku JAR. Ma także zastosowanie do algorytmów generowania podpisu i skrótu certyfikatów w łańcuchu certyfikatów podmiotu podpisującego kod i nadającego znaczniki czasu oraz wszelkich list CRL lub odpowiedzi OCSP, które są używane do sprawdzania, czy certyfikaty te zostały odwołane.

Aby zmniejszyć ryzyko związane z kompatybilnością w przypadku aplikacji, które wcześniej zostały opatrzone znacznikami czasu lub używają prywatnych ośrodków certyfikacji, wprowadzono dwa wyjątki od tej zasady:

Wyjątki te mogą zostać usunięte w przyszłej wersji pakietu JDK.

Algorytm SHA-1 nie jest już uznawany za bezpieczny i nie powinien być używany. Użytkownicy mogą, na własne ryzyko, usunąć te ograniczenia, modyfikując plik konfiguracyjny java.security (lub przesłaniając go za pomocą właściwości systemowej java.security.properties ) i usuwając wpis SHA1 jdkCA & usage SignedJAR & denyAfter 2019-01-01 z właściwości zabezpieczeń jdk.certpath.disabledAlgorithms oraz wpis SHA1 jdkCA & denyAfter 2019-01-01 z właściwości zabezpieczeń jdk.jar.disabledAlgorithms.

Więcej informacji na temat tego ograniczenia można znaleźć w sekcji Wyłącz SHA-1 podpisanych plików JAR.