Zhvilluesit e projektit OpenBSD kanë prezantuar versionin portabël të paketës LibreSSL 3.9.0, në kuadër të të cilit zhvillohet një fork i OpenSSL, i orientuar drejt ofrimit të një niveli më të lartë sigurie. Projekti LibreSSL fokusohet në mbështetje cilësore të protokolleve SSL/TLS, duke hequr funksionalitetin e tepërt, duke shtuar mekanizma shtesë mbrojtjeje dhe duke kryer një pastrim e ripunim të konsiderueshëm të bazës së kodit. LibreSSL 3.9.0 konsiderohet si një version eksperimental, ku zhvillohen veçori që do të përfshihen në OpenBSD 7.5. Njëkohësisht është përgatitur edhe versioni i qëndrueshëm LibreSSL 3.8.3, ku janë korrigjuar disa gabime specifike për Windows dhe është forcuar mbështetja për mekanizmin e mbrojtjes CET (Control-flow Enforcement Technology).
Veçoritë e LibreSSL 3.9.0:
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r algoritmet e nĂ«nshkrimit dixhital tĂ« bazuara nĂ« ECDSA me hash-et SHA-3.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r HMAC me hash-e tĂ« shkurtuara SHA-2 dhe SHA-3 si PBE PRF.
- Janë bërë ndryshime për të përmirësuar portueshmërinë në platforma të tjera. Për të shmangur problemet gjatë lidhjes statike, shumica e simboleve të eksportuara të LibreSSL që përdoren për pajtueshmëri tani janë pajisur me prefiksin «libressl_». Në ndërtimet e bazuara në CMake është ndërprerë eksportimi i simboleve compat të libcrypto.
- Janë bërë ndryshime që synojnë përmirësimin e pajtueshmërisë me OpenSSL. Për shembull, janë shtuar emra alias ChaCha20 dhe chacha20 për algoritmin ChaCha, është unifikuar funksionimi i funksioneve SSL_library_init() dhe OPENSSL_init_ssl(), si dhe thirrjet EVP_{CIPHER,MD}_CTX_init() janë përshtatur me sjelljen e OpenSSL.
- Në mjetin openssl është shtuar mbështetja për flamujt «-new -force_pubkey», «-multivalue-rdn», «-set_issuer», «-set_subject» dhe «-utf8».
- ĂshtĂ« kryer kalimi nga pĂ«rdorimi i thirrjes OBJ_bsearch_() te funksioni standard bsearch().
- ĂshtĂ« thjeshtuar implementimi i funksionit by_file_ctrl(), EVP_Cipher{Init,Update,Final}() dhe API OBJ_*.
- ĂshtĂ« kryer njĂ« riorganizim i madh i API EVP. JanĂ« hequr funksionet EVP_add_{cipher,digest}().
- ĂshtĂ« thjeshtuar pĂ«rpunimi i X509_TRUST.
- Janë rishkruar funksionet BIO_dump*().
- ĂshtĂ« ndĂ«rprerĂ« mbĂ«shtetja pĂ«r tabelat globale qĂ« nuk janĂ« pĂ«rshtatur pĂ«r pĂ«rdorim shumĂ«fijor. Si rezultat, tani nuk mbĂ«shtetet mĂ« caktimi i alias-eve pĂ«r shifrat dhe hash-et, shtimi i vargjeve vetjake, metodave ASN.1, PKEY dhe CRL.
- Janë hequr funksionet BIO_set(), BIO_{sn,v,vsn}printf(), sk_find_ex() dhe OBJ_bsearch_(), si edhe shumë funksione të vjetruara të API CRYPTO.
- ĂshtĂ« ndĂ«rprerĂ« qasja publike nĂ« API X509_CERT_AUX dhe X509_TRUST.
- Mbështetja për algoritmet GOST dhe STREEBOG është ndërprerë.
- ĂshtĂ« zgjeruar mbĂ«shtetja pĂ«r mekanizmin CET (Control-flow Enforcement Technology), i pĂ«rdorur pĂ«r mbrojtje nga ekzekutimi i eksploitĂ«ve tĂ« ndĂ«rtuar me teknika tĂ« programimit tĂ« orientuar drejt kthimit (ROP, Return-Oriented Programming).
Burimi: opennet.ru
