Az OpenBSD projekt fejlesztői bemutatták a LibreSSL 3.9.0 hordozható verzióját, amely az OpenSSL forkjának fejlesztésére összpontosít, a magasabb szintű biztonság biztosítása érdekében. A LibreSSL projekt a SSL/TLS protokollok minőségi támogatására orientálódik, eltávolítva a felesleges funkciókat, további védelmi eszközök bevezetésével, valamint jelentős tisztítást és újraformálást végezve a kódalapon. A LibreSSL 3.9.0 kiadást kísérleti jelleggel kezelik, amelyben azok a lehetőségek fejlődnek, amelyek az OpenBSD 7.5-ös verzióban is meg fognak jelenni. Ezzel párhuzamosan a LibreSSL 3.8.3 stabil kiadása is elkészült, amelyben néhány, a Windowsra jellemző hibát javítottak és megerősítették a CET (Control-flow Enforcement Technology) védelmi mechanizmus támogatását.
A LibreSSL 3.9.0 jellemzői:
- Hozzáadva az ECDSA alapú digitális aláírás algoritmusok támogatása SHA-3 hash-ekkel.
- Hozzáadva az HMAC támogatás a SHA-2 és SHA-3 csonkított hash-eivel PBE PRF-ként.
- Változtatások végrehajtása a más platformokra való hordozhatóság javítása érdekében. Azoknak a szimbólumoknak, amelyeket a kompatibilitás biztosítása érdekében exportálnak, a többsége „libressl_” előtaggal van ellátva, hogy elkerüljék a statikus kötési problémákat. A CMake alapú build-ekben megszűnt a libcrypto compat-szimbólumok exportálása.
- Változtatások a OpenSSL kompatibilitás javítása érdekében. Például, a ChaCha20 és chacha20 álnév hozzáadva a ChaCha algoritmushoz, az SSL_library_init() és OPENSSL_init_ssl() funkciók működése egységesítve, valamint az EVP_{CIPHER,MD}_CTX_init() hívások az OpenSSL viselkedéséhez igazítva.
- Az openssl eszközhöz hozzáadva a „-new -force_pubkey”, „-multivalue-rdn”, „-set_issuer”, „-set_subject” és „-utf8” zászlók támogatását.
- Átálltak az OBJ_bsearch_() hívás használatáról a szabványos bsearch() funkcióra.
- Egyszerűsítve lett a by_file_ctrl(), EVP_Cipher{Init,Update,Final}() és az API OBJ_* függvények megvalósítása.
- Jelentős API EVP reorganizálás történt. Az EVP_add_{cipher,digest}() függvények eltávolítva.
- Az X509_TRUST feldolgozása egyszerűsítve.
- Átírásra kerültek a BIO_dump*() függvények.
- A globális táblák támogatása, amelyek nem a több szálú használatra orientálódtak, megszűnt. Ennek következtében a titkosításokhoz és hash-ekhez való álnév hozzárendelése, egyedi karakterláncok hozzáadása, ASN.1 módszerek, PKEY és CRL megoldások nem támogatottak.
- Eltávolítva a BIO_set(), BIO_{sn,v,vsn}printf(), sk_find_ex() és OBJ_bsearch_() függvények, valamint számos elavult CRYPTO API funkció.
- A X509_CERT_AUX és X509_TRUST API nyilvános hozzáférése megszűnt.
- A GOST és STREEBOG algoritmusok támogatása megszűnt.
- Bővült a CET (Control-flow Enforcement Technology) mechanizmus támogatása, amelyet a visszatérési orientált programozás (ROP, Return-Oriented Programming) módszereivel készült exploitokkal szembeni védelmére alkalmaznak.
Forrás: opennet.ru
