La bibliothèque OpenSSL 4.0.0 a été publiée, offrant une implémentation des protocoles TLS et divers algorithmes de cryptage. OpenSSL 4.0 est classé parmi les versions avec un cycle de support normal, dont les mises à jour sont publiées pendant 13 mois. Le support des anciennes versions OpenSSL 3.6, 3.5 LTS, 3.4 et 3.0 LTS se poursuivra jusqu'en novembre 2026, avril 2030, octobre 2026 et septembre 2026 respectivement. Le code du projet est distribué sous la licence Apache 2.0.
Principales nouveautés :
- Ajout du support de l'extension TLS ECH (Encrypted ClientHello, RFC 9849), destinée à chiffrer les informations sur les paramètres de sessions TLS, telles que le nom de domaine demandé. Contrairement à l'extension ESNI (Encrypted Server Name Indication), dans l'ECH, c'est l'intégralité du message TLS ClientHello qui est chiffré, bloquant ainsi les fuites à travers des champs que l'ESNI ne couvre pas, par exemple le champ PSK (Pre-Shared Key).
- Ajout du support des algorithmes définis dans la RFC 8998 utilisant un ensemble d'algorithmes de cryptographie standardisé en Chine SM2 : l'algorithme de formation de signature numérique sm2sig_sm3, le groupe d'échange de clés curveSM2 et le groupe post-quantique curveSM2MLKEM768.
- Ajout de la fonction de hachage cryptographique cSHAKE, basée sur l'algorithme SHA-3 et permettant de générer différents hachages à partir des mêmes données d'entrée pour se protéger contre les attaques manipulant la réutilisation des données.
- Ajout d'un algorithme hybride « ML-DSA-MU », combinant l'algorithme post-quantique de formation de signature numérique ML-DSA (CRYSTALS-Dilithium) avec la fonction de hachage classique SHAKE256.
- Ajout du support des fonctions de génération de clés SNMP KDF basées sur HMAC-SHA et SRTP KDF basées sur AES-CM, utilisées dans les protocoles réseau SNMPv3 et SRTP pour créer des clés cryptographiques.
- Une option « -defer_tests » a été ajoutée à la commande « openssl fipsinstall », permettant de reporter l'exécution des tests lors de l'installation des modules FIPS.
- La prise en charge de la plate-forme Windows a été ajoutée pour l'utilisation de lier statique ou dynamique avec Visual C++ Runtime.
- Dans TLS 1.2, le support de l'accord d'échange de clés basé sur l'algorithme FFDHE, conforme à la RFC 7919, a été ajouté.
- Le support pour SSLv3 et SSLv2 Client Hello a été supprimé.
- Le support des moteurs chargés dynamiquement a été supprimé, à la place, la fonctionnalité d'OpenSSL doit être étendue en utilisant le concept de fournisseurs modulaires.
- Dans TLS, le support des courbes elliptiques obsolètes a été désactivé à la compilation. Vous pouvez utiliser l'option « enable-tls-deprecated-ec » pour le rétablir.
- L'outil c_rehash a été supprimé, à la place, utilisez la commande « openssl rehash ».
- L'option obsolète « msie-hack » a été supprimée de la commande « openssl ca ».
- Le support des méthodes propriétaires EVP_CIPHER, EVP_MD, EVP_PKEY et EVP_PKEY_ASN1 a été supprimé.
- Les fonctions SSL/TLS obsolètes liées à des versions fixes de protocoles, comme « TLSv1_client_method() », ont été supprimées.
- Les fonctions obsolètes ERR_get_state(), ERR_remove_state() et ERR_remove_thread_state() ont été supprimées.
- Le support des plateformes cibles darwin-i386{,-cc} et darwin-ppc{,64}{,-cc} a été interrompu.
Source : opennet.ru
