Po viac ako jednom a pol roku vývoja sa uskutočnil vydanie knižnice OpenSSL 3.1.0 s implementáciou protokolov SSL/TLS a rôznych šifrovacích algoritmov. Podpora OpenSSL 3.1 sa bude poskytovať do marca 2025. Podpora predchádzajúcich vetiev OpenSSL 3.0 a 1.1.1 potrvá do septembra 2026 a septembra 2023, resp. Kód projektu sa distribuuje pod licenciou Apache 2.0.
Hlavné novinky OpenSSL 3.1.0:
- V module FIPS bola implementovaná podpora kryptografických algoritmov, ktoré zodpovedajú bezpečnostnému štandardu FIPS 140-3. Začal sa proces certifikácie modulu na získanie certifikátu zhodnosti s požiadavkami FIPS 140-3. Do ukončenia certifikácie po aktualizácii OpenSSL na vetvu 3.1 môžu používatelia naďalej využívať modul FIPS, certifikovaný pre FIPS 140-2. Medzi zmeny v novej verzii modulu patrí zahrnutie algoritmov Triple DES ECB, Triple DES CBC a EdDSA, ktoré zatiaľ neboli overené na zhodnosť s požiadavkami FIPS. Nová verzia prináša aj optimalizácie zamerané na zvýšenie výkonu a prechod na spúšťanie interných testov pri každom načítaní modulu, a nielen po inštalácii.
- Prepracovaný kód OSSL_LIB_CTX. Nová verzia je zbavená nadbytočných zámkov a umožňuje dosiahnuť vyšší výkon.
- Zvýšený výkon enkóderov a dekóderov.
- Optimalizácia výkonu spojená s použitím interných štruktúr (hash tabuliek) a cache.
- Zvýšená rýchlosť generovania RSA kľúčov v režime FIPS.
- Pre rôzne procesorové architektúry boli v implementácii algoritmov AES-GCM, ChaCha20, SM3, SM4 a SM4-GCM pridané špecifické assemblerové optimalizácie. Napríklad kód AES-GCM bol zrýchlen pomocou inštrukcií AVX512 vAES a vPCLMULQDQ.
- Do KBKDF (Key Based Key Derivation Function) bola pridaná podpora algoritmu KMAC (KECCAK Message Authentication Code).
- Rôzne funkcie „OBJ_*“ boli prispôsobené na použitie v multithreadovom kódovaní.
- Pridaná možnosť generovať pseudonáhodné čísla pomocou inštrukcií RNDR a registrov RNDRRS, dostupných v procesoroch založených na architektúre AArch64.
- Funkcie OPENSSL_LH_stats, OPENSSL_LH_node_stats, OPENSSL_LH_node_usage_stats, OPENSSL_LH_stats_bio, OPENSSL_LH_node_stats_bio a OPENSSL_LH_node_usage_stats_bio boli zaradené do kategórie zastaraných. Makro DEFINE_LHASH_OF bolo vyhlásené za zastarané.
Zdroj: opennet.ru
