~~NOTOC~~
====== 2. Zertifikatsanträge (CSR) ======
**Szenarien:** 4 \\
**FFI-Funktionen:** ~25 \\
**Status:** ⏳ Geplant
Diese Kategorie umfasst alle Szenarien zur Erstellung und Verarbeitung von Certificate Signing Requests (CSR). Von einfachen Server-Anträgen bis zu komplexen Multi-SAN-Requests.
----
===== Szenarien =====
^ ID ^ Szenario ^ Beschreibung ^ Komplexität ^ Status ^
| [[.:csr_server|2.1]] | Server-CSR erstellen | CSR für TLS-Serverzertifikat | ⭐⭐ | ⏳ |
| [[.:csr_client|2.2]] | Client-CSR erstellen | CSR für Client-Authentifizierung | ⭐⭐ | ⏳ |
| [[.:csr_multi_san|2.3]] | Multi-SAN CSR | CSR mit mehreren Subject Alternative Names | ⭐⭐⭐ | ⏳ |
| [[.:csr_verarbeiten|2.4]] | CSR verarbeiten | CSR validieren, prüfen, signieren | ⭐⭐⭐ | ⏳ |
----
===== Workflow =====
flowchart LR
subgraph CLIENT["📝 Antragsteller"]
K[Schlüsselpaar generieren]
C[CSR erstellen]
S[CSR signieren]
end
subgraph CA["🔐 Certificate Authority"]
V[CSR validieren]
P[Policy prüfen]
I[Zertifikat ausstellen]
end
K --> C --> S --> V --> P --> I
style K fill:#e3f2fd
style I fill:#e8f5e9
----
===== CSR-Inhalte =====
^ Feld ^ Beschreibung ^ Beispiel ^
| Subject | Distinguished Name | CN=server.example.com, O=Org, C=DE |
| Public Key | ML-DSA-65 oder Hybrid | SPKI-kodiert |
| Attributes | Gewünschte Extensions | SAN, Key Usage |
| Signature | Nachweis des Private Key Besitzes | Self-signed |
----
===== Code-Schnellstart =====
using WvdS.Security.Cryptography.X509Certificates.Extensions.PQ;
using var ctx = PqCryptoContext.Initialize();
// Schlüsselpaar für Server
using var serverKey = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65);
// CSR erstellen
var csr = ctx.CreateCertificateRequest(
serverKey,
new DnBuilder().AddCN("server.example.com").AddO("My Org").Build(),
extensions: new ExtBuilder()
.SubjectAlternativeName(new[] { "server.example.com", "www.example.com" })
.KeyUsage(KeyUsageFlags.DigitalSignature | KeyUsageFlags.KeyEncipherment)
.ExtendedKeyUsage(ExtKeyUsage.ServerAuth)
.Build()
);
// CSR als PEM speichern
File.WriteAllText("server.csr.pem", csr.ToPem());
→ //Vollständiges Beispiel:// [[.:csr_server|Szenario 2.1]]
----
===== Verwandte Kategorien =====
^ Kategorie ^ Beziehung ^
| [[.:pki:start|1. PKI-Infrastruktur]] | CA zum Signieren der CSRs |
| [[.:zertifikate:start|3. Zertifikate ausstellen]] | CSR wird zum Zertifikat |
| [[.:schluessel:start|11. Schlüsselmanagement]] | Private Key des CSR verwalten |
----
<< [[de:int:pqcrypt:szenarien:pki:start|← 1. PKI-Infrastruktur]] | [[de:int:pqcrypt:szenarien:start|↑ Szenarien]] | [[.:zertifikate:start|3. Zertifikate ausstellen →]] >>
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//
{{tag>kategorie csr zertifikatsantrag request}}