====== 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}}