Java SSLSocket (Error: No Cipher suites in común)
Estoy programando un sslserver y sslclient usando la clase SSLSocket del jdk 1.4 <BR><BR>
Genere las llaves y certificados en cada maquina (cliente y servidor), tambien genere los truststore respectivos y los intercambie (en el cliente puse el truststore del server y viceversa). <BR>
al llamar al server lo hago asi:
java -Djavax.net.ssl.keystore=dbkey -Djavax.net.ssl=keystorepassword=pass1 -Djavax.net.ssl.truststore=truststoreclient sslserver <BR><BR>
y al cliente: java -Djavax.net.ssl.keystore=dbkey2 -Djavax.net.ssl=keystorepassword=pass2 -Djavax.net.ssl.truststore=truststoreserver sslclient <BR><BR>
En el server obtengo el siguiente error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: no cipher suites in common
<BR><BR>
No se en donde esta el problema, ya he probado varias cosas como poner el truststore del cliente como jssecacerts en el directorio security del jre y tampoco funciona. <BR>
El error solo me da cuando pongo en el server la siguiente instrucción: s.setNeedClientAuth(true); Sino la coloco el código funciona correctamente.
Genere las llaves y certificados en cada maquina (cliente y servidor), tambien genere los truststore respectivos y los intercambie (en el cliente puse el truststore del server y viceversa). <BR>
al llamar al server lo hago asi:
java -Djavax.net.ssl.keystore=dbkey -Djavax.net.ssl=keystorepassword=pass1 -Djavax.net.ssl.truststore=truststoreclient sslserver <BR><BR>
y al cliente: java -Djavax.net.ssl.keystore=dbkey2 -Djavax.net.ssl=keystorepassword=pass2 -Djavax.net.ssl.truststore=truststoreserver sslclient <BR><BR>
En el server obtengo el siguiente error: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLHandshakeException: no cipher suites in common
<BR><BR>
No se en donde esta el problema, ya he probado varias cosas como poner el truststore del cliente como jssecacerts en el directorio security del jre y tampoco funciona. <BR>
El error solo me da cuando pongo en el server la siguiente instrucción: s.setNeedClientAuth(true); Sino la coloco el código funciona correctamente.
1 Respuesta
Respuesta de seguridadit
1