Janë publikuar disa versione të reja të bibliotekave kriptografike:
Lëshimi i bibliotekës OpenSSL 3.4.0 me implementimin e protokolleve SSL/TLS dhe algoritmeve të ndryshëm të enkriptimit. Mbështetje për OpenSSL 3.4 do të ofrohet deri në tetor 2025. Mbështetje për degët e kaluara OpenSSL 3.3, 3.2, 3.1 dhe 3.0 LTS do të vazhdojë deri në prill 2026, nëntor 2025, mars 2025 dhe shtator 2026 përkatësisht. Kodi i projektit shpërndahet nën licencën Apache 2.0. Risi kryesore:
- Shtuar mbështetje për grupin e cipher për TLSv1.3, të kufizuar nga funksionalitetet e verifikimit të integritetit të të dhënave (RFC 9150) dhe duke përfshirë algoritmet TLS_SHA256_SHA256 dhe TLS_SHA384_SHA384.
- Shtuar mundësinë opsionale të përdorimit të një burimi shtesë të entropisë në gjeneratorin e numrave të rastësishëm bazuar në jitter, i realizuar përmes bibliotekës jitterentropy. Formimi i entropisë bëhet duke matur dallimet në kohën e ekzekutimit të përsëritur të një grupi të caktuar instruksionesh në CPU, që varet nga shumë faktorë të brendshëm dhe është i paparashikueshëm pa kontroll fizik mbi CPU.
- Shtuar mbĂ«shtetje fillestare pĂ«r certifikatat e autorizimit (AC â CertifikatĂ« Atributi, RFC 5755), tĂ« cilat pĂ«rmbajnĂ« informacion mbi tĂ« drejtat e aksesit, autorizimet dhe atributet e pronarit tĂ« certifikatĂ«s, qĂ« vĂ«rtetojnĂ« mundĂ«sinĂ« e kryerjes sĂ« veprimeve tĂ« caktuara. PĂ«r shembull, njĂ« certifikat AC mund tĂ« pĂ«rcaktojĂ« tĂ« drejtĂ«n e lidhjes me njĂ« shĂ«rbim tĂ« caktuar.
- Shtuar mbështetje për zgjerimet X.509v3, të lidhura me certifikatat e autorizimit.
- Në ofruesin FIPS është implementuar mbështetje për API-në FIPS 140-3 Indicator, që lejon të përcaktohet nëse operacioni i caktuar është kryer në një shërbim të miratuar apo jo.
- Në API-në BIO (Input/Output Basic) është përmirësuar përpunimi i të dhënave në formatin Base64.
- Shtuar mbështetje për ndërtimin e utilitarit openssl në modin PIE (Position Independent Executable), që lejon përdorimin e randomizimit të hapësirës së adresës (ASLR).
- Shtuar mbështetje për algoritmet e kombinuara të nënshkrimit digjital që mund të nxirren drejtpërdrejt, si RSA-SHA2-256.
- Në PKCS#12 është shtuar mbështetje për PBMAC 1 (Password-Based Message Authentication Code 1, RFC 9579).
- NĂ« utilitarin openssl janĂ« shtuar opsionet â-not_beforeâ dhe â-not_afterâ pĂ«r tĂ« pĂ«rcaktuar qartĂ« kohĂ«n fillestare dhe pĂ«rfundimtare tĂ« vlefshmĂ«risĂ« sĂ« certifikatĂ«s.
- ĂshtĂ« mundĂ«suar pĂ«rdorimi i vlerave tĂ« llogaritura paraprakisht gjatĂ« inicializimit tĂ« algoritmeve kriptografikĂ« tĂ« bazuar nĂ« kthinat eliptike P-256.
- Janë shpallur të vjetra funksionet TS_VERIFY_CTX_set_*, për të cilat janë zëvendësuar me funksionet TS_VERIFY_CTX_set0_* me semantikë të përmirësuar.
- Janë shpallur të vjetra funksionet SSL_SESSION_get_time(), SSL_SESSION_set_time() dhe SSL_CTX_flush_sessions(), përmes të cilave duhet të përdoren SSL_SESSION_get_time_ex(), SSL_SESSION_set_time_ex() dhe SSL_CTX_flush_sessions_ex(), të lira nga problemi i vitit 2038.
- Mbështetje e pritur në OpenSSL 3.4 për protokollin QIUC nga ana serverë është shtyrë deri në versionin tjetër.
Lëshimi i projektit LibreSSL 4.0.0, një fork i OpenSSL, i fokusuar në ofrimin e një niveli më të lartë sigurie dhe mbështetje cilësore për protokollet SSL/TLS me heqjen e funksionalitetit të tepërt, shtimin e mjeteve të reja mbrojtëse dhe një pastrim të konsiderueshëm të kodit. Ndryshimi i dukshëm i numrit të versionit është i lidhur me përdorimin e numeracionit dekash (pas 3.9 vjen versioni 4.0). Ndryshimet më të dukshme:
- ĂshtĂ« shtuar mbĂ«shtetje fillestare pĂ«r ndĂ«rtimin duke pĂ«rdorur Emscripten, njĂ« kompjuter nga C/C++ nĂ« WebAssembly.
- Opsioni CRLfile është shtuar në komandën "openssl cms" për të treguar lista shtesë të çertifikatave të tërhequra (CRL), të cilat do të përdoren gjatë verifikimit.
- ĂshtĂ« ndalur mbĂ«shtetje pĂ«r platformĂ«n mips32.
- ĂshtĂ« ndaluar aksesin nĂ« funksionet e shkruara nĂ« gjuhĂ«n assembler, pĂ«rmes API-sĂ« publike (funksionet e tilla tani ofrohen vetĂ«m pĂ«rmes funksioneve tĂ« lidhjes nĂ« gjuhĂ«n C). JanĂ« hequr implementimet assembler tĂ« algoritmeve tĂ« vjetruar pĂ«r arkitekturĂ«n e vjetruar.
- ĂshtĂ« hequr kodi pĂ«r keĆĄimin e vlefshmĂ«risĂ« sĂ« çertifikatave, i cili ka humbur kuptimin pas optimizimit tĂ« performancĂ«s.
- ĂshtĂ« pĂ«rmirĂ«suar implementimi i zgjerimeve X.509v3, janĂ« unifikuar metodat X.509v3 dhe Ă«shtĂ« bĂ«rĂ« pastrimi i API-ve tĂ« lidhura me X.509v3.
- Implementimi i tipit CRYPTO_EX_DATA është shkruar plotësisht nga e para.
- Në libcrypto, funksionet atoi() dhe strtol() janë zëvendësuar me strtonum().
- ĂshtĂ« shtuar skedari header crypto_arch.h, nĂ« tĂ« cilin Ă«shtĂ« nxjerrĂ« kodi, specifik pĂ«r arkitekturĂ«n harduerike.
- ĂshtĂ« riparuar dhe optimizuar implementimi i algoritmit DES.
- Janë hequr skedarët header pem2.h, ssl2.h, ssl23.h dhe ui_compat.h.
- Kjo mbështetje për algoritmin e hashimit Whirlpool është hequr.
- Janë hequr funksionet HMAC_Init(), OPENSSL_load_builtin_modules(), X509_REQ_{get,set}_extension_nids(), X509_check_trust().
- Janë fshirë llojet PEM_USER, PEM_CTX, COMP_CTX, COMP_METHOD, X509_CRL_METHOD, STORE, STORE_METHOD dhe SSL_AEAD_CTX.
- Janë shtuar funksionet SSL_CTX_set1_cert_store() dhe SSL_CIPHER_get_handshake_digest() në libssl.
ĂshtĂ« lĂ«shuar versioni i bibliotekĂ«s kriptografike Botan 3.6.0, e pĂ«rdorur nĂ« projektin NeoPG, fork i GnuPG 2. Biblioteka ofron njĂ« koleksion tĂ« gjerĂ« primitivash tĂ« gatshĂ«m tĂ« pĂ«rdorur nĂ« protokollin TLS, certifikatat X.509, enkriptime AEAD, modulĂ«t TPM, PKCS#11, hashimin e fjalĂ«kalimeve dhe kriptografinĂ« post-kvantike (nĂ«nshkrime tĂ« bazuara nĂ« hash dhe shkĂ«mbim çelesh tĂ« bazuar nĂ« McEliece). Biblioteka Ă«shtĂ« shkruar nĂ« gjuhĂ«n C++ dhe ofrohet nĂ«n licencĂ«n BSD. NĂ« versionin e ri:
- ĂshtĂ« integruar njĂ« bibliotekĂ« e re me algoritma kriptografikĂ« bazuar nĂ« kurba eliptike, operacionet mbi kurbat standarde realizohen 2-3 herĂ« mĂ« shpejt. Po ashtu, Ă«shtĂ« ofruar njĂ« API i ri pĂ«r punĂ« tĂ« nivelit tĂ« ulĂ«t me kurba eliptike.
- Janë shtuar mbështetje për algoritmet e enkriptimit post-kvant që janë standardizuar së fundmi në NIST: FIPS 203 ML-KEM (Kyber), FIPS 204 ML-DSA (Dilithium) dhe FIPS 205 SLH-DSA (SPHINCS+).
- Janë shtuar mbështetje për çipet TPM2.
- ĂshtĂ« zgjeruar pĂ«rdorimi i llogaritjeve me kohĂ« tĂ« qĂ«ndrueshme pĂ«r tĂ« mbrojtur nga sulmet pĂ«rmes kanaleve anĂ«sore.
- Janë shtuar gjenerimi i entropisë shtesë përmes bibliotekës jitterentropy.
- Janë rritur performancat e përpunimit të të dhënave në formatin heksadekor dhe kodimin base64.
- Janë shtuar mbështetje për zgjerimet e procesorëve AVX2-VAES dhe GFNI-AVX2.
- Janë shtuar përcaktimi i mundësive të CPU armv7, aarch64 dhe ppc64 në platformën OpenBSD.
- Janë shtuar opsione ndërtimi për ndalimin e të gjitha futjeve inline të assembler-it.
Lëshimi i projektit Rustls 0.23.15, i cili zhvillon implementimin klient-server të protokolleve TLS1.2 dhe TLS1.3 për projektet në gjuhën Rust. Rustls nuk ofron implementimin e tij të primitivave kriptografike, por përdor ofrues të tjerë të funksioneve kriptografike (mbështetet algoritmi ECDSA, Ed25519, RSA, ChaCha20-Poly1305, AES128-GCM dhe AES256-GCM). Standardisht, Rustls përdor ofruesin e kriptomarrjes bazuar në bibliotekën aws-lc-rs, e zhvilluar nga kompania Amazon dhe e bazuar në kodin C++ të AWS-LC, e cila është një degë nga projekti BoringSSL (mbështetur nga Google si fork i OpenSSL). Gjithashtu, biblioteka ring, e cila është gjysmë e bazuar në BoringSSL dhe kombinon kodin në assembler, C++ dhe Rust, mund të përdoret si ofrues kriptomarrjeje.
Versioni e reja janë të njohura për optimizimet e rëndësishme të performancës. Thuhet se duke përdorur kriptoprimitivat, biblioteka aws-lc-rs Rustls tani tejkalon bibliotekat OpenSSL dhe BoringSSL në testet që matnin kapacitetin dhe shpejtësinë e negociatës/rivendosjes së lidhjes.

Burimi: opennet.ru
