Segurança e Criptografia java
Alguns sistemas herdados ainda podem estar vinculados aos protocolos TLSv1 e TLSv1.1 mais antigos e inseguros. A partir do OpenJDK 11.0.11, essas versões de protocolo são desabilitadas por padrão.
Para reabilitar, os usuários devem executar estas etapas:
- No diretório de instalação do JDK, navegue até a pasta
./conf/security/
- Abra o arquivo java.security
- Pesquisar a propriedade de configuração
jdk.tls.disabledAlgorithms
- Remover os elementos
TLSv1
e/ouTLSv1.1
- Relançar o aplicativo Java
javax.net.ssl.SSLHandshakeException: alerta fatal recebido: handshake_failure
Os aplicativos que precisam estabelecer conexões seguras (por exemplo, HTTPS, SFTP etc. ) devem ser executados em um runtime Java com um provedor de segurança compatível para a JCA (Arquitetura de Criptografia Java). O projeto OpenJDK contém um provedor de implementação padrão - a JCE (Extensão de Criptografia Java) - no jdk.crypto.ec
.
Se o aplicativo exigir o estabelecimento de conexões seguras, verifique se o módulo jdk.crypto.ec
está incluído no runtime java montado ou se um provedor de terceiros (por exemplo, BouncyCastle) está incluído.