E foi lançado o OpenSSL 3.4 com novas APIs, atualizações de FIPS. e muito mais. COnfira as novidades dessa importante atualização.
O projeto OpenSSL é uma pedra angular da segurança da Internet que fornece bibliotecas de criptografia robustas usadas em inúmeras aplicações em todo o mundo.
O OpenSSL é uma biblioteca de software de código aberto amplamente usada para implementar protocolos de segurança, como SSL (Secure Sockets Layer) e TLS (Transport Layer Security).
Ele fornece ferramentas para criptografar dados, criar certificados digitais e estabelecer conexões seguras na internet, garantindo a confidencialidade e integridade das comunicações entre servidores e clientes.
Enfim, é uma peça fundamental na segurança de muitos sistemas e aplicações web.
Agora, foi lançado o OpenSSL 3.4.
Novidades do OpenSSL 3.4
Sim. O OpenSSL lançou a versão 3.4, que introduz algumas modificações importantes e é potencialmente incompatível com o OpenSSL 3.3 em alguns casos.
Entre as principais mudanças, as funções “TS_VERIFY_CTX_set_*” foram descontinuadas em favor de novas substituições “TS_VERIFY_CTX_set0_*”, que prometem semântica aprimorada.
Os usuários do Windows também verão um redesenho em como os diretórios OPENSSLDIR, ENGINESDIR e MODULESDIR são usados — esses locais agora podem ser definidos em tempo de execução usando chaves de registro, em oposição à configuração anterior de tempo de compilação.
Outras mudanças incluem atualizações nos algoritmos SHAKE-128 e SHAKE-256. Agora, eles exigem uma configuração explícita de seu comprimento de saída, tornando-os inutilizáveis com “EVP_DigestFinal/_ex()” sem definir o parâmetro “xoflen”.
Enquanto isso, as implementações de troca de chaves X25519 e X448 no provedor FIPS estão atualmente não aprovadas, sinalizadas com uma propriedade “fips=no”.
O trem de descontinuação continua, com funções como “SSL_SESSION_get_time()”, “SSL_SESSION_set_time()”, e “SSL_CTX_flush_sessions()” sendo substituídas por suas respectivas variantes “_ex”, que são projetadas para serem Y2038-safe para plataformas que suportam tipos de tempo Y2038-safe.
Há também uma mudança no OpenSSL 3.4 em como a renegociação é tratada em hellos de cliente TLS — para conexões com versões mínimas de TLS maiores que 1.0, uma extensão de renegociação vazia será usada em vez do SCSV de renegociação vazio.
O OpenSSL 3.4 também introduz vários novos recursos. Notavelmente, ele adiciona suporte para algoritmos de assinatura composta diretamente buscados, como RSA-SHA2-256, com novas funções de API correspondentes.
OpenSSL 3.4 também expande os indicadores FIPS no provedor FIPS, preparando-se para futuros requisitos de validação FIPS 140-3.
O suporte RFC 9579 (PBMAC1) foi adicionado para PKCS#12, e a versão inclui uma fonte de semente aleatória adicional opcional na forma de RNG JITTER, habilitada por meio de uma biblioteca jitterentropy vinculada estaticamente.
Além disso, as novas opções “-not_before” e “-not_after” fornecem maneiras explícitas de definir as datas de início e término para certificados criados usando os comandos req e x509.
Em relação ao TLS 1.3, o OpenSSL 3.4 agora oferece suporte aos conjuntos de cifras somente de integridade TLS_SHA256_SHA256 e TLS_SHA384_SHA384.
Também há suporte para solicitações CRL em CMP, extensões X.509v3 adicionais vinculadas a Certificados de Atributos e suporte inicial para Certificados de Atributos conforme RFC 5755.
Por fim, uma adição notável para otimização de desempenho é a capacidade de personalizar a inicialização do grupo ECC usando valores pré-computados, que a implementação P-256 agora aproveita para reduzir o uso da CPU.
Para saber mais sobre essa versão do OpenSSL, acesse a nota de lançamento.
Como instalar ou atualizar o OpenSSL
Para instalar a versão mais recente do OpenSSL nas principais distribuições Linux, use o gerenciador de pacotes do seu sistema ou confira essa página.