====== Mapping BSI IT-Grundschutz ======
Mapping della libreria WvdS Post-Quantum-Cryptography sui moduli BSI IT-Grundschutz.
----
===== Panoramica =====
Il compendio BSI IT-Grundschutz((BSI IT-Grundschutz: https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html)) 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 crittografico((BSI CON.1: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/Kompendium_Einzel_PDFs_2023/05_CON_Konzepte_und_Vorgehensweisen/CON_1_Kryptokonzept_Edition_2023.pdf))
^ 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 | [[..:..:..:konzepte:start|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 BSI((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)):
^ 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 chiavi((BSI CON.5: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/Kompendium_Einzel_PDFs_2023/05_CON_Konzepte_und_Vorgehensweisen/CON_5_Entwicklung_und_Einsatz_von_Schluesselmanagementsystemen_Edition_2023.pdf))
^ 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 BSI((BSI TR-02102-1, Capitolo 8 "Key Derivation Functions": https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinien/TR02102/BSI-TR-02102.pdf)) e agli standard NIST((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)).
// 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:** Logging((BSI OPS.1.1.5: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/Kompendium_Einzel_PDFs_2023/06_OPS_Betrieb/OPS_1_1_5_Protokollierung_Edition_2023.pdf))
^ 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 | [[..:..:..:konzepte:start|Concetti]] | ☐ |
| 2 | Algoritmi conformi NIST | Riferimenti FIPS 203/204 | ☐ |
| 3 | Generazione chiavi via CSPRNG | Sorgente OpenSSL 3.6 | ☐ |
| 4 | Derivazione chiavi documentata | [[..:..:..:api:keyderivation:start|API KeyDerivation]] | ☐ |
| 5 | Distruzione sicura chiavi | Pattern IDisposable nel codice | ☐ |
| 6 | Crittografia ibrida | CryptoMode.Hybrid | ☐ |
| 7 | Gestione certificati | [[..:..:..:szenarien:start|Scenari PKI]] | ☐ |
----
===== BSI TR-03116 (Specifiche crittografiche) =====
La direttiva tecnica BSI TR-03116((BSI TR-03116: https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/Technische-Richtlinien/TR-nach-Thema-sortiert/tr03116/TR-03116_node.html)) 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 =====
* [[.:start|Panoramica compliance]]
* [[.:nis2|Direttiva NIS2]]
* [[.:audit-checkliste|Checklist di audit completa]]
* [[https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html|BSI IT-Grundschutz (esterno)]]
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//
{{tag>bsi it-grundschutz con1 con5 compliance audit}}