Liberazione di librerie criptografiche OpenSSL 3.4, LibreSSL 4.0, Botan 3.6 è Rustls 0.23.15

Diversi versioni novi di biblioteche criptografiche sò state publicate:

Liberazione di a libreria OpenSSL 3.4.0 cù l'implementazione di i protokolli SSL / TLS è diversi algoritmi di criptografia. OpenSSL 3.4 serà supportatu finu à uttrovi 2025. U supportu per i rami precedenti di OpenSSL 3.3, 3.2, 3.1 è 3.0 LTS continuerà finu à aprile 2026, nuvembre 2025, marzu 2025 è settembre 2026, rispettivamente. U codice di u prugettu hè distribuitu sottu a licenza Apache 2.0. Innuvazioni principali:

  • Aghjunghje un supportu di suite di criptu per TLSv1.3, limitatu à i cuntrolli di integrità di dati (RFC 9150) è inclusi l'algoritmi TLS_SHA256_SHA256 è TLS_SHA384_SHA384.
  • Aggiunta l'abilità opzionale di utilizà una fonte d'entropia addiziale basata nantu à jitter in u generatore di numeri pseudoaleatoriu, implementatu cù a biblioteca di jitterentropy. L'entropia hè generata da a misurazione di e diffirenzii in u tempu di re-execuzione di un certu settore di struzzioni nantu à u CPU, chì depende di parechji fatturi internu è hè imprevisible senza cuntrollu fisicu di u CPU.
  • Aghjunghje un supportu iniziale per i certificati d'autorizazione (AC - Attribute Certificate, RFC 5755), chì includenu infurmazioni nantu à i diritti d'accessu, i puteri è l'attributi di u pruprietariu di u certificatu, chì certificanu a capacità di realizà certe azzioni. Per esempiu, un certificatu AC pò determinà u dirittu di cunnette à qualchì serviziu.
  • Aghjunghje supportu per l'estensioni X.509v3 ligati à i certificati d'autorizazione.
  • U fornitore FIPS implementa u supportu per l'API di l'indicatore FIPS 140-3, chì permette di determinà se una operazione particulare hè stata aduprata in un serviziu appruvatu o micca.
  • L'API BIO (Basic Input/Output) hà migliurà a trasfurmazioni di l'input Base64.
  • Aghjunghje supportu per a custruzzione di l'utilità openssl in u modu PIE (Position Independent Executable), chì permette l'usu di l'aleatoriu di u spaziu di indirizzu (ASLR).
  • Aghjunghje supportu per algoritmi di firma digitale cumminati direttamente estrattibili cum'è RSA-SHA2-256.
  • PKCS#12 aghjunghjenu supportu per PBMAC 1 (Codice d'autenticazione di messagiu basatu in password 1, RFC 9579).
  • L'opzioni "-not_before" è "-not_after" sò state aghjunte à l'utilità openssl per specificà esplicitamente l'iniziu è a fine di u certificatu.
  • Hè pussibule aduprà valori pre-calculati quandu inizializzanu algoritmi criptografici basati in curve ellittiche P-256.
  • E funzioni TS_VERIFY_CTX_set_* sò state dichjarate obsolete, rimpiazzate da e funzioni TS_VERIFY_CTX_set0_* cù semantica mejorata.
  • E funzioni SSL_SESSION_get_time (), SSL_SESSION_set_time () è SSL_CTX_flush_sessions () sò stati obsoleti è deve esse rimpiazzati da SSL_SESSION_get_time_ex (), SSL_SESSION_set_time_ex () è SSL_CTX_flush_sessions () chì eliminanu l'emissione (2038).
  • Supportu per u protocolu QIUC da parte, chì era previstu in OpenSSL 3.4 servitore rimandatu à u prossimu numeru.

Liberazione di u prughjettu LibreSSL 4.0.0, chì sviluppa una furchetta di OpenSSL, destinata à furnisce un livellu più altu di sicurità è un supportu di alta qualità per i protokolli SSL / TLS eliminendu funziunalità innecessarii, aghjunghjendu funzioni di sicurezza supplementari è purtendu una pulizia è un processu significativu. di a basa di codice. Un cambiamentu significativu in u numeru di versione hè dovutu à l'usu di numerazione decimale (dopu à 3.9 vene a versione 4.0). I cambiamenti più evidenti:

  • Aggiuntu supportu iniziale per a custruzzione cù Emscripten, un compilatore C/C++ à WebAssembly.
  • Una opzione CRLfile hè stata aghjunta à u cumandimu "openssl cms" per specificà listi di revocazione di certificati supplementari (CRL) per esse utilizati durante a verificazione.
  • U supportu per a piattaforma mips32 hè stata interrotta.
  • Avemu cessatu di furnisce l'accessu à e funzioni scritte in lingua assemblea per mezu di l'API publica (tali funzioni sò avà furnite solu per e funzioni wrapper in C). L'implementazioni in linguaggiu di assemblea di i cifri legacy per l'architetture legacy sò state eliminate.
  • U codice eliminatu per a cache di validità di certificatu, chì hè diventatu senza significatu dopu l'ottimisazione di u rendiment.
  • Implementazione mejorata di estensioni X.509v3, metudi X.509v3 unificati, è pulizziari API X.509v3-related.
  • L'implementazione di u tipu CRYPTO_EX_DATA hè stata completamente riscritta.
  • In libcrypto, e funzioni atoi() è strtol() sò state rimpiazzate da strtonum().
  • U file header crypto_arch.h hè statu aghjuntu, chì cuntene codice specificu per l'architetture hardware.
  • L'implementazione di l'algoritmu DES hè stata riprogettata è ottimizzata.
  • Eliminati i fugliali d'intestazione pem2.h, ssl2.h, ssl23.h è ui_compat.h.
  • Eliminatu u supportu per l'algoritmu di hashing Whirlpool.
  • E funzioni HMAC_Init(), OPENSSL_load_builtin_modules(), X509_REQ_{get,set}_extension_nids(), X509_check_trust() sò state eliminate.
  • I tipi PEM_USER, PEM_CTX, COMP_CTX, COMP_METHOD, X509_CRL_METHOD, STORE, STORE_METHOD è SSL_AEAD_CTX sò stati eliminati.
  • Aghjunghjite SSL_CTX_set1_cert_store() è SSL_CIPHER_get_handshake_digest() funzioni à libssl.

A biblioteca di criptografia Botan 3.6.0 hè avà dispunibule per l'usu in u prughjettu NeoPG, una furchetta di GnuPG 2. A biblioteca furnisce una grande cullizzioni di primitivi pronti usati in u protocolu TLS, certificati X.509, cifri AEAD, moduli TPM. , PKCS#11, hashing di password è criptografia post-quantum (firme basate in hash è accordu chjave basatu in McEliece). A biblioteca hè scritta in C++ è hè distribuita sottu a licenza BSD. In a nova versione:

  • Una nova biblioteca hè stata integrata cù criptoalgoritmi basati in curve ellittiche, operazioni basate in curve standard in quale sò realizati 2-3 volte più veloce. Una nova API per u travagliu di livellu bassu cù curve ellittiche hè ancu pruposta.
  • Supportu aghjuntu per l'algoritmi di crittografia post-quantum NIST recentemente standardizzati: FIPS 203 ML-KEM (Kyber), FIPS 204 ML-DSA (Dilithium) è FIPS 205 SLH-DSA (SPHINCS+).
  • Supportu aghjuntu per i chips TPM2.
  • L'usu allargatu di l'informatica in tempu constantu per prutegge contra l'attacchi di i canali laterali.
  • Aggiunta generazione di entropia addiziale utilizendu a biblioteca di jitterentropia.
  • Prestazione mejorata per u processu di dati in formatu esadecimale è codificazione base64.
  • Aghjunghje supportu per l'estensioni di processore AVX2-VAES è GFNI-AVX2.
  • A rilevazione aghjunta di e capacità di CPU armv7, aarch64 è ppc64 nantu à a piattaforma OpenBSD.
  • Opzione di assemblea aghjunta per disattivà tutti l'inserzioni in linea di l'assembler.

Liberazione di u prughjettu Rustls 0.23.15, chì sviluppa implementazioni di cliente è servitore di i protokolli TLS1.2 è TLS1.3 per prughjetti in lingua Rust. Rustls ùn furnisce micca a so propria implementazione di primitive criptografiche, ma usa fornitori di funzioni criptografiche pluggable (ECDSA, Ed25519, RSA, ChaCha20-Poly1305, AES128-GCM è AES256-GCM algoritmi sò supportati). Per automaticamente, Rustls usa un fornitore di criptu basatu nantu à a libreria aws-lc-rs, chì hè sviluppata da Amazon è hè basatu annantu à u codice AWS-LC C++, una furchetta di u prughjettu BoringSSL (una furchetta di OpenSSL mantinuta da Google). A biblioteca di l'anellu, parzialmente basata in BoringSSL è cumminendu codice di assemblea, C++ è Rust, pò ancu esse usata cum'è fornitore di criptu.

A nova versione hè notevule per i so ottimisazioni di rendiment significativu. Utilizendu i primitivi criptografici aws-lc-rs, Rustls si dice chì avà supera OpenSSL è BoringSSL in benchmarks chì misuranu u throughput è a velocità di negoziazione / ripresa di cunnessione. Liberazione di librerie criptografiche OpenSSL 3.4, LibreSSL 4.0, Botan 3.6 è Rustls 0.23.15 Liberazione di librerie criptografiche OpenSSL 3.4, LibreSSL 4.0, Botan 3.6 è Rustls 0.23.15

Source: opennet.ru

Add a comment