~~NOTOC~~
====== 4. Zertifikate verwalten ======
**Szenarien:** 4 \\
**FFI-Funktionen:** ~30 \\
**Status:** ⏳ Geplant
Diese Kategorie umfasst alle Szenarien zur Verwaltung des Zertifikats-Lebenszyklus. Renewal, Re-Key, Archivierung und Backup von Zertifikaten.
----
===== Szenarien =====
^ ID ^ Szenario ^ Beschreibung ^ Komplexität ^ Status ^
| [[.:renewal|4.1]] | Zertifikat erneuern (Renewal) | Ablaufendes Zertifikat verlängern | ⭐⭐⭐ | ⏳ |
| [[.:rekey|4.2]] | Schlüssel erneuern (Re-Key) | Neues Schlüsselpaar, neues Zertifikat | ⭐⭐⭐ | ⏳ |
| [[.:archivierung|4.3]] | Zertifikate archivieren | Ablaufende Zertifikate sicher aufbewahren | ⭐⭐ | ⏳ |
| [[.:backup|4.4]] | Backup & Recovery | Zertifikate und Schlüssel sichern | ⭐⭐⭐ | ⏳ |
----
===== Lebenszyklus =====
flowchart LR
subgraph ACTIVE["🟢 Aktiv"]
NEW[Neu ausgestellt]
INUSE[In Verwendung]
end
subgraph RENEWAL["🔄 Erneuerung"]
RENEW[Renewal]
REKEY[Re-Key]
end
subgraph END["⏹️ Ende"]
EXPIRE[Abgelaufen]
REVOKE[Widerrufen]
ARCHIVE[Archiviert]
end
NEW --> INUSE
INUSE --> RENEW --> INUSE
INUSE --> REKEY --> INUSE
INUSE --> EXPIRE --> ARCHIVE
INUSE --> REVOKE --> ARCHIVE
style INUSE fill:#e8f5e9
style REVOKE fill:#ffcdd2
----
===== Renewal vs Re-Key =====
^ Operation ^ Schlüssel ^ Serial ^ Anwendungsfall ^
| **Renewal** | Gleich | Neu | Schlüssel noch sicher, nur Gültigkeit verlängern |
| **Re-Key** | Neu | Neu | Kompromittierungsverdacht, Algorithmuswechsel |
**Best Practice:** Bei PQ-Migration immer Re-Key durchführen, um von klassischen auf ML-DSA umzustellen.
----
===== Automatisierung =====
^ Trigger ^ Aktion ^ Vorlaufzeit ^
| 30 Tage vor Ablauf | Warnung per E-Mail | - |
| 14 Tage vor Ablauf | Auto-Renewal starten | - |
| 7 Tage vor Ablauf | Eskalation | - |
| Ablauf | Zertifikat deaktivieren | - |
----
===== Code-Schnellstart =====
==== Renewal ====
// Bestehendes Zertifikat laden
var oldCert = ctx.LoadCertificate("server.crt.pem");
var privateKey = ctx.LoadPrivateKey("server.key.pem", password);
// Renewal: Neues Zertifikat mit gleichem Schlüssel
var csr = ctx.CreateCertificateRequest(privateKey, oldCert.Subject);
var newCert = ctx.IssueCertificate(csr, issuerCert, issuerKey, validDays: 365);
newCert.ToPemFile("server-renewed.crt.pem");
==== Re-Key ====
// Neues Schlüsselpaar generieren (z.B. Migration zu ML-DSA)
using var newKey = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65);
// CSR mit neuem Schlüssel, gleichem Subject
var csr = ctx.CreateCertificateRequest(newKey, oldCert.Subject);
var newCert = ctx.IssueCertificate(csr, issuerCert, issuerKey, validDays: 365);
// Alten Schlüssel sicher vernichten
oldKey.Dispose();
----
===== Verwandte Kategorien =====
^ Kategorie ^ Beziehung ^
| [[.:zertifikate:start|3. Zertifikate ausstellen]] | Neues Zertifikat bei Re-Key |
| [[.:widerruf:start|6. Widerruf]] | Altes Zertifikat bei Re-Key widerrufen |
| [[.:schluessel:start|11. Schlüsselmanagement]] | Schlüssel-Rotation |
----
<< [[de:int:pqcrypt:szenarien:zertifikate:start|← 3. Zertifikate ausstellen]] | [[de:int:pqcrypt:szenarien:start|↑ Szenarien]] | [[.:validierung:start|5. Validierung →]] >>
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//
{{tag>kategorie verwaltung renewal rekey archivierung backup}}