Welche Cipher Suites für SSL-Socket aktivieren?
Ich verwende Java SSLSocket, um die Kommunikation zwischen einem Client- und einem Serverprogramm zu sichern. Das Serverprogramm verarbeitet auch HTTPS-Anforderungen von Webbrowsern.
Gemäß "Einstieg in die Kryptografie mit Java", Seite 371, sollten Sie immer anrufensetEnabledCipherSuites
auf IhremSSLSocket
/ SSLServerSocket
um sicherzustellen, dass die zu verhandelnde Chiffrensuite für Ihre Zwecke ausreicht.
Davon abgesehen ein Anruf an meineSSLSocketFactory
'sgetDefaultCipherSuites
Methode liefert einige180 Optionen. Diese Optionen reichen vonTLS_RSA_WITH_AES_256_CBC_SHA
(was ich für ziemlich sicher halte)SSL_RSA_WITH_RC4_128_MD5
(nicht so sicher, ob das sicher ist, angesichts des aktuellen MD5-Status)SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
(nicht ganz sicher, was das macht).
Was ist eine vernünftige Liste von Chiffresuiten, auf die die Sockets beschränkt werden sollen?
Beachten Sie, dass der Client und der Server Zugriff auf dieHüpfburg Diensteanbieter, auf denen möglicherweise eine unbegrenzte Anzahl kryptografischer Richtliniendateien installiert ist.