A titkosítás újabb bástyája

kami911 képe

Az OpenSSL 3.4.0 szoftverfrissítés jelentős újdonságokat hozott a korábbi verzióhoz képest. Többek között a közvetlen kompozit aláírási algoritmusok, mint az RSA-SHA2-256 lekérésének képességét, valamint új API funkciókat. Ezenkívül támogatást nyújt a FIPS szolgáltatónál található FIPS indikátorokhoz, és megvalósítja az RFC 9579-et (PBMAC1) a PKCS#12-ben.

Az új verzió választhatóan hozzáad egy további véletlenszám-generálási forrást az RNG JITTER formájában, statikusan linkelt jitterentropy könyvtárral, új lehetőségeket biztosítva a tanúsítványok kezdési és lejárati dátumainak beállítására a req és x509 alkalmazásoknál. Ezen kívül támogatja a CRL-kéréseket a CMP-ben.

Az OpenSSL 3.4 támogatást nyújt a TLS 1.3-ban definiált csak integritásra vonatkozó titkosítási készletekhez (cipher suites), mint például a TLS_SHA256_SHA256 és a TLS_SHA384_SHA384, ahogyan azt az RFC 9150 meghatározza. Emellett bevezeti az attribútum tanúsítványokhoz kapcsolódó X.509v3 kiterjesztéseket, valamint az attribútum tanúsítványok kezdeti támogatását (RFC 5755).

További fejlesztések és inkompatibilitások

Az OpenSSL 3.4 lehetőséget biztosít az ECC csoportok inicializálásának testreszabására előre kiszámított értékek használatával, ezzel CPU időt takarítva meg. Ezt a funkciót a P-256 megvalósítás is támogatja. A kiadás különféle frissítéseket tartalmaz a FIPS szolgáltatóhoz is, amelyeket a jövőbeli FIPS 140-3 hitelesítésekhez szükségesek.

Fontos megjegyezni, hogy az új verzió számos jelentős változást tartalmaz, amelyek nem kompatibilisek a korábbi OpenSSL verziókkal, mint például a TS_VERIFY_CTX_set_* függvények elavulása, és azok új TS_VERIFY_CTX_set0_* funkciókkal való helyettesítése, amelyek továbbfejlesztett szemantikát biztosítanak.

Az OpenSSL 3.4 a FIPS szolgáltatón belül az X25519 és X448 kulcscsere megvalósítását nem jóváhagyottá teszi, és hozzáadja a fips=no tulajdonságot. Emellett eltávolítja a SHAKE-128 és SHAKE-256 megvalósítások alapértelmezett hash hosszt, így ezek nem használhatók az EVP_DigestFinal/_ex() függvényekkel, hacsak az xoflen paramétert nem állítják be előre.

A kiadás továbbá áttervezi az OPENSSLDIR/ENGINESDIR/MODULESDIR használatát Windows rendszereken, és üres újratárgyalási kiterjesztést alkalmaz a TLS kliens hellókban, ahelyett, hogy üres újratárgyalási SCSV-t használna az összes TLS 1.0-s verziójú kapcsolathoz.

Az OpenSSL 3.4 újdonságai között szerepel még, hogy ha a konfigurációs fájlban a config_diagnostics=1 opciót beállítják, hibaüzenetek jelennek meg az SSL_CTX_new() és SSL_CTX_new_ex() függvények hívásakor, ha az SSL modul konfigurációjában hibák vannak.

A kiadás dokumentációs fejlesztéseket is magában foglal, beleértve több útmutatót az OpenSSL könyvtárral kapcsolatban, különös tekintettel a különböző kliensek írására (TLS és QUIC protokollok használatával) a libssl segítségével. A részletes változások listáját megtalálhatók a CHANGES.md fájlban. A QUIC funkcionalitás használatát tervező felhasználóknak ajánlott elolvasni a QUIC README fájlt, mely hivatkozásokat tartalmaz a releváns dokumentációkhoz és példaprogramokhoz.