
openssl openssl-4.0.2
Allzweck-TLS- und Kryptobibliothek
Willkommen beim OpenSSL-Projekt
OpenSSL ist ein robustes, kommerziell nutzbares, voll ausgestattetes Open-Source-Toolkit für die Protokolle Transport Layer Security (TLS, früher SSL), Datagram TLS (DTLS) und QUIC.
Die Protokollimplementierungen basieren auf einer starken, allgemein einsetzbaren kryptografischen Bibliothek, die auch eigenständig verwendet werden kann. Ebenfalls enthalten ist ein kryptografisches Modul, das gemäß den FIPS-Standards validiert wurde.
OpenSSL stammt von der SSLeay-Bibliothek ab, die von Eric A. Young und Tim J. Hudson entwickelt wurde.
Die offizielle Homepage des OpenSSL-Projekts ist www.openssl.org.
Inhaltsverzeichnis
- Übersicht
- Download
- Erstellen und Installieren
- Dokumentation
- Lizenz
- Unterstützung
- Mitwirken
- Rechtliches
Übersicht
Das OpenSSL-Toolkit umfasst:
-
libssl eine Implementierung aller TLS-Protokollversionen bis TLSv1.3 (RFC 8446), DTLS-Protokollversionen bis DTLSv1.2 (RFC 6347) und des QUIC Version 1 Protokolls (RFC 9000).
-
libcrypto eine starke, allgemein einsetzbare kryptografische Bibliothek. Sie bildet die Grundlage der TLS-Implementierung, kann aber auch unabhängig verwendet werden.
-
openssl das OpenSSL-Befehlszeilentool, ein Schweizer Taschenmesser für kryptografische Aufgaben, Tests und Analysen. Es kann verwendet werden für
- Erstellung von Schlüsselparametern
- Erstellung von X.509-Zertifikaten, CSRs und CRLs
- Berechnung von Nachrichtendigesten
- Verschlüsselung und Entschlüsselung
- SSL/TLS/DTLS sowie Client- und Server-Tests
- QUIC-Client-Tests
- Verarbeitung von signierten oder verschlüsselten S/MIME-E-Mails
- und mehr...
Download
Für den Produktionseinsatz
Quellcode-Tarballs der offiziellen Releases können von openssl-library.org/source/ heruntergeladen werden. Das OpenSSL-Projekt vertreibt das Toolkit nicht in binärer Form.
Allerdings sind für eine Vielzahl von Betriebssystemen vorkompilierte Versionen des OpenSSL-Toolkits verfügbar. Insbesondere unter Linux und anderen Unix-Betriebssystemen wird normalerweise empfohlen, gegen die vorkompilierten Shared Libraries zu linken, die vom Distributor oder Anbieter bereitgestellt werden.
Wir pflegen auch eine Liste von Drittanbietern, die OpenSSL-Binärdateien für verschiedene Betriebssysteme (einschließlich Windows) erstellen, auf der Binaries-Seite unseres Wikis.
Für Tests und Entwicklung
Obwohl Tests und Entwicklung theoretisch auch mit den Quellcode-Tarballs durchgeführt werden könnten, gibt Ihnen eine lokale Kopie des Git-Repositorys mit der gesamten Projekthistorie viel mehr Einblick in die Codebasis.
Das Haupt-OpenSSL-Git-Repository ist privat. Es gibt ein öffentliches GitHub-Mirror davon unter github.com/openssl/openssl, das bei jedem Commit automatisch vom ersteren aktualisiert wird.
Eine lokale Kopie des Git-Repositorys kann durch Klonen des GitHub-Mirrors mit folgendem Befehl bezogen werden:
git clone https://github.com/openssl/openssl.git
Wenn Sie beabsichtigen, zu OpenSSL beizutragen, entweder um Fehler zu beheben oder neue Funktionen beizusteuern, müssen Sie das GitHub-Mirror forken und stattdessen Ihren öffentlichen Fork klonen.
git clone https://github.com/yourname/openssl.git
Dies ist notwendig, da die gesamte Entwicklung von OpenSSL heutzutage über GitHub-Pull-Requests erfolgt. Weitere Details finden Sie im Abschnitt Mitwirken.
Erstellen und Installieren
Nachdem Sie den Quellcode bezogen haben, werfen Sie einen Blick auf die Datei INSTALL für detaillierte Anweisungen zum Erstellen und Installieren von OpenSSL. Für einige Plattformen werden die Installationsanweisungen durch ein plattformspezifisches Dokument ergänzt.
- Hinweise für UNIX-ähnliche Plattformen
- Hinweise für Android-Plattformen
- Hinweise für Windows-Plattformen
- Hinweise für die DOS-Plattform mit DJGPP
- Hinweise für die OpenVMS-Plattform
- Hinweise zu Perl
- Hinweise zu Valgrind
Spezifische Hinweise zum Upgrade auf OpenSSL 3.x von früheren Versionen finden Sie in der Manual-Seite ossl-guide-migration(7ossl).
Dokumentation
README-Dateien
Es gibt einige README.md-Dateien auf der obersten Ebene der Quellverteilung, die zusätzliche Informationen zu bestimmten Themen enthalten.
- Informationen über die Implementierung des OpenSSL-QUIC-Protokolls
- Informationen über die OpenSSL-Provider-Architektur
- Informationen über die Verwendung des OpenSSL-FIPS-validierten Moduls
Der OpenSSL-Leitfaden
Es gibt einige Tutorial- und Einführungsseiten zu einigen wichtigen OpenSSL-Themen im OpenSSL Guide.
Manual-Seiten
Die Manual-Seiten für den Master-Branch und alle aktuellen stabilen Releases sind online verfügbar.
Demos
Es gibt zahlreiche Quellcode-Demos zur Verwendung verschiedener OpenSSL-Funktionen im demos-Unterordner.
Wiki
Es gibt ein GitHub Wiki, das derzeit nicht sehr aktiv ist.
Lizenz
OpenSSL ist unter der Apache License 2.0 lizenziert, was bedeutet, dass Sie es für kommerzielle und nicht-kommerzielle Zwecke frei erhalten und nutzen können, solange Sie die Bedingungen erfüllen.
Siehe die Datei LICENSE.txt für weitere Details.
Unterstützung
Es gibt verschiedene Möglichkeiten, Kontakt aufzunehmen. Der richtige Kanal hängt von Ihrem Anliegen ab. Siehe die Datei SUPPORT für weitere Details.
Mitwirken
Wenn Sie interessiert und bereit sind, zum OpenSSL-Projekt beizutragen, werfen Sie bitte einen Blick auf die Datei CONTRIBUTING.
Rechtliches
Eine Reihe von Nationen schränkt die Nutzung oder den Export von Kryptografie ein. Wenn Sie möglicherweise solchen Beschränkungen unterliegen, sollten Sie rechtlichen Rat einholen, bevor Sie versuchen, kryptografischen Code zu entwickeln oder zu vertreiben.
Urheberrecht
Copyright (c) 1998-2026 The OpenSSL Project Authors
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
Alle Rechte vorbehalten.