Como alternar entre o TLS 1.0 e o SSL 3.0 no nível Java / JRE?

7

Estou usando java 1.6. . Configurei meu tomcat como meu servidor ssl ativado. E eu configurei um cliente habilitado para ssl (código java). Quando eu faço uma comunicação do meu cliente para o servidor. No java ssl dump nos logs do tomcat, sempre vejo TLSv1 escolhido como versão do protocolo SSL pelo meu cliente e servidor. Existe uma maneira que eu possa alternar entre os protocolos SSLv3 e TLSv1 para conexão segura? Como posso fazer uma comunicação do servidor cliente usando SSLv3 ?

Obrigado antecipadamente!

    
por Anita 19.01.2015 / 12:50

1 resposta

9

Aviso legal : do meu ponto de vista, não é uma boa idéia transferir o protocolo de conexão para SSLv3, a menos que você tenha um dispositivo que não suporte TLS.

Se você realmente precisar, pode forçar o conector do tomcat a usar o protocolo SSLv3. Na configuração XML do conector:

<!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector protocol="HTTP/1.1" port="8443" ... sslProtocol="SSLv3"/>

o atributo sslProtocol aceita os nomes dos algoritmos SSLContext definidos no Documentação Java . O valor padrão é TLS .

A documentação do conector HTTP também está disponível aqui: link

UPDATE

Parece possível especificar os protocolos autorizados para SSL e TLS com a propriedade do sistema java https.protocols ( veja aqui ). Você pode iniciar seu aplicativo com

java -Dhttps.protocols="SSLv3" ... -jar myapp.jar
    
por 19.01.2015 / 14:05