OpenSSL 3.0.0 enthält eine Vielzahl wichtiger Änderungen und Verbesserungen

Nach drei Jahren Entwicklung und 19 Testversionen hat kürzlich die Veröffentlichung der neuen Version von OpenSSL 3.0.0 angekündigt welche hat mehr als 7500 Änderungen von 350 Entwicklern beigesteuert wurde und auch eine deutliche Änderung der Versionsnummer darstellt, die auf den Übergang zur traditionellen Nummerierung zurückzuführen ist.

Ab sofort ändert sich die erste Ziffer (Major) der Versionsnummer nur noch bei Kompatibilitätsverletzungen auf API / ABI-Ebene und die zweite (Minor) bei Funktionserweiterungen ohne Änderung der API / ABI. Korrektive Updates werden mit einer Änderung der dritten Stelle (Patch) ausgeliefert. Die Nummer 3.0.0 wurde unmittelbar nach 1.1.1 gewählt, um Kollisionen mit dem in Entwicklung befindlichen FIPS-Modul für OpenSSL mit der Nummer 2.x zu vermeiden.

Die zweite große Änderung für das Projekt war die Übergang von einer Doppellizenz (OpenSSL und SSLeay) zu einer Apache 2.0-Lizenz. Die zuvor verwendete native OpenSSL-Lizenz basierte auf der alten Apache 1.0-Lizenz und erforderte eine ausdrückliche Erwähnung von OpenSSL in Werbematerialien bei Verwendung der OpenSSL-Bibliotheken sowie einen besonderen Hinweis, wenn OpenSSL mit dem Produkt geliefert wurde.

Diese Anforderungen machten die vorherige Lizenz inkompatibel mit der GPL, was die Verwendung von OpenSSL in GPL-lizenzierten Projekten erschwerte. Um diese Inkompatibilität zu umgehen, wurden GPL-Projekte gezwungen, spezielle Lizenzvereinbarungen durchzusetzen, in denen der Haupttext der GPL um eine Klausel ergänzt wurde, die es der Anwendung ausdrücklich erlaubt, auf die OpenSSL-Bibliothek zu verlinken und zu erwähnen, dass die GPL nicht für die Bindung mit OpenSSL gilt .

Was ist neu in OpenSSL 3.0.0

Für den Teil der Neuheiten, die in OpenSSL 3.0.0 vorgestellt werden, können wir das finden ein neues FIPS-Modul wurde vorgeschlagen, dass umfasst die Implementierung kryptografischer Algorithmen die den Sicherheitsstandard FIPS 140-2 erfüllen (der Modulzertifizierungsprozess soll diesen Monat beginnen, und die FIPS 140-2-Zertifizierung wird nächstes Jahr erwartet). Das neue Modul ist viel einfacher zu bedienen und die Verbindung zu vielen Anwendungen wird nicht schwieriger sein, als die Konfigurationsdatei zu ändern. Standardmäßig ist FIPS deaktiviert und erfordert die Aktivierung der Option enable-fips.

In libcrypto wurde das Konzept der angebundenen Dienstanbieter umgesetzt Dies ersetzte das Konzept der Engines (die ENGINE-API war veraltet). Mithilfe von Anbietern können Sie Ihre eigenen Algorithmusimplementierungen für Vorgänge wie Verschlüsselung, Entschlüsselung, Schlüsselgenerierung, MAC-Berechnung, Erstellung und Überprüfung digitaler Signaturen hinzufügen.

Es wird auch hervorgehoben, dass zusätzliche Unterstützung für CMPDass Es kann verwendet werden, um Zertifikate vom CA-Server anzufordern, Zertifikate zu erneuern und Zertifikate zu widerrufen. Die Arbeit mit CMP übernimmt das neue Dienstprogramm openssl-cmp, das auch die Unterstützung für das CRMF-Format und die Übertragung von Anfragen über HTTP/HTTPS implementiert.

Auch Es wurde eine neue Programmierschnittstelle für die Schlüsselgenerierung vorgeschlagen: EVP_KDF (Key Derivation Function API), das das Hinzufügen neuer KDF- und PRF-Implementierungen vereinfacht. Die alte EVP_PKEY-API, über die die Algorithmen Scrypt, TLS1 PRF und HKDF verfügbar waren, wurde als mittlere Schicht neu gestaltet, die auf den APIs EVP_KDF und EVP_MAC implementiert ist.

Und bei der Umsetzung des Protokolls TLS bietet die Möglichkeit, den im Linux-Kernel integrierten TLS-Client und -Server zu verwenden um den Betrieb zu beschleunigen. Um die vom Linux-Kernel bereitgestellte TLS-Implementierung zu aktivieren, muss die Option „SSL_OP_ENABLE_KTLS“ oder die Einstellung „enable-ktls“ aktiviert sein.

Andererseits wird das erwähnt Ein erheblicher Teil der API wurde in die veraltete Kategorie verschoben: Die Verwendung veralteter Aufrufe in Ihrem Projektcode führt beim Kompilieren zu einer Warnung. Der Low-Level-API mit bestimmten Algorithmen verknüpft wurden offiziell für veraltet erklärt.

Offizielle Unterstützung in OpenSSL 3.0.0 wird jetzt nur für High-Level-EVP-APIs bereitgestellt, die aus bestimmten Arten von Algorithmen stammen (diese API umfasst beispielsweise die Funktionen EVP_EncryptInit_ex, EVP_EncryptUpdate und EVP_EncryptFinal). Veraltete APIs werden in einer der nächsten Hauptversionen entfernt. Implementierungen von Legacyalgorithmen wie MD2 und DES, die über die EVP-API verfügbar sind, wurden in ein separates "Legacy"-Modul verschoben, das standardmäßig deaktiviert ist.

Schließlich Wenn Sie mehr darüber wissen möchten, Sie können die Details überprüfen im folgenden Link.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.