Tengo un problema cuando un cliente (no el mío) se conecta a mi servidor de forma segura.Problema de Java "no hay suites de cifrado en común" al intentar conectarse de forma segura al servidor
Parece que la conexión se rechaza sobre la base de cifras erróneas, pero he verificado que el servidor comparte algunas de las cifras con el cliente.
¿Podría ser un problema con el cifrado desconocido (Desconocido 0x0: 0x60)? Si es así, ¿qué debo hacer para solucionarlo?
registros SSL Java se muestran a continuación:
Listener-https, setSoTimeout(30000) called
Worker-30, READ: SSLv3 Handshake, length = 63
*** ClientHello, SSLv3
RandomCookie: GMT: 1267050437 bytes = { 23, 244, 228, 68, 161, 225, 218, 222, 207, 128, 228, 138, 127, 141, 159, 63, 232, 48, 242, 240, 26, 76, 58, 158, 179, 0, 192, 140 }
Session ID: {}
Cipher Suites: [TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_IDEA_CBC_SHA, SSL_RSA_WITH_RC4_128_SHA, SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_EXPORT1024_WITH_RC4_56_SHA, Unknown 0x0:0x60, SSL_RSA_EXPORT_WITH_RC4_40_MD5]
Compression Methods: { 0 }
***
Worker-30, SEND SSLv3 ALERT: fatal, description = handshake_failure
Worker-30, WRITE: SSLv3 Alert, length = 2
Worker-30, called closeSocket()
Worker-30, handling exception: javax.net.ssl.SSLHandshakeException: no cipher suites in common
Worker-30, called close()
Worker-30, called closeInternal(true)
Worker-30, called close()
Worker-30, called closeInternal(true)
Gracias, -Ben
Parece que mi servidor usa un almacén de claves que tiene un único certificado con un par de claves DSA. Intentaré cambiar a RSA y ver si eso funciona ahora ... – Ben
@Ben, es bueno saber del progreso. Estado allí, hecho eso :) –
¡Funcionó totalmente! Eres el mejor, he estado lidiando con esto por mucho tiempo. ¡Gracias, gracias, gracias! – Ben