Po osmi měsících vývoje byl vydán OpenSSL 3.2.0, který implementuje protokoly SSL/TLS a různé šifrovací algoritmy. Podpora OpenSSL 3.2 bude zajišťována do 23. listopadu 2025. Podpora předchozích verzí OpenSSL 3.1 a 3.0 LTS bude pokračovat do března 2025 a září 2026. Podpora verze 1.1.1 byla ukončena v září tohoto roku. Kód projektu je distribuován pod licencí Apache 2.0.
Hlavní novinky OpenSSL 3.2.0:
- Byla přidána klientská podpora protokolu QUIC (RFC 9000), který se používá jako transport v HTTP/3. Implementace zahrnuje mimo jiné možnost přenosu více proudů přes jeden komunikační kanál. Komponenty pro použití QUIC na serverech budou zahrnuty v vydání OpenSSL 3.3, které je plánováno na nejpozději 30. dubna 2024.
QUIC představuje nadstavbu nad protokolem UDP, podporující multiplexaci více spojení a poskytující metody šifrování ekvivalentní TLS/SSL. Protokol byl vytvořen v roce 2013 společností Google jako alternativa kombinace TCP+TLS pro web, která řeší problémy s dlouhou dobou navázání a vyjednávání spojení v TCP a odstraňuje zpoždění při ztrátě paketů během přenosu dat.
- V TLS byla zavedena podpora rozšíření pro kompresi certifikátů během fáze vyjednávání spojení (RFC 8879), což umožňuje zrychlit navazování spojení, protože na přenos certifikátů připadá většina datového toku během fáze vyjednávání spojení. Podporováno je kompresi pomocí knihoven zlib, zstd a Brotli.
- Byla přidána podpora deterministické varianty digitálních podpisů ECDSA (Deterministic ECDSA, RFC 6979), ve které místo náhodné sekvence při generování podpisu se používá hash HMAC-SHA256 z privátního klíče a textu podepisované zprávy, což umožňuje vždy získat stejný podpis při různých operacích podepisování, ale zabraňuje úniku dat, která by mohla být použita k odhalení privátního klíče (privátní klíč lze odhalit, pokud byly alespoň dva podpisy pro různé údaje vytvořeny pomocí opakující se náhodné sekvence).
- Byla přidána podpora rozšířených variant digitálních podpisů s veřejným klíčem Ed25519 a Ed448: Ed25519ctx, Ed25519ph a Ed448ph (RFC 8032).
- Byla přidána podpora režimu šifrování AES-GCM-SIV (RFC 8452), který kombinuje vysoký výkon režimu GCM (Galois/Counter Mode) s odolností vůči únikům při opakovaném použití náhodného kódu nonce.
- Byla implementována funkce generování klíče Argon2 (RFC 9106), která v roce 2015 vyhrála soutěž o funkce hashování hesel. Přidána možnost využití vlákna poolu.
- Byla přidána podpora hybridního šifrování na základě mechanismu HPKE (Hybrid Public Key Encryption, RFC 9180), který kombinuje jednoduchost přenosu klíče v asymetrickém šifrování s vysokým výkonem symetrického šifrování (data jsou šifrována rychlým symetrickým klíčem, zatímco samotný klíč je šifrován pomalým asymetrickým).
- V TLS byla implementována možnost použití „surových“ (raw) otevřených klíčů (RFC 7250).
- Byla přidána podpora mechanismu rychlého otevírání TCP spojení (TFO — TCP Fast Open, RFC 7413), který umožňuje zkrátit počet kroků při nastavování spojení kombinací prvního a druhého kroku klasického tříkrokového procesu vyjednávání spojení do jednoho požadavku a umožňuje odesílání dat v počátečním fázi nastavování spojení.
- V TLS byla implementována podpora připojitelných schémat digitálních podpisů, která umožňují používání externích implementací algoritmů, např. pro použití algoritmů odolných vůči útokům kvantových počítačů v TLS.
- V TLS 1.3 byla přidána podpora chráněných eliptických křivek Brainpool.
- Byla přidána podpora procesorových instrukcí SM4-XTS.
- Na platformě Windows byla implementována možnost použití systémového úložiště kořenových certifikátů (ve výchozím nastavení zakázáno). Pro přístup k certifikátům v úložišti Windows byl navržen URI „org.openssl.winstore://“.
Zdroj: opennet.ru
