O OpenSSL 3.4 foi lançado hoje, trazendo uma importante atualização para esta biblioteca de software livre, multiplataforma e de código aberto, amplamente utilizada para fornecer comunicações seguras em redes de computadores, em aplicativos e sites.
Mais de seis meses após o OpenSSL 3.3, a nova versão 3.4 apresenta diversos recursos inéditos. Entre eles, destaca-se a capacidade de buscar diretamente algoritmos de assinatura composta, como RSA-SHA2-256, além de novas funções de API e suporte a indicadores FIPS no provedor FIPS. Também foi implementado o RFC 9579 (PBMAC1) no PKCS#12.
Outras adições incluem uma fonte de semente aleatória opcional chamada JITTER
RNG, que utiliza a biblioteca jitterentropy vinculada estaticamente. Além disso, foram introduzidas novas opções -not_before
e -not_after
para definir explicitamente as datas de início e término dos certificados criados com os aplicativos req
e x509
, bem como suporte para solicitação de CRL no CMP.
No que diz respeito à segurança, o OpenSSL 3.4 traz suporte a conjuntos de criptografia de integridade apenas para TLS_SHA256_SHA256 e TLS_SHA384_SHA384 no TLS 1.3, conforme especificado no RFC 9150. Também adiciona suporte a extensões X.509v3 adicionais, relacionadas a Certificados de Atributo, além de um suporte inicial ao Certificado de Atributo (RFC 5755).
Outro destaque desta versão é a possibilidade de personalizar a inicialização de grupos ECC, permitindo o uso de valores pré-computados para economizar recursos de CPU. A implementação do P-256 já pode se beneficiar desse recurso. Além disso, o provedor FIPS recebeu várias atualizações necessárias para futuras validações do FIPS 140-3.
Algumas mudanças significativas podem resultar em incompatibilidade com versões anteriores. Por exemplo, as funções TS_VERIFY_CTXset foram substituídas por funções TS_VERIFY_CTXset0 com semântica aprimorada. Da mesma forma, as funções SSL_SESSION_get_time(), SSL_SESSION_set_time() e SSL_CTX_flush_sessions() foram substituídas pelas versões _ex
, que são compatíveis com Y2038 em plataformas que suportam time_t
Y2038-safe.
O OpenSSL 3.4 também torna a implementação de troca de chaves X25519 e X448 no provedor FIPS não aprovada, adicionando a propriedade fips=no
. Além disso, foi removido o comprimento de resumo padrão das implementações SHAKE-128 e SHAKE-256, de modo que elas não podem mais ser usadas com EVP_DigestFinal/_ex(), a menos que o parâmetro xoflen
seja definido previamente.
O uso de OPENSSLDIR/ENGINESDIR/MODULESDIR em sistemas Windows foi redesenhado, e agora uma extensão de renegociação vazia é usada nos hellos de cliente TLS, em vez de um SCSV vazio, para todas as conexões com TLS 1.0 ou superior.
Por fim, a configuração da opção config_diagnostics=1
no arquivo de configuração agora gera erros nas funções SSL_CTX_new() e SSL_CTX_new_ex() quando houver problemas na configuração do módulo SSL.
Para mais informações, consulte as notas de lançamento. O OpenSSL 3.4 já está disponível para download no site oficial. Recomenda-se a todos os usuários, administradores de sites e sistemas operacionais que realizem a atualização o quanto antes.