~~NOTOC~~
====== 2. Zahteve za certifikate (CSR) ======
**Scenariji:** 4 \\
**FFI-funkcije:** ~25 \\
**Status:** Planirano
Ta kategorija obsega vse scenarije za ustvarjanje in obdelavo Certificate Signing Requests (CSR). Od enostavnih strežniških zahtev do kompleksnih Multi-SAN zahtev.
----
===== Scenariji =====
^ ID ^ Scenarij ^ Opis ^ Kompleksnost ^ Status ^
| [[.:csr_server|2.1]] | Ustvarjanje strežniškega CSR | CSR za TLS-strežniški certifikat | 2/5 | Planirano |
| [[.:csr_client|2.2]] | Ustvarjanje odjemalčevega CSR | CSR za overitev odjemalca | 2/5 | Planirano |
| [[.:csr_multi_san|2.3]] | Multi-SAN CSR | CSR z več Subject Alternative Names | 3/5 | Planirano |
| [[.:csr_verarbeiten|2.4]] | Obdelava CSR | Validacija, preverjanje, podpisovanje CSR | 3/5 | Planirano |
----
===== Potek dela =====
flowchart LR
subgraph CLIENT["Vlagatelj"]
K[Generiranje para ključev]
C[Ustvarjanje CSR]
S[Podpisovanje CSR]
end
subgraph CA["Certificate Authority"]
V[Validacija CSR]
P[Preverjanje politike]
I[Izdaja certifikata]
end
K --> C --> S --> V --> P --> I
style K fill:#e3f2fd
style I fill:#e8f5e9
----
===== Vsebina CSR =====
^ Polje ^ Opis ^ Primer ^
| Subject | Distinguished Name | CN=server.example.com, O=Org, C=SI |
| Javni ključ | ML-DSA-65 ali hibridni | SPKI-kodirano |
| Atributi | Želene razširitve | SAN, Key Usage |
| Podpis | Dokaz posesti zasebnega ključa | Samopodpisano |
----
===== Hitri začetek s kodo =====
using WvdS.Security.Cryptography.X509Certificates.Extensions.PQ;
using var ctx = PqCryptoContext.Initialize();
// Par ključev za strežnik
using var serverKey = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65);
// Ustvarjanje CSR
var csr = ctx.CreateCertificateRequest(
serverKey,
new DnBuilder().AddCN("server.example.com").AddO("Moja organizacija").Build(),
extensions: new ExtBuilder()
.SubjectAlternativeName(new[] { "server.example.com", "www.example.com" })
.KeyUsage(KeyUsageFlags.DigitalSignature | KeyUsageFlags.KeyEncipherment)
.ExtendedKeyUsage(ExtKeyUsage.ServerAuth)
.Build()
);
// Shranjevanje CSR kot PEM
File.WriteAllText("server.csr.pem", csr.ToPem());
-> //Popoln primer:// [[.:csr_server|Scenarij 2.1]]
----
===== Povezane kategorije =====
^ Kategorija ^ Povezava ^
| [[.:pki:start|1. PKI-infrastruktura]] | CA za podpisovanje CSR-jev |
| [[.:zertifikate:start|3. Izdaja certifikatov]] | CSR postane certifikat |
| [[.:schluessel:start|11. Upravljanje ključev]] | Upravljanje zasebnega ključa CSR |
----
<< [[sl:int:pqcrypt:szenarien:pki:start|1. PKI-infrastruktura]] | [[sl:int:pqcrypt:szenarien:start|Scenariji]] | [[.:zertifikate:start|3. Izdaja certifikatov]] >>
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//
{{tag>kategorija csr zahteva-za-certifikat request}}