Inhaltsverzeichnis

Mapping BSI IT-Grundschutz

Mapping della libreria WvdS Post-Quantum-Cryptography sui moduli BSI IT-Grundschutz.


Panoramica

Il compendio BSI IT-Grundschutz1) definisce i requisiti di sicurezza per i sistemi IT. Questa pagina documenta come WvdS soddisfa i moduli rilevanti.

flowchart LR subgraph BSI["BSI IT-Grundschutz"] CON1["CON.1
Concetto crypto"] CON5["CON.5
Gestione
chiavi"] OPS115["OPS.1.1.5
Logging"] APP31["APP.3.1
Applicazioni web"] NET31["NET.3.1
Router/Switch"] end subgraph WVDS["WvdS PQ-Crypto"] CFG["CryptoConfig"] KDF["KeyDerivation"] LOG["Audit-Events"] TLS["TLS-Extensions"] CERT["Certificati X.509"] end CON1 --> CFG CON5 --> KDF OPS115 --> LOG APP31 --> TLS NET31 --> CERT style CFG fill:#4caf50,color:#fff style KDF fill:#4caf50,color:#fff style LOG fill:#4caf50,color:#fff style TLS fill:#4caf50,color:#fff style CERT fill:#4caf50,color:#fff


CON.1 Concetto crittografico

Modulo: Concezione e procedure - Concetto crittografico2)

Requisito ID BSI Implementazione WvdS Stato
Selezione procedure crittografiche appropriate CON.1.A1 ML-DSA (FIPS 204), ML-KEM (FIPS 203)
Backup chiavi crittografiche CON.1.A2 KeyDerivation, export PEM con cifratura
Cifratura delle comunicazioni CON.1.A3 TLS 1.3 con algoritmi PQ
Lunghezze chiavi appropriate CON.1.A4 ML-DSA-44/65/87, ML-KEM-512/768/1024
Documentare concetto crypto CON.1.A5 Documentazione concetti
Verifica regolare CON.1.A6 API versionata, conformita NIST

Dettagli implementazione

CON.1.A1 - Selezione procedure crittografiche appropriate:

// WvdS utilizza esclusivamente algoritmi standardizzati NIST
CryptoConfig.DefaultMode = CryptoMode.Hybrid;
 
// Algoritmi disponibili:
// - ML-DSA-44/65/87 (NIST FIPS 204)
// - ML-KEM-512/768/1024 (NIST FIPS 203)
// - RSA-2048/3072/4096 (classico)
// - ECDSA P-256/384/521 (classico)

CON.1.A4 - Lunghezze chiavi appropriate:

Le lunghezze chiavi corrispondono alle raccomandazioni BSI3):

Algoritmo Livello sicurezza Raccomandazione BSI
ML-DSA-44 NIST Level 2 (~128 Bit) Certificati a breve termine
ML-DSA-65 NIST Level 3 (~192 Bit) Raccomandazione standard
ML-DSA-87 NIST Level 5 (~256 Bit) Massima sicurezza

CON.5 Sviluppo e impiego di sistemi di gestione chiavi

Modulo: Gestione chiavi4)

Requisito ID BSI Implementazione WvdS Stato
Analisi requisiti CON.5.A1 API documentata, scenari
Generazione chiavi CON.5.A2 OpenSSL 3.6 CSPRNG
Archiviazione chiavi CON.5.A3 Export PEM cifrato
Distribuzione chiavi CON.5.A4 Certificati X.509, workflow CSR
Derivazione chiavi CON.5.A5 HKDF, PBKDF2, Argon2id
Distruzione chiavi CON.5.A6 SecureZeroMemory, IDisposable
Archiviazione chiavi CON.5.A7 PEM/PFX con protezione password

Dettagli implementazione

CON.5.A5 - Derivazione chiavi:

Le funzioni di derivazione chiavi corrispondono alle raccomandazioni BSI5) e agli standard NIST6).

// HKDF (RFC 5869) per derivazione chiavi
var derivedKey = KeyDerivationExtensions.DeriveKey(
    sharedSecret,
    salt: cryptoRandom,
    info: contextInfo,
    outputLength: 32,
    HashAlgorithmName.SHA256
);
 
// Argon2id per derivazione basata su password (Memory-Hard)
var key = OpenSslKdf.Argon2id(
    password,
    salt,
    outputLength: 32,
    iterations: 3,
    memoryKiB: 65536,  // 64 MB
    parallelism: 4
);

CON.5.A6 - Distruzione chiavi:

// Distruzione automatica chiavi via IDisposable
using var keyPair = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65);
// ... utilizzo ...
// Dispose() chiama SecureZeroMemory sui byte della chiave privata

OPS.1.1.5 Logging

Modulo: Logging7)

Requisito ID BSI Implementazione WvdS Stato
Creazione policy di logging OPS.1.1.5.A1 Eventi documentati
Garanzia integrita OPS.1.1.5.A3 Log di audit firmati
Protezione dati di log OPS.1.1.5.A4 Log cifrati

Eventi registrabili

Evento Dati Scopo
KeyGeneration Algoritmo, KeyId, Timestamp Audit-Trail
CertificateCreation Subject, Serial, Validita Monitoraggio PKI
SignatureOperation KeyId, DataHash, Modalita Tracciabilita
ValidationResult CertChain, Stato, Motivo Security monitoring

APP.3.1 Applicazioni web e servizi web

Rilevanza: Configurazione TLS per server web

Requisito ID BSI Implementazione WvdS Stato
Cifratura TLS APP.3.1.A14 Certificati TLS ibridi
Autenticazione sicura APP.3.1.A15 mTLS con certificati PQ
// Certificato server ibrido per TLS
var serverCert = request.CreateServerCertificate(
    intermediateCa,
    dnsNames: new[] { "api.example.com" },
    mode: CryptoMode.Hybrid  // ECDSA + ML-DSA
);

NET.3.1 Router e Switch

Rilevanza: Dispositivi di rete con certificati

Requisito ID BSI Implementazione WvdS Stato
Proteggere accesso management NET.3.1.A4 Certificati mTLS
Protocolli sicuri NET.3.1.A9 SSH/TLS con PQ

Checklist documentazione per auditor

Per audit BSI utilizzare questa checklist:

# Punto di verifica Documentazione
———–———-
1 Concetto crypto documentato Concetti
2 Algoritmi conformi NIST Riferimenti FIPS 203/204
3 Generazione chiavi via CSPRNG Sorgente OpenSSL 3.6
4 Derivazione chiavi documentata API KeyDerivation
5 Distruzione sicura chiavi Pattern IDisposable nel codice
6 Crittografia ibrida CryptoMode.Hybrid
7 Gestione certificati Scenari PKI

BSI TR-03116 (Specifiche crittografiche)

La direttiva tecnica BSI TR-031168) definisce specifiche crittografiche concrete:

Specifica TR-03116 Parte Conformita WvdS
TLS 1.3 Cipher Suites Parte 4 ✅ Supportato
Algoritmi firma Parte 1 ✅ ML-DSA (NIST)
Scambio chiavi Parte 4 ✅ ML-KEM (NIST)
Funzioni hash Parte 1 ✅ SHA-256/384/512

Approfondimenti


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

3)
BSI TR-02102-1: „Kryptographische Verfahren: Empfehlungen und Schlüssellängen“, Versione 2024-01, Capitolo 3: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinien/TR02102/BSI-TR-02102.pdf
6)
NIST SP 800-56C Rev. 2: „Recommendation for Key-Derivation Methods in Key-Establishment Schemes“: https://csrc.nist.gov/pubs/sp/800/56/c/r2/final