6. Widerruf (Revocation)
Szenarien: 4
FFI-Funktionen: ~35
Status: ⏳ Geplant
Diese Kategorie umfasst alle Szenarien zum Widerruf von Zertifikaten. CRL-Erstellung, OCSP-Responder-Setup und Delta-CRL-Management.
Szenarien
| ID | Szenario | Beschreibung | Komplexität | Status |
|---|---|---|---|---|
| 6.1 | CRL erstellen | Certificate Revocation List generieren | ⭐⭐⭐ | ⏳ |
| 6.2 | OCSP-Responder | Online Certificate Status Protocol | ⭐⭐⭐⭐ | ⏳ |
| 6.3 | Delta-CRL | Inkrementelle CRL-Updates | ⭐⭐⭐⭐ | ⏳ |
| 6.4 | Zertifikat widerrufen | Einzelnes Zertifikat widerrufen | ⭐⭐ | ⏳ |
Revocation-Architektur
flowchart TB
subgraph CA["🔐 Certificate Authority"]
REVOKE[Widerruf-Anfrage]
DB[(Revocation DB)]
CRL_GEN[CRL Generator]
OCSP_SIGN[OCSP Signer]
end
subgraph DIST["📤 Distribution"]
CDP[CRL Distribution Point]
OCSP_SRV[OCSP Responder]
end
subgraph CLIENT["🖥️ Client"]
VAL[Validator]
end
REVOKE --> DB
DB --> CRL_GEN --> CDP
DB --> OCSP_SIGN --> OCSP_SRV
VAL --> |HTTP GET| CDP
VAL --> |OCSP Request| OCSP_SRV
style DB fill:#e3f2fd
style CDP fill:#e8f5e9
style OCSP_SRV fill:#fff3e0
Widerrufsgründe (RFC 5280)
| Code | Grund | Beschreibung |
|---|---|---|
| 0 | unspecified | Kein Grund angegeben |
| 1 | keyCompromise | Private Key kompromittiert |
| 2 | cACompromise | CA kompromittiert |
| 3 | affiliationChanged | Organisation geändert |
| 4 | superseded | Durch neues Zertifikat ersetzt |
| 5 | cessationOfOperation | Dienst eingestellt |
| 6 | certificateHold | Temporär gesperrt |
CRL vs OCSP
| Aspekt | CRL | OCSP |
|---|---|---|
| Aktualisierung | Periodisch (Stunden/Tage) | Echtzeit |
| Größe | Wächst mit Widerrufen | Konstant (~4 KB) |
| Offline | ✅ Möglich | ❌ Server erforderlich |
| Privatsphäre | ✅ Keine Anfragen sichtbar | ⚠️ Server sieht Anfragen |
| Standard | RFC 5280 | RFC 6960 |
Branchenspezifische Anforderungen
| Branche | Methode | Update-Intervall | Besonderheiten |
|---|---|---|---|
| Energie/SCADA | CRL | 24-72h | Offline-Umgebungen, manuelle Verteilung |
| Healthcare | OCSP | Echtzeit | gematik-Anforderungen, QES |
| Automotive | CRL + OCSP | 1-6h | V2X schnelle Reaktion erforderlich |
| Standard IT | OCSP Stapling | Echtzeit | Performance-optimiert |
Code-Schnellstart
CRL erstellen
// CRL-Builder initialisieren var crlBuilder = ctx.CreateCrlBuilder(issuerCert, issuerKey); // Widerrufene Zertifikate hinzufügen crlBuilder.AddRevokedCertificate( serialNumber: revokedCert.SerialNumber, revocationDate: DateTimeOffset.UtcNow, reason: RevocationReason.KeyCompromise ); // CRL generieren var crl = crlBuilder.Build( thisUpdate: DateTimeOffset.UtcNow, nextUpdate: DateTimeOffset.UtcNow.AddDays(7), crlNumber: 42 ); File.WriteAllBytes("intermediate.crl", crl.ToDer());
Zertifikat widerrufen
// Zertifikat zum Widerruf laden var certToRevoke = ctx.LoadCertificate("compromised.crt.pem"); // In Revocation-DB eintragen ctx.RevokeCertificate( certificate: certToRevoke, reason: RevocationReason.KeyCompromise, invalidityDate: DateTimeOffset.UtcNow.AddHours(-2) // Kompromittierung vor 2h ); // Neue CRL generieren und verteilen var newCrl = ctx.GenerateCrl(issuerCert, issuerKey); await PublishCrl(newCrl, "http://crl.example.com/intermediate.crl");
Verwandte Kategorien
| Kategorie | Beziehung |
|---|---|
| 1. PKI-Infrastruktur | CRL Distribution Points in CA-Config |
| 5. Validierung | Revocation-Check bei Validierung |
| 4. Zertifikate verwalten | Re-Key nach Widerruf |
« ← 5. Validierung | ↑ Szenarien | 7. Verschlüsselung → »
Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional
Zuletzt geändert: den 29.01.2026 um 15:13