Namespace: WvdS.System.Security.Cryptography.X509Certificates
Extension Drop-In Replacement per X509Chain con validazione firme post-quantum. Estende la validazione standard della catena con verifica firme PQ in tutte e tre le modalita Crypto.
| Metodo | Descrizione |
|---|---|
Build(certificate, mode) | Costruisce e valida la catena certificati con CryptoMode |
Build(certificate, customTrustStore, mode) | Validazione catena con Trust Store personalizzato |
Build(certificate, trustStore, mode) | Validazione catena con PqTrustStore |
BuildWithRevocationCheck(…) | Costruzione catena con verifica CRL/OCSP |
BuildWithOfflineCrl(…) | Costruzione catena con dati CRL offline |
IsFullyPqProtected() | Verifica se l'intera catena e protetta PQ |
GetChainCryptoModes() | Restituisce i CryptoMode di tutti gli elementi della catena |
GetValidationReport() | Crea report di validazione dettagliato |
using var chain = new X509Chain(); var cert = new X509Certificate2("certificate.pfx"); // Con CryptoMode esplicito bool isValid = chain.Build(cert, CryptoMode.Hybrid); // Con modalita default da CryptoConfig bool isValid2 = chain.Build(cert, null);
| Modalita | Firma classica | Firma PQ |
|---|---|---|
| Classic | Verificata | Ignorata |
| Hybrid | Verificata | Verificata (se presente) |
| PostQuantum | Verificata (struttura) | Richiesta |
using var chain = new X509Chain(); chain.Build(cert, CryptoMode.Hybrid); if (chain.IsFullyPqProtected()) { Console.WriteLine("Intera catena e protetta PQ"); } else { var modes = chain.GetChainCryptoModes(); for (int i = 0; i < modes.Length; i++) { if (modes[i] == CryptoMode.Classic) Console.WriteLine($"Elemento {i} non ha protezione PQ"); } }
using var chain = new X509Chain(); chain.Build(cert, CryptoMode.Hybrid); var report = chain.GetValidationReport(); Console.WriteLine($"Valido: {report.IsValid}"); Console.WriteLine($"Lunghezza catena: {report.ChainLength}"); Console.WriteLine($"Completamente protetto PQ: {report.IsFullyPqProtected}");
Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional