OpenSSL 4.0 betritt die Bühne mit radikalen Änderungen in der TLS-Sicherheit und der Post-Quanten-Kryptographie.

  • OpenSSL 4.0 führt Encrypted Client Hello ein, um die Vertraulichkeit des TLS-Datenverkehrs zu verbessern.
  • SSLv3, SSLv2 Client Hello, das Engine-System und mehrere veraltete APIs werden entfernt.
  • Neue Post-Quanten-Kryptographie-Funktionen und wichtige RFC-Implementierung
  • Änderungen an APIs, der X.509-Verifizierung und dem Kompilierungsprozess erfordern eine Codeanpassung.

OpenSSL 4.0

Die Ankunft de OpenSSL 4.0 markiert einen bedeutenden Durchbruch. Dieses große Versions-Upgrade ist nicht nur symbolisch: Es bringt inkompatible Änderungen, neue Funktionen mit Fokus auf Datenschutz und zukünftige Sicherheit sowie die Abschaffung seit Jahren veralteter Technologien mit sich. Diese Referenzbibliothek für SSL/TLS und Kryptografie findet breite Anwendung in Webservern, Unternehmensanwendungen und Netzwerkgeräten.

Für Systemadministratoren, Cybersicherheitsmanager und Entwickler stellt diese Version eine Wendepunkt bei der Modernisierung der InfrastrukturEs werden Verbesserungen wie Encrypted Client Hello und erweiterte Unterstützung für Post-Quanten-Kryptographie eingeführt, gleichzeitig wird aber auch die Unterstützung für ältere Protokolle, das Engine-System und mehrere APIs entfernt, was eine Überprüfung des Codes und der Kompilierungsprozesse vor dem Wechsel erforderlich macht.

Wichtigste Neuerungen von OpenSSL 4.0

OpenSSL 4.0 wird als bedeutendes Update präsentiert, mit einem klaren Fokus auf Datenschutz stärken, Codebasis modernisieren und Altlasten beseitigenDas Projektteam hat die Gelegenheit genutzt, um inkompatible Änderungen einzuführen, die Unterstützung für Randplattformen zu entfernen und das Standardverhalten mehrerer interner Komponenten anzupassen.

Zu den sichtbarsten Änderungen zählen die Einbindung von Encrypted Client Hello (ECH), die Erweiterung des Algorithmenkatalogs für Post-Quanten-Umgebungen, die Abschaffung und Beseitigung historischer Funktionen bei der Handhabung von X.509-Zertifikaten und -Zeiten sowie die Überprüfung von Kompilierungsoptionen, Skripten und Build-Zielen in verschiedenen Betriebssystemen.

Verbesserter Datenschutz durch verschlüsseltes Client Hello (ECH)

Eine der meistdiskutierten Neuerungen ist die Integration von Verschlüsseltes Client Hello gemäß RFC 9849ECH ermöglicht die Verschlüsselung der Client-Hello-Nachricht von TLS, sodass ein passiver Beobachter im Netzwerk nicht auf die Server Name Indication (SNI) zugreifen kann, also auf den Namen des Servers, mit dem sich der Client verbindet.

Diese Änderung ist besonders relevant dort, wo Datenschutz und Verbindungsmetadaten Es gewinnt zunehmend an Bedeutung im regulatorischen Rahmen und in den Richtlinien vieler Organisationen. Die Einführung von ECH trägt dazu bei, die Möglichkeiten Dritter zur Profilerstellung des TLS-Datenverkehrs durch die Identifizierung spezifischer, von Nutzern und Unternehmen aufgerufener Domains einzuschränken.

Mit OpenSSL 4.0 werden Entwickler, die ECH implementieren, in der Lage sein, Sensible Informationen schon beim ersten Handschlag verbergenDies erschwert die passive Überwachung und erhöht die Vertraulichkeit der Verbindungen, sowohl im öffentlichen Dienst als auch in Unternehmensumgebungen, in denen die Einhaltung gesetzlicher Vorschriften und der Datenschutz Priorität haben.

