Namespace WvdS.System.Security.Cryptography.Signatures

Contiene Extension Methods per firme digitali con supporto PQ.


Classi

Classe Descrizione
SignatureExtensions Extension per firme RSA, ECDsa e X509Certificate2
SignedDataExtensions Extension per CMS/PKCS#7 SignedCms
HybridSignatureInfo Container per dati di firma ibrida

Classi statiche

Classe Descrizione
PqSignedCmsHelper API high-level per operazioni CMS PQ-ready

Tipi estesi

Tipo .NET Classe Extension
System.Security.Cryptography.RSA1) SignatureExtensions
System.Security.Cryptography.ECDsa2) SignatureExtensions
System.Security.Cryptography.Pkcs.SignedCms3) SignedDataExtensions

Formato firma ibrida

In modalita Hybrid vengono generate due firme:

+---------------------------------------------+
| Firma ibrida                                |
+---------------------------------------------+
| [4 Bytes] Lunghezza firma classica          |
| [n Bytes] Firma classica (RSA/ECDSA)        |
| [m Bytes] Firma PQ (ML-DSA)                 |
+---------------------------------------------+

Esempio

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("Dati da firmare");
 
// Creare firma ibrida
byte[] signature = rsa.SignData(
    data,
    HashAlgorithmName.SHA256,
    RSASignaturePadding.Pkcs1);
 
// Verificare
bool valid = rsa.VerifyData(
    data,
    signature,
    HashAlgorithmName.SHA256,
    RSASignaturePadding.Pkcs1);

Vedi anche


Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional

Zuletzt geändert: il 30/01/2026 alle 09:05