Signieren ·
Verifizieren ·
PKI ·
X.509 ·
Zertifikate ·
OpenSSL
Digitale Signaturen gewährleisten Authentizität, Integrität und Verbindlichkeit von digitalen Dokumenten. Sie sind die Grundlage für sichere Kommunikation, Software-Verteilung und elektronische Verträge.
Signieren erzeugt eine digitale Signatur für eine Datei oder Nachricht. Der private Schlüssel des Senders wird verwendet, um einen Hash-Wert zu verschlüsseln.
| Algorithmus | Beschreibung | Empfehlung |
|---|---|---|
| RSA | Klassischer asymmetrischer Algorithmus | Weit verbreitet, sicher mit ≥ 2048 Bit |
| ECDSA | Elliptic Curve Digital Signature Algorithm | Kleinere Schlüssel, schnellere Signatur |
| EdDSA | Modernes Verfahren (Ed25519) | Hohe Sicherheit, empfohlen |
| DSA | Digital Signature Algorithm (veraltet) | Nicht mehr empfohlen |
Verifizieren prüft, ob eine digitale Signatur gültig ist – d.h. ob die Datei nicht verändert wurde und der private Schlüssel des Senders verwendet wurde.
0 bedeutet gültige Signatur, 1 bedeutet ungültig.
PKI (Public Key Infrastructure) ist das Framework für die Verwaltung von digitalen Zertifikaten und öffentlichen Schlüsseln. Sie stellt die Vertrauensbasis für digitale Signaturen dar.
| Komponente | Beschreibung | Beispiel |
|---|---|---|
| CA (Certificate Authority) | Stellt Zertifikate aus und signiert sie | DigiCert, Let's Encrypt, eigene CA |
| Zertifikat | Enthält öffentlichen Schlüssel + Metadaten | X.509-Zertifikat (.crt, .pem) |
| CRL | Liste gesperrter Zertifikate | crl.pem (regelmäßig aktualisiert) |
| OCSP | Online-Abfrage des Zertifikatsstatus | http://ocsp.example.com |
| Trust Store | Vertrauenswürdige Stammzertifikate | /etc/ssl/certs/ (Linux) |
X.509 ist der internationale Standard für digitale Zertifikate. Er definiert das Format und die Felder, die ein Zertifikat enthalten muss.
| Feld | Beschreibung | Beispiel |
|---|---|---|
| Version | X.509-Version (v1, v2, v3) | v3 (Standard) |
| Serial Number | Eindeutige Seriennummer | 01:23:45:67:89:AB |
| Subject | Besitzer des Zertifikats (DN) | CN=example.com, O=Company |
| Issuer | Aussteller (CA) | CN=DigiCert, O=DigiCert |
| Validity | Gültigkeitszeitraum | notBefore, notAfter |
| Subject Public Key | Öffentlicher Schlüssel | RSA 2048, ECDSA P-256 |
| Signature | Signaturalgorithmus | sha256WithRSAEncryption |
| X.509v3 Extensions | Erweiterungen (SAN, Key Usage) | Subject Alternative Name |
Common Name (CN) wird nur noch als Fallback verwendet.
OpenSSL bietet alle Werkzeuge für die Verwaltung von Schlüsseln, Zertifikaten und Signaturen – von der Schlüsselgenerierung bis zur eigenen CA.
Zertifikatswartung umfasst die regelmäßige Prüfung der Gültigkeit, die Erneuerung vor Ablauf und das Sperren von kompromittierten Zertifikaten.
checkend in Cron-Jobs). Let's Encrypt-Zertifikate haben eine Laufzeit von 90 Tagen – regelmäßige Erneuerung ist essenziell.
openssl dgst -sign
openssl dgst -verify
PKI
X.509
openssl
checkend
openssl dgst -sha256 -sign private.pem -out sig.sig datei.txt ·
openssl dgst -sha256 -verify public.pem -signature sig.sig datei.txt