Na acht maanden ontwikkeling is de release van de OpenSSL 3.2.0-bibliotheek met implementatie van SSL/TLS-protocollen en verschillende versleutelingsalgoritmen vormgegeven. De ondersteuning voor OpenSSL 3.2 zal plaatsvinden tot 23 november 2025. De steun voor de vorige versies OpenSSL 3.1 en 3.0 LTS zal doorgaan tot maart 2025 en september 2026 respectievelijk. De ondersteuning voor versie 1.1.1 is gestopt in september van dit jaar. De broncode van het project wordt verspreid onder de Apache 2.0-licentie.
Belangrijkste vernieuwingen in OpenSSL 3.2.0:
- Er is klantondersteuning toegevoegd voor het QUIC-protocol (RFC 9000), dat wordt gebruikt als transport in het HTTP/3-protocol. De implementatie omvat onder andere de mogelijkheid om meerdere streams via één verbinding te verzenden. Componenten voor het gebruik van QUIC in servers zullen worden opgenomen in de release van OpenSSL 3.3, die uiterlijk op 30 april 2024 zal worden uitgebracht.
QUIC is een uitbreiding bovenop het UDP-protocol, dat multiplexing van verschillende verbindingen ondersteunt en versleutelingsmethoden biedt die overeenkomen met TLS/SSL. Het protocol werd in 2013 ontwikkeld door Google als alternatief voor de combinatie TCP+TLS voor het web, waarmee problemen met lange opstarttijden en onderhandelingen over verbindingen in TCP worden opgelost en vertragingen door pakketverlies tijdens gegevensoverdracht worden geëlimineerd.
- In TLS is ondersteuning voor een extensie voor het comprimeren van certificaten tijdens de onderhandelingsfase van verbindingen gerealiseerd (RFC 8879), die het opzetten van een verbinding versnelt omdat een groot deel van het verkeer in de onderhandelingsfase gaat naar het verzenden van certificaatgegevens. Compressie met behulp van de zlib-, zstd- en Brotli-bibliotheken wordt ondersteund.
- Ondersteuning is toegevoegd voor de deterministische variant van digitale handtekeningen ECDSA (Deterministic ECDSA, RFC 6979), waarbij in plaats van een willekeurige sequentie bij het genereren van de handtekening een HMAC-SHA256-hash van de privésleutel en de tekst van het te ondertekenen bericht wordt gebruikt. Dit zorgt ervoor dat altijd dezelfde handtekening wordt verkregen bij verschillende ondertekeningsoperaties, maar voorkomt dat gegevens uitlekken die gebruikt kunnen worden om de privésleutel te achterhalen (de privésleutel kan worden achterhaald als er ten minste twee handtekeningen voor verschillende gegevens zijn gemaakt met behulp van een herhalende willekeurige sequentie).
- Ondersteuning is toegevoegd voor geavanceerde varianten van digitale handtekeningen met openbare sleutels Ed25519 en Ed448: Ed25519ctx, Ed25519ph en Ed448ph (RFC 8032).
- Ondersteuning voor de versleuteling modus AES-GCM-SIV (RFC 8452) is toegevoegd, die de hoge prestaties van de GCM-modus (Galois/Counter Mode) combineert met weerstand tegen lekkage bij hergebruik van de willekeurige nonce-code.
- De functie voor het genereren van de Argon2-sleutel (RFC 9106) is geïmplementeerd, die in 2015 de wedstrijd voor wachtwoord-hashfuncties heeft gewonnen. De mogelijkheid om threadpools te gebruiken is toegevoegd.
- Ondersteuning voor hybride versleuteling op basis van het HPKE-mechanisme (Hybrid Public Key Encryption, RFC 9180) is toegevoegd, dat de eenvoud van sleuteloverdracht bij openbare sleutelversleuteling combineert met de hoge prestaties van symmetrische versleuteling (gegevens worden versleuteld met een snelle symmetrische sleutel, terwijl de sleutel zelf wordt versleuteld met een trage asymmetrische methode).
- In TLS is de mogelijkheid toegevoegd om 'ruwe' (raw) openbare sleutels te gebruiken (RFC 7250).
- Ondersteuning voor het snelle openen van TCP-verbindingen (TFO — TCP Fast Open, RFC 7413) is toegevoegd, waardoor het aantal stappen voor het instellen van een verbinding kan worden verminderd door de eerste en tweede stap van het klassieke 3-fasen verbindingsonderhandelingsproces in één verzoek te combineren, en gegevens kunnen worden verzonden in de beginfase van het opzetten van de verbinding.
- In TLS is ondersteuning voor uitbreidbare digitale handtekeningschema's geïmplementeerd, waarmee externe implementaties van algoritmen kunnen worden gebruikt, bijvoorbeeld voor het gebruik van algoritmen die bestand zijn tegen brute force-aanvallen bij kwantumcomputers binnen TLS.
- In TLS 1.3 is ondersteuning voor beveiligde elliptische curves van Brainpool toegevoegd.
- Ondersteuning voor de SM4-XTS processorinstructies is toegevoegd.
- Op het Windows-platform is de mogelijkheid geïmplementeerd om het systeemopslag voor rootcertificaten te gebruiken (standaard uitgeschakeld). Voor toegang tot de certificaten in de Windows-opslag is de URI 'org.openssl.winstore://' voorgesteld.
Bron: opennet.ru
