Nasza aplikacja Java udostępnia wiele różnych interfejsów (SMTP, FTP, HTTP), zabezpieczonych przez SSL/TLS. Celem jest teraz ograniczenie dozwolonych na tych interfejsach szyfrów, aby zawierały tylko te "silne". Mam już listę i to jest jasne, w jaki sposób to zrobić pracę dla danego gniazdaOgraniczanie zestawów szyfrów na poziomie JRE
socket.setEnabledCipherSuites(ENABLED_SECURE_CIPHER_SUITES);
lub złącza Tomcat
<Connector port="443" ciphers="..."/>
Problem polega na tym, że istnieje już 5 miejsc w aplikacji gdzie powinien zastosuj to ograniczenie manualnie. Common SocketFactory nie wydaje się pomóc, ponieważ nie zawsze możliwe jest dostarczenie niestandardowego SocketFactory do zewnętrznego interfejsu API lub środowiska. Czy jest możliwe jakoś wprowadzić to ograniczenie na poziomie JRE, np. z konfiguracją lub plikiem reguł dostawcy JCE?
JRE: Oracle JRE 1.7.0_17
Definicja "strong". Java ogranicza już włączone zestawy algorytmów szyfrowania. Czy znasz [Właściwości sieciowe] (http://docs.oracle.com/javase/7/docs/technotes/guides/net/properties.html)? – EJP
To pytanie nie dotyczy siły określonych szyfrów. Mam stałą listę dozwolonych szyfrów i nie mogę tego zmienić. Na przykład RC4 jest w ogóle niedozwolone. Domyślne ograniczenia Java nie wystarczą. Sprawdziłem także właściwości sieci, ale nie znalazłem żadnych właściwości związanych z pakietami szyfrów. – Jk1
Patrz Przewodnik referencyjny JSSE. – EJP