Auf Wiedersehen SSLv3, SSLv2 Client Hello und das Engine-System

Die neue Version bricht definitiv mit einem Teil der bisherigen Vorgehensweise des Protokolls, da Entfernt die Unterstützung für SSLv3SSLv3, ein Standard, der jahrelang als unsicher galt und seit OpenSSL Version 1.1.0 standardmäßig deaktiviert war, wird nun schrittweise abgeschafft. Daher müssen alle Anwendungen, die noch auf SSLv3 basieren, auf moderne TLS-Standards umsteigen, um mit der Version 4.0 kompatibel zu sein.

Das verschwindet auch SSLv2 Client Hello-UnterstützungDiese Funktion, die aus Gründen der historischen Kompatibilität beibehalten wurde, aber den aktuellen Sicherheitsstandards völlig widersprach, wird nun entfernt. Ihre Entfernung trägt dazu bei, die Angriffsfläche zu verringern und den Code zu vereinfachen, wodurch OpenSSL den heutigen Anforderungen an eine robuste Verschlüsselung in der Infrastruktur entspricht.

Eine weitere strukturelle Veränderung ist die vollständige Beseitigung von Die Engine-API wird zur Integration externer kryptografischer Hardware und Software verwendet.Ab OpenSSL 4.0 ist die Kompilierungsoption ohne Engine die einzige verfügbare, und das Makro OPENSSL_NO_ENGINE ist immer vorhanden. Dies erfordert eine Überprüfung von Implementierungen, die benutzerdefinierte Engines für Aufgaben wie kryptografische Beschleunigung oder die Verwendung von HSM-Modulen nutzten.

Gleichzeitig werden aber auch Kürzungen vorgenommen. Benutzerdefinierte Methoden, die von EVP_CIPHER, EVP_MD, EVP_PKEY und EVP_PKEY_ASN1 geerbt wurdenZusammen mit veralteten SSL/TLS-Versionierungsmethoden und Fehlerzustandsverwaltungsfunktionen (wie ERR_get_state() und seinen Varianten zur Zustandsbereinigung) wird eine übersichtlichere API entwickelt, die besser den aktuellen Anforderungen entspricht.

Förderung der Post-Quanten-Kryptographie und neuer Algorithmen

Mit Blick auf die Zukunft verfolgt OpenSSL 4.0 seine Strategie weiter, um Vorbereitung auf Bedrohungen durch QuantencomputerDie Version führt neue hybride Kryptographie- und Digest-Funktionen ein, die darauf abzielen, den Schlüsselaustausch gegen potenzielle Angriffe in einem Post-Quanten-Szenario zu stärken.

Zu den neuen Funktionen gehört die Hybrid Key Exchange Group CurveSM2MLKEM768, das klassische Elemente mit Post-Quanten-Verfahren sowie dem ML-DSA-MU-Fingerprinting-Algorithmus und der cSHAKE-Funktion gemäß NIST SP 800-185 kombiniert. Diese Elemente erweitern die Möglichkeiten zur Entwicklung von Protokollen, die resistenter gegen zukünftige kryptanalytische Fortschritte sind.

Darüber hinaus umfasst das Projekt weitere Aspekte. Unterstützung für den über TLS 1.2 ausgehandelten FFDHE-Schlüsselaustausch.Dies entspricht den in RFC 7919 festgelegten Richtlinien. Dadurch können Implementierungen, die noch mit TLS 1.2 arbeiten, von verbesserten Diffie-Hellman-Parametern für endliche Gruppen profitieren, wodurch das Sicherheitsniveau in Szenarien erhöht wird, in denen ein sofortiges Upgrade auf TLS 1.3 nicht möglich ist.

API-Änderungen und Verhaltensweisen, die Integratoren betreffen

Für diejenigen, die Anwendungen pflegen, die eine Verbindung zu OpenSSL herstellen, führt Version 4.0 Folgendes ein: Direkte Änderungen an der API, die bestehende Builds beeinträchtigen könnenEine der wichtigsten Transformationen besteht darin, dass der Typ ASN1_STRING undurchsichtig wird, was den direkten Zugriff auf seine interne Struktur einschränkt und die Verwendung von High-Level-Funktionen erzwingt.

Viele Funktionen, insbesondere solche, die mit Die Verarbeitung von X.509-Zertifikaten beinhaltet nun const-Qualifizierer. In ihren Signaturen wird die Semantik der Unveränderlichkeit angepasst, was zu Änderungen im Code führt, der weniger strenge Annahmen getroffen hat. Dies kann Warnungen oder Kompilierungsfehler in Projekten auslösen, die die entsprechenden Definitionen nicht aktualisieren.

Im Bereich des Zeitmanagements gab es Als veraltet deklariert wurden Funktionen wie X509_cmp_time(), X509_cmp_current_time() und X509_cmp_timeframe().Die empfohlene Verwendung ist nun X509_check_certificate_times(), was eine Anpassung der Zertifikatsvalidierungsroutinen erfordert, die zuvor auf den alten Funktionen basierten.

Ein weiterer relevanter Punkt ist, dass libcrypto beendet die globale Bereinigung der zugewiesenen Daten. durch atexit(). Stattdessen wird OPENSSL_cleanup() je nach Konfiguration als globaler Destruktor ausgeführt oder standardmäßig nicht gestartet. Dies kann Anwendungen beeinträchtigen, die auf automatische Bereinigung beim Beenden des Prozesses angewiesen sind, und erfordert eine explizitere Verwaltung des Ressourcenlebenszyklus.

Darüber hinaus ist BIO_f_reliable() eine Funktion, die Es war seit Version 3.0 defekt und verschwindet nun spurlos.Projekte, die es noch verwenden, müssen die zugehörige Logik neu gestalten oder andere Grundbausteine ​​aus der Bibliothek verwenden, um ähnliche Anforderungen abzudecken.

Strengere Verfahren bei der Zertifikatsprüfung und Schlüsselableitung

OpenSSL 4.0 stärkt die Strenge Überprüfung von X.509-Zertifikaten, wenn X509_V_FLAG_X509_STRICT aktiviert ist.Wenn dieses Flag aktiviert ist, werden zusätzliche Prüfungen der AKID-Erweiterung (Authority Key Identifier) ​​durchgeführt, wodurch die Validierungskriterien verschärft und die Bibliothek an anspruchsvollere Sicherheitspraktiken angepasst wird.

Im Zuge der Überprüfung von Sperrlisten (CRL) fügt die neue Version Folgendes hinzu Zusätzliche Kontrollmechanismen sollen eine gründlichere Überprüfung widerrufener Zertifikate gewährleisten.Diese Änderungen wirken sich auf Umgebungen aus, in denen das PKI-Management besonders sensibel ist, wie z. B. öffentliche Verwaltungen, Banken oder große Unternehmen, die auf robuste Vertrauensketten angewiesen sind.

Sie werden auch vorgestellt Obligatorische Untergrenzen für die Verwendung von PKCS5_PBKDF2_HMAC bei Verwendung des FIPS-AnbietersMit dieser Anpassung sollen übermäßig schwache Konfigurationen bei der Schlüsselableitung aus Passwörtern vermieden werden, was in der Praxis die Verwendung minimal starker Parameter in Umgebungen erzwingt, in denen die Einhaltung der FIPS-Vorschriften erforderlich ist, was in kritischen Sektoren sehr häufig vorkommt.

Kompilierungseinstellungen, unterstützte Plattformen und Tools

Hinsichtlich Kompilierung und Plattformunterstützung unternimmt OpenSSL 4.0 Schritte in Richtung einer modernere und vereinfachte KonfigurationDas Projekt deaktiviert standardmäßig die Unterstützung für veraltete elliptische Kurven in TLS gemäß RFC 8422 sowie die Verwendung expliziter elliptischer Kurven. Konfigurationsoptionen stehen jedoch weiterhin zur Verfügung, falls diese aus Gründen der gelegentlichen Kompatibilität reaktiviert werden müssen.

Hinsichtlich der Bauziele war es Sie entfernen die Varianten darwin-i386 und darwin-ppc.Offiziell sind damit sehr alte Apple-Systeme auf Basis der i386- und PowerPC/PPC64-Architekturen ausgeschlossen. In der Praxis dürfte dies die meisten aktuellen Installationen nicht beeinträchtigen, da diese Plattformen ohnehin schon länger veraltet sind. Dennoch wird damit deren reguläre Unterstützung endgültig eingestellt.

Bezüglich der Tools wird das bisherige Skript entfernt. Die Generierung von Hash-Indizes für Zertifikate in Verzeichnissen ist nun die empfohlene Methode. Zusätzlich wurde für FIPS-Installationen die Option `-defer_tests` im Dienstprogramm `openssl fipsinstall` eingeführt. Diese ermöglicht das Verschieben bestimmter automatischer Tests und erleichtert so die Bereitstellung in Umgebungen mit kurzen Startzeiten.

Auf Windows-Systemen fügt das Update Folgendes hinzu Möglichkeit, zwischen statischer oder dynamischer Verknüpfung der Visual C++-Laufzeitumgebung zu wählenDiese Flexibilität ist nützlich für Entwickler und DevOps-Teams, die Anwendungen für verschiedene Vertriebsszenarien paketieren, da sie den Laufzeittyp je nach Kompatibilitätsanforderungen oder Größe der Binärdateien anpassen können.

Auswirkungen auf Organisationen und Entwickler

In einem Kontext, in dem ein Großteil der Internetinfrastruktur und kritischer Dienste auf OpenSSL basiert, stellt Version 4.0 eine Strategischer Wandel, der Planung erfordertÖffentliche Organisationen, Cloud-Anbieter, Finanzinstitute und Technologieunternehmen sollten die Auswirkungen von API-Änderungen und der Abschaffung von Protokollen sorgfältig prüfen, insbesondere auf veraltete Systeme oder schlecht gewartete Anwendungen.

Die Einbeziehung von ECH und die Stärkung der Post-Quanten-Kryptographie können als Möglichkeiten zur Erhöhung des StandardschutzniveausGleichzeitig erfordern sie jedoch gründliche Tests in Vorproduktionsumgebungen. In vielen Fällen ist eine enge Zusammenarbeit zwischen Entwicklungs-, Sicherheits- und Betriebsteams notwendig, um sicherzustellen, dass der Übergang keine Dienste beeinträchtigt oder Regressionen verursacht.

Für Open-Source-Projekte, die stark auf OpenSSL basieren, wird die Anpassung Folgendes beinhalten: Funktionssignaturen anpassen, Verwendung der nun undurchsichtigen Typen überprüfen und veraltete Komponenten wie X.509-Timing-Engines oder -Funktionen ersetzen. Der Vorteil besteht darin, dass diese Projekte nach der Aktualisierung von einer kryptografischen Grundlage profitieren, die besser mit aktuellen Standards übereinstimmt und weniger technische Schulden aufweist.

Insgesamt positioniert sich OpenSSL 4.0 als Version der Reinigung, Modernisierung und Vorbereitung für die mittlere und lange FristDies erfordert zwar einen Aufwand bei der Migration, bietet aber im Gegenzug deutliche Verbesserungen in Bezug auf Datenschutz, Sicherheit und interne Konsistenz der Bibliothek – Schlüsselaspekte, um die digitale Infrastruktur weiterhin auf soliden kryptografischen Grundlagen zu unterstützen.

OpenSSL 3.5
Verwandte Artikel:
OpenSSL 3.5: Neue Post-Quanten-Algorithmen und Verbesserungen an TLS und QUIC