====== Classe CertificateRequestExtensions ====== Fornisce Extension Methods per ''CertificateRequest'' con supporto PQ. ---- ===== Definizione ===== namespace WvdS.System.Security.Cryptography.X509Certificates public static class CertificateRequestExtensions ---- ===== Metodi ===== ^ Nome ^ Descrizione ^ | CreateSelfSigned(DateTimeOffset, DateTimeOffset, CryptoMode?) | Crea certificato self-signed con firma PQ opzionale | | Create(X509Certificate2, DateTimeOffset, DateTimeOffset, Byte[], CryptoMode?) | Crea certificato firmato da CA con firma PQ opzionale | ---- ===== Note ===== Questa classe extension estende ''System.Security.Cryptography.X509Certificates.CertificateRequest''((Microsoft Docs: https://learn.microsoft.com/dotnet/api/system.security.cryptography.x509certificates.certificaterequest)). ==== Comportamento Drop-In ==== Gli Extension Methods hanno la stessa firma dei metodi originali piu un parametro ''CryptoMode'' opzionale: // Originale .NET X509Certificate2 CreateSelfSigned(DateTimeOffset notBefore, DateTimeOffset notAfter) // Extension (Drop-In) X509Certificate2 CreateSelfSigned(DateTimeOffset notBefore, DateTimeOffset notAfter, CryptoMode? mode = null) Se il namespace ''using'' e incluso, viene utilizzato automaticamente l'Extension Method. ---- ===== Esempio ===== using WvdS.System.Security.Cryptography; using WvdS.System.Security.Cryptography.X509Certificates; CryptoConfig.DefaultMode = CryptoMode.Hybrid; using var rsa = RSA.Create(2048); var request = new CertificateRequest( "CN=Server, O=Org, C=DE", rsa, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1); request.CertificateExtensions.Add( new X509BasicConstraintsExtension(false, false, 0, true)); // Certificato ibrido: RSA + ML-DSA var cert = request.CreateSelfSigned( DateTimeOffset.Now, DateTimeOffset.Now.AddYears(1)); ---- ===== Vedi anche ===== * [[.:start|Namespace X509Certificates]] * [[.:x509certificate2extensions|X509Certificate2Extensions]] * [[..:cryptomode|Enum CryptoMode]] {{tag>klasse extension static}} ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//