Izšla je knjižnica OpenSSL 4.0.0, ki ponuja implementacijo protokolov TLS in različnih šifrirnih algoritmov. OpenSSL 4.0 spada med izdaje s standardnim obdobjem podpore, pri čemer se posodobitve izdajajo v 13 mesecih. Podpora prejšnjim različicam OpenSSL 3.6, 3.5 LTS, 3.4 in 3.0 LTS bo trajala do novembra 2026, aprila 2030, oktobra 2026 in septembra 2026. Koda projekta je razpoložljiva pod licenco Apache 2.0.
Glavne novosti:
- Dodana je podpora za TLS-razširitev ECH (Encrypted ClientHello, RFC 9849), namenjena šifriranju informacij o parametrih TLS-sejmov, kot je zahtevano ime domene. V nasprotju z razširitvijo ESNI (Encrypted Server Name Indication) se v ECH celotno sporočilo TLS ClientHello šifrira, kar preprečuje puščanje informacij preko polj, ki jih ESNI ne zajema, kot je polje PSK (Pre-Shared Key).
- Dodana je podpora za algoritme, določene v RFC 8998, ki uporabljajo standardiziran nabor kriptografskih algoritmov SM2 v Kitajski: algoritem za ustvarjanje digitalnega podpisa sm2sig_sm3, skupina za izmenjavo ključev curveSM2 in postkvantna skupina curveSM2MLKEM768.
- Dodana je kriptografska funkcija hashiranja cSHAKE, ki temelji na algoritmu SHA-3 in omogoča ustvarjanje različnih hashov na podlagi istih vhodnih podatkov za zaščito pred napadi, ki manipulirajo z uporabo ponovljivih podatkov.
- Dodana je hibridna algoritem 'ML-DSA-MU', ki združuje postkvantni algoritem za ustvarjanje digitalnega podpisa ML-DSA (CRYSTALS-Dilithium) s klasično hash funkcijo SHAKE256.
- Dodana je podpora za funkcije za oblikovanje ključev SNMP KDF na osnovi HMAC-SHA in SRTP KDF na osnovi AES-CM, ki se uporabljajo v mrežnih protokolih SNMPv3 in SRTP za ustvarjanje kriptografskih ključev.
- V ukaz 'openssl fipsinstall' je bila dodana možnost '-defer_tests', ki omogoča odložitev zagona testov med namestitvijo FIPS modulov.
- Za platformo Windows je bila uvedena podpora za uporabo statične ali dinamične povezave z Visual C++ Runtime.
- V TLS 1.2 je bila dodana podpora za usklajevanje izmenjave ključev na osnovi algoritma FFDHE, ki ustreza RFC 7919.
- Podpora za SSLv3 in SSLv2 Client Hello je prenehana.
- Odstranjena je podpora za dinamično nalaganje motorjev, namesto katerih naj se za širitev funkcionalnosti OpenSSL uporablja koncept vtičnih ponudnikov.
- V TLS je v fazi prevajanja onemogočena podpora zastarelih eliptičnih krivulj. Za ponovno omogočenje lahko uporabite možnost «enable-tls-deprecated-ec».
- Orodje c_rehash je odstranjeno, namesto njega pa uporabite ukaz «openssl rehash».
- Iz ukaza «openssl ca» je odstranjena zastarela možnost «msie-hack».
- Odstranjena je podpora za lastne metode EVP_CIPHER, EVP_MD, EVP_PKEY in EVP_PKEY_ASN1.
- Odstranjene so zastarele funkcije SSL/TLS, vezane na natančne različice protokolov, kot je «TLSv1_client_method()».
- Odstranjene so zastarele funkcije ERR_get_state(), ERR_remove_state() in ERR_remove_thread_state().
- Podpora za ciljne platforme darwin-i386{,-cc} in darwin-ppc{,64}{,-cc} je prenehala.
Izvor: opennet.ru
