====== Scenarij 3.4: Izdajanje S/MIME certifikata ====== **Kategorija:** [[.:start|Izdajanje certifikatov]] \\ **Kompleksnost:** ⭐⭐⭐ (Srednje-visoka) \\ **Predpogoji:** CSR z e-poštnim naslovom \\ **Predviden čas:** 10-15 minut ---- ===== Opis ===== Ta scenarij opisuje izdajanje **S/MIME certifikata** za šifriranje in podpisovanje e-pošte. S/MIME certifikati omogočajo varno e-poštno komunikacijo z digitalnimi podpisi in šifriranjem. **Funkcije:** * Podpisovanje e-pošte (avtentičnost, celovitost) * Šifriranje e-pošte (zaupnost) * Preverjanje pošiljatelja ---- ===== Primer kode (C#) ===== using WvdS.Security.Cryptography.X509Certificates.Extensions.PQ; using var ctx = PqCryptoContext.Initialize(); var caCert = ctx.LoadCertificate("user-ca.crt.pem"); var caKey = ctx.LoadPrivateKey("user-ca.key.pem", "CaPassword!"); var csr = ctx.LoadCertificateRequest(File.ReadAllText("smime.csr.pem")); // Izdajanje S/MIME certifikata var smimeCert = ctx.IssueCertificate( csr, issuerCert: caCert, issuerKey: caKey, serialNumber: ctx.GenerateSerialNumber(), validDays: 365, extensions: new ExtBuilder() .BasicConstraints(ca: false, critical: true) // Key Usage za podpisovanje IN šifriranje .KeyUsage( KeyUsageFlags.DigitalSignature | KeyUsageFlags.KeyEncipherment | KeyUsageFlags.DataEncipherment, critical: true ) // Extended Key Usage: Email Protection .ExtendedKeyUsage(ExtKeyUsage.EmailProtection) // E-poštni naslov kot SAN (OBVEZNO za S/MIME!) .SubjectAlternativeName(new[] { "email:max.mustermann@example.com" }) .SubjectKeyIdentifier(csr.PublicKey) .AuthorityKeyIdentifier(caCert) .Build() ); smimeCert.ToPemFile("smime.crt.pem"); // PFX za uvoz v e-poštni odjemalec var pfx = ctx.ExportToPfx(smimeCert, smimeKey, new[] { caCert }, "Password!"); File.WriteAllBytes("smime.pfx", pfx); ---- ===== Tipi S/MIME certifikatov ===== ^ Tip ^ Validacija ^ Uporaba ^ | Class 1 | Nadzor e-pošte | Osebno, brezplačno | | Class 2 | Preverjanje identitete | Poslovno | | Class 3 | Razširjeno preverjanje | Enterprise, kvalificirano | ---- ===== Podrobnosti Key Usage ===== ^ Zastavica ^ Uporaba pri S/MIME ^ | digitalSignature | Podpisovanje e-pošte | | keyEncipherment | Šifriranje ključa seje (RSA) | | dataEncipherment | Neposredno šifriranje podatkov | | nonRepudiation | Pravno zavezujoč podpis (opcijsko) | ---- ===== Uvoz v Outlook / Thunderbird ===== 1. Dvoklik na PFX datoteko 2. Sledite čarovniku za uvoz 3. Vnesite geslo 4. "Samodejno izberi shrambo" 5. V Outlook: Datoteka → Možnosti → Središče zaupanja → Varnost e-pošte ---- ===== Povezani scenariji ===== ^ Povezava ^ Scenarij ^ Opis ^ | **Povezano** | [[sl:int:pqcrypt:szenarien:signaturen:dokument_signieren|8.1 Podpisovanje dokumenta]] | E-pošta kot dokument | | **Povezano** | [[sl:int:pqcrypt:szenarien:verschluesselung:hybrid_encryption|7.1 Hibridno šifriranje]] | Šifriranje e-pošte | | **Predpogoj** | [[sl:int:pqcrypt:szenarien:csr:csr_client|2.2 Client-CSR]] | CSR z e-pošto | ---- << [[.:codesign_cert|← 3.3 Code-Signing]] | [[.:start|↑ Pregled certifikatov]] | [[.:wildcard_cert|3.5 Wildcard certifikat →]] >> {{tag>scenarij certifikat smime epošta šifriranje podpis}} ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//