Sadrži extension metode za digitalne potpise s PQ podrškom.
| Klasa | Opis |
|---|---|
| SignatureExtensions | Proširenja za RSA, ECDsa i X509Certificate2 potpise |
| SignedDataExtensions | Proširenja za CMS/PKCS#7 SignedCms |
| HybridSignatureInfo | Kontejner za hibridne podatke potpisa |
| Klasa | Opis |
|---|---|
| PqSignedCmsHelper | High-level API za PQ-sposobne CMS operacije |
| .NET tip | Klasa proširenja |
|---|---|
System.Security.Cryptography.RSA1) | SignatureExtensions |
System.Security.Cryptography.ECDsa2) | SignatureExtensions |
System.Security.Cryptography.Pkcs.SignedCms3) | SignedDataExtensions |
U hibridnom načinu rada generiraju se dva potpisa:
+---------------------------------------------+ | Hibridni potpis | +---------------------------------------------+ | [4 bajta] Duljina klasičnog potpisa | | [n bajtova] Klasični potpis (RSA/ECDSA) | | [m bajtova] PQ potpis (ML-DSA) | +---------------------------------------------+
using WvdS.System.Security.Cryptography; using WvdS.System.Security.Cryptography.Signatures; CryptoConfig.DefaultMode = CryptoMode.Hybrid; using var rsa = RSA.Create(2048); byte[] data = Encoding.UTF8.GetBytes("Podaci za potpisivanje"); // Kreiranje hibridnog potpisa byte[] signature = rsa.SignData( data, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1); // Verifikacija bool valid = rsa.VerifyData( data, signature, HashAlgorithmName.SHA256, RSASignaturePadding.Pkcs1);
Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional