====== Imenski prostor WvdS.System.Security.Cryptography.Signatures ======
Vsebuje razširitvene metode za digitalne podpise s podporo PQ.
----
===== Razredi =====
^ Razred ^ Opis ^
| [[.:signatureextensions|SignatureExtensions]] | Razširitve za podpise RSA, ECDsa in X509Certificate2 |
| [[.:signeddataextensions|SignedDataExtensions]] | Razširitve za CMS/PKCS#7 SignedCms |
| [[.:hybridsignatureinfo|HybridSignatureInfo]] | Vsebnik za podatke hibridnih podpisov |
----
===== Statični razredi =====
^ Razred ^ Opis ^
| [[.:pqsignedcmshelper|PqSignedCmsHelper]] | Visokonivojski API za operacije CMS, zmožne PQ |
----
===== Razširjeni tipi =====
^ .NET-tip ^ Razred razširitve ^
| ''System.Security.Cryptography.RSA''((Microsoft Docs: https://learn.microsoft.com/dotnet/api/system.security.cryptography.rsa)) | SignatureExtensions |
| ''System.Security.Cryptography.ECDsa''((Microsoft Docs: https://learn.microsoft.com/dotnet/api/system.security.cryptography.ecdsa)) | SignatureExtensions |
| ''System.Security.Cryptography.Pkcs.SignedCms''((Microsoft Docs: https://learn.microsoft.com/dotnet/api/system.security.cryptography.pkcs.signedcms)) | SignedDataExtensions |
----
===== Format hibridnega podpisa =====
V hibridnem načinu sta ustvarjena dva podpisa:
+------------------------------------------+
| Hibridni podpis |
+------------------------------------------+
| [4 bajti] Dolžina klasičnega podpisa |
| [n bajtov] Klasični podpis (RSA/ECDSA) |
| [m bajtov] PQ-podpis (ML-DSA) |
+------------------------------------------+
----
===== Primer =====
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("Podatki za podpis");
// Ustvari hibridni podpis
byte[] signature = rsa.SignData(
data,
HashAlgorithmName.SHA256,
RSASignaturePadding.Pkcs1);
// Preveri
bool valid = rsa.VerifyData(
data,
signature,
HashAlgorithmName.SHA256,
RSASignaturePadding.Pkcs1);
----
===== Glejte tudi =====
* [[..:x509certificates:start|Imenski prostor X509Certificates]]
* [[..:keyexchange:start|Imenski prostor KeyExchange]]
* [[..:start|Pregled API]]
{{tag>namespace signaturen}}
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//