Inhaltsverzeichnis

1. Concetti

Concetti fondamentali della crittografia post-quantum e di questa libreria.


Contenuto

Argomento Descrizione
1.1 Algoritmi ML-DSA, ML-KEM, standard NIST
1.2 Sicurezza Modello di minaccia, Harvest-Now-Decrypt-Later
1.3 Confronto con .NET 10 Perche WvdS invece di Microsoft PQC?

Perche Post-Quantum?

Il problema: La crittografia classica (RSA, ECDSA) puo essere violata dai computer quantistici. I dati intercettati oggi potrebbero essere decifrati in futuro.

La soluzione: Gli algoritmi post-quantum (ML-DSA, ML-KEM) sono resistenti agli attacchi quantistici. Sono standardizzati dal NIST1) e implementati in OpenSSL 3.6+.

Il nostro approccio: Crittografia ibrida - algoritmi classici e PQ in parallelo. Retrocompatibile, a prova di futuro.


Ambito della libreria

WvdS.System.Security.Cryptography.Extensions si concentra sulla crittografia post-quantum asimmetrica:

In ambito (WvdS) Fuori ambito (.NET integrato)
Firme ML-DSA Cifratura AES-GCM
Scambio chiavi ML-KEM ChaCha20-Poly1305
Certificati ibridi Cifratura simmetrica
Estensioni X.509 PQ Funzioni hash (SHA-256/384/512)

Regola pratica: Utilizzare WvdS solo per operazioni asimmetriche (firme, scambio chiavi, certificati). Per la cifratura simmetrica usare direttamente la libreria standard .NET.


Le tre modalita crittografiche

Modalita Algoritmi Compatibilita Utilizzo
Classic RSA, ECDSA, ECDH Universale Sistemi legacy
Hybrid RSA + ML-DSA, ECDH + ML-KEM Avanti/Indietro Migrazione (raccomandato)
PostQuantum ML-DSA, ML-KEM Solo PQ-ready Nuovi sistemi solo PQ

flowchart TD START(["Quale modalita scegliere?"]) --> Q1{"Tutti i sistemi
PQ-ready?"} Q1 -->|Si| Q2{"Serve retro-
compatibilita?"} Q1 -->|No| Q3{"OpenSSL 3.6
disponibile?"} Q2 -->|No| PQ["PostQuantum
ML-DSA / ML-KEM"] Q2 -->|Si| HYB["Hybrid
RSA+ML-DSA / ECDH+ML-KEM"] Q3 -->|Si| HYB Q3 -->|No| CLS["Classic
RSA / ECDSA / ECDH"] style PQ fill:#4caf50,color:#fff style HYB fill:#2196f3,color:#fff style CLS fill:#ff9800,color:#fff style START fill:#9c27b0,color:#fff

Modalita Classic

CryptoConfig.DefaultMode = CryptoMode.Classic;

Solo algoritmi classici. Per compatibilita legacy o sistemi senza OpenSSL 3.6.

Modalita Hybrid (raccomandata)

CryptoConfig.DefaultMode = CryptoMode.Hybrid;

Entrambi gli algoritmi in parallelo. I client legacy ignorano l'estensione PQ, quelli moderni validano entrambi.

Modalita PostQuantum

CryptoConfig.DefaultMode = CryptoMode.PostQuantum;

Usare solo se tutti i sistemi coinvolti sono PQ-ready!

Override per singola operazione

// Globale: Hybrid
CryptoConfig.DefaultMode = CryptoMode.Hybrid;
 
// Questa operazione: PostQuantum
var cert = request.CreateSelfSigned(notBefore, notAfter, CryptoMode.PostQuantum);

Panoramica algoritmi

→ Dettagli: Algoritmi

Firme (ML-DSA):

Scambio chiavi (ML-KEM):


Approfondimenti


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