====== CertificateRequestExtensions Klasa ======
Pruža Extension Methods za ''CertificateRequest'' s PQ podrškom.
----
===== Definicija =====
namespace WvdS.System.Security.Cryptography.X509Certificates
public static class CertificateRequestExtensions
----
===== Metode =====
^ Naziv ^ Opis ^
| [[.:certificaterequestextensions-createselfsigned|CreateSelfSigned(DateTimeOffset, DateTimeOffset, CryptoMode?)]] | Stvara samopotpisani certifikat s opcionim PQ potpisom |
| [[.:certificaterequestextensions-create|Create(X509Certificate2, DateTimeOffset, DateTimeOffset, Byte[], CryptoMode?)]] | Stvara CA-potpisani certifikat s opcionim PQ potpisom |
----
===== Napomene =====
Ova Extension klasa proširuje ''System.Security.Cryptography.X509Certificates.CertificateRequest''((Microsoft Docs: https://learn.microsoft.com/dotnet/api/system.security.cryptography.x509certificates.certificaterequest)).
==== Drop-In ponašanje ====
Extension metode imaju isti potpis kao originalne metode plus opcioni ''CryptoMode'' parametar:
// Originalni .NET
X509Certificate2 CreateSelfSigned(DateTimeOffset notBefore, DateTimeOffset notAfter)
// Extension (Drop-In)
X509Certificate2 CreateSelfSigned(DateTimeOffset notBefore, DateTimeOffset notAfter, CryptoMode? mode = null)
Kada je ''using'' namespace uključen, automatski se koristi Extension metoda.
----
===== Primjer =====
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=HR",
rsa,
HashAlgorithmName.SHA256,
RSASignaturePadding.Pkcs1);
request.CertificateExtensions.Add(
new X509BasicConstraintsExtension(false, false, 0, true));
// Hibridni certifikat: RSA + ML-DSA
var cert = request.CreateSelfSigned(
DateTimeOffset.Now,
DateTimeOffset.Now.AddYears(1));
----
===== Vidi također =====
* [[.:start|X509Certificates Namespace]]
* [[.:x509certificate2extensions|X509Certificate2Extensions]]
* [[hr:int:pqcrypt:api:wvds-system-security-cryptography:cryptomode|CryptoMode Enum]]
{{tag>klasa extension static}}
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//