====== BSI IT-Grundschutz preslikava ====== Preslikava knjižnice WvdS za post-kvantno kriptografijo na gradnike BSI IT-Grundschutz. ---- ===== Pregled ===== Kompendij 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)) določa varnostne zahteve za IT-sisteme. Ta stran dokumentira, kako WvdS izpolnjuje ustrezne gradnike. flowchart LR subgraph BSI["BSI IT-Grundschutz"] CON1["CON.1
Kripto-koncept"] CON5["CON.5
Upravljanje
ključev"] OPS115["OPS.1.1.5
Beleženje"] APP31["APP.3.1
Spletne aplikacije"] NET31["NET.3.1
Usmerjevalniki/stikala"] end subgraph WVDS["WvdS PQ-Crypto"] CFG["CryptoConfig"] KDF["KeyDerivation"] LOG["Revizijski dogodki"] TLS["TLS-razširitve"] CERT["X.509 certifikati"] 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 Kripto-koncept ===== **Gradnik:** Koncepti in postopki - Kripto-koncept((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)) ^ Zahteva ^ BSI-ID ^ WvdS-izvedba ^ Status ^ | Izbira primernih kriptografskih postopkov | CON.1.A1 | ML-DSA (FIPS 204), ML-KEM (FIPS 203) | ✅ | | Varnostna kopija kriptografskih ključev | CON.1.A2 | KeyDerivation, PEM-izvoz s šifriranjem | ✅ | | Šifriranje komunikacije | CON.1.A3 | TLS 1.3 s PQ-algoritmi | ✅ | | Primerne dolžine ključev | CON.1.A4 | ML-DSA-44/65/87, ML-KEM-512/768/1024 | ✅ | | Dokumentiranje kripto-koncepta | CON.1.A5 | [[..:..:konzepte:start|Dokumentacija konceptov]] | ✅ | | Redna preverjanja | CON.1.A6 | Verzioniran API, NIST-skladnost | ✅ | ==== Podrobnosti izvedbe ==== **CON.1.A1 - Izbira primernih kriptografskih postopkov:** // WvdS uporablja izključno NIST-standardizirane algoritme CryptoConfig.DefaultMode = CryptoMode.Hybrid; // Razpoložljivi algoritmi: // - ML-DSA-44/65/87 (NIST FIPS 204) // - ML-KEM-512/768/1024 (NIST FIPS 203) // - RSA-2048/3072/4096 (klasično) // - ECDSA P-256/384/521 (klasično) **CON.1.A4 - Primerne dolžine ključev:** Dolžine ključev ustrezajo BSI-priporočilom((BSI TR-02102-1: "Kryptographische Verfahren: Empfehlungen und Schlüssellängen", Version 2024-01, Kapitel 3: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinien/TR02102/BSI-TR-02102.pdf)): ^ Algoritem ^ Varnostna raven ^ BSI-priporočilo ^ | ML-DSA-44 | NIST Level 2 (~128 bitov) | Kratkoživljajoči certifikati | | ML-DSA-65 | NIST Level 3 (~192 bitov) | Standardno priporočilo | | ML-DSA-87 | NIST Level 5 (~256 bitov) | Najvišja varnost | ---- ===== CON.5 Razvoj in uporaba sistemov za upravljanje ključev ===== **Gradnik:** Upravljanje ključev((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)) ^ Zahteva ^ BSI-ID ^ WvdS-izvedba ^ Status ^ | Analiza zahtev | CON.5.A1 | Dokumentiran API, scenariji | ✅ | | Generiranje ključev | CON.5.A2 | OpenSSL 3.6 CSPRNG | ✅ | | Shranjevanje ključev | CON.5.A3 | Šifriran PEM-izvoz | ✅ | | Distribucija ključev | CON.5.A4 | X.509-certifikati, CSR-potek | ✅ | | Izpeljava ključev | CON.5.A5 | HKDF, PBKDF2, Argon2id | ✅ | | Uničenje ključev | CON.5.A6 | SecureZeroMemory, IDisposable | ✅ | | Arhiviranje ključev | CON.5.A7 | PEM/PFX z zaščito z geslom | ✅ | ==== Podrobnosti izvedbe ==== **CON.5.A5 - Izpeljava ključev:** Funkcije za izpeljavo ključev ustrezajo BSI-priporočilom((BSI TR-02102-1, Kapitel 8 "Key Derivation Functions": https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinien/TR02102/BSI-TR-02102.pdf)) in NIST-standardom((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) za izpeljavo ključev var derivedKey = KeyDerivationExtensions.DeriveKey( sharedSecret, salt: cryptoRandom, info: contextInfo, outputLength: 32, HashAlgorithmName.SHA256 ); // Argon2id za izpeljavo na podlagi gesla (Memory-Hard) var key = OpenSslKdf.Argon2id( password, salt, outputLength: 32, iterations: 3, memoryKiB: 65536, // 64 MB parallelism: 4 ); **CON.5.A6 - Uničenje ključev:** // Samodejno uničenje ključev preko IDisposable using var keyPair = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65); // ... uporaba ... // Dispose() pokliče SecureZeroMemory na bajtih zasebnega ključa ---- ===== OPS.1.1.5 Beleženje ===== **Gradnik:** Beleženje((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)) ^ Zahteva ^ BSI-ID ^ WvdS-izvedba ^ Status ^ | Ustvarjanje smernic za beleženje | OPS.1.1.5.A1 | Dokumentirani dogodki | ✅ | | Zagotavljanje celovitosti | OPS.1.1.5.A3 | Podpisani revizijski dnevniki | ⏳ | | Zaščita podatkov beleženja | OPS.1.1.5.A4 | Šifrirani dnevniki | ⏳ | ==== Dogodki za beleženje ==== ^ Dogodek ^ Podatki ^ Namen ^ | KeyGeneration | Algorithm, KeyId, Timestamp | Revizijska sled | | CertificateCreation | Subject, Serial, Validity | Nadzor PKI | | SignatureOperation | KeyId, DataHash, Mode | Sledljivost | | ValidationResult | CertChain, Status, Reason | Varnostni nadzor | ---- ===== APP.3.1 Spletne aplikacije in spletne storitve ===== **Relevantnost:** TLS-konfiguracija za spletne strežnike ^ Zahteva ^ BSI-ID ^ WvdS-izvedba ^ Status ^ | TLS-šifriranje | APP.3.1.A14 | Hibridni TLS-certifikati | ✅ | | Varna avtentikacija | APP.3.1.A15 | mTLS s PQ-certifikati | ✅ | // Hibridni strežniški certifikat za TLS var serverCert = request.CreateServerCertificate( intermediateCa, dnsNames: new[] { "api.example.com" }, mode: CryptoMode.Hybrid // ECDSA + ML-DSA ); ---- ===== NET.3.1 Usmerjevalniki in stikala ===== **Relevantnost:** Omrežne naprave s certifikati ^ Zahteva ^ BSI-ID ^ WvdS-izvedba ^ Status ^ | Zavarovanje upravljalskega dostopa | NET.3.1.A4 | mTLS-certifikati | ✅ | | Varni protokoli | NET.3.1.A9 | SSH/TLS s PQ | ✅ | ---- ===== Kontrolni seznam dokazil za revizorje ===== **Za BSI-revizije uporabite ta kontrolni seznam:** | # | Kontrolna točka | Dokazilo | ✓ | |---|-----------------|----------|---| | 1 | Kripto-koncept dokumentiran | [[..:..:konzepte:start|Koncepti]] | ☐ | | 2 | NIST-skladni algoritmi | Reference FIPS 203/204 | ☐ | | 3 | Generiranje ključev preko CSPRNG | Izvorna koda OpenSSL 3.6 | ☐ | | 4 | Izpeljava ključev dokumentirana | [[..:..:api:keyderivation:start|KeyDerivation API]] | ☐ | | 5 | Varno uničenje ključev | Vzorec IDisposable v kodi | ☐ | | 6 | Hibridna kriptografija | CryptoMode.Hybrid | ☐ | | 7 | Upravljanje certifikatov | [[..:..:szenarien:start|PKI-scenariji]] | ☐ | ---- ===== BSI TR-03116 (Kriptografske zahteve) ===== Tehnična smernica 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)) določa konkretne kriptografske zahteve: ^ Zahteva ^ TR-03116 del ^ WvdS-skladnost ^ | TLS 1.3 Cipher Suites | Del 4 | ✅ Podprto | | Podpisni algoritmi | Del 1 | ✅ ML-DSA (NIST) | | Izmenjava ključev | Del 4 | ✅ ML-KEM (NIST) | | Zgoščevalne funkcije | Del 1 | ✅ SHA-256/384/512 | ---- ===== Nadaljnje branje ===== * [[.:start|Pregled skladnosti]] * [[.:nis2|NIS2-direktiva]] * [[.:audit-checkliste|Popoln kontrolni seznam za revizije]] * [[https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html|BSI IT-Grundschutz (zunanji)]] ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional// {{tag>bsi it-grundschutz con1 con5 compliance audit}}