====== 5.4 Efemerni certifikati ====== Kratkotrajni sejni certifikati za povečano varnost. ===== Koncept ===== * Glavni certifikat avtenticira enkrat * Strežnik izda efemerni certifikat * Efemerni certifikat velja samo za to sejo * Samodejna rotacija vsakih X minut ===== Potek ===== 1. Odjemalec → Strežnik: Glavni certifikat 2. Strežnik validira proti CA 3. Strežnik → Odjemalec: Efemerni certifikat (podpisan) 4. Odjemalec uporablja efemerni certifikat za zahteve 5. Po poteku: Nazaj na korak 1 ===== Konfiguracija ===== { "Security": { "EphemeralCertificate": { "Enabled": true, "ValidityMinutes": 15, "RotationBeforeExpiryMinutes": 2 } } } ===== Rotacija ===== Odjemalec mora pravočasno zahtevati nov efemerni certifikat: // Preveri če je potrebna rotacija if (ephemeralCert.NotAfter < DateTime.UtcNow.AddMinutes(2)) { ephemeralCert = await RequestNewEphemeralCert(); } ===== Prednosti ===== * Kompromitiran certifikat je veljaven le kratek čas * Forward Secrecy * Minimizirana površina napada ===== PQ-Crypto knjižnica ===== Za programsko ustvarjanje efemernih PQ certifikatov glejte: * [[..:..:..:..:..:pqcrypt:api:wvds-system-security-cryptography:x509certificates:certificaterequestextensions|CertificateRequest Extensions]] * [[..:..:..:..:..:pqcrypt:api:wvds-system-security-cryptography:providers:nativecryptoprovider|NativeCryptoProvider.CreateEphemeralCertificateAsync]] * [[..:..:..:..:..:pqcrypt:developer:integration|Vodnik za integracijo]]