Mapping der WvdS Post-Quantum-Kryptographie-Bibliothek auf BSI IT-Grundschutz-Bausteine.
Das BSI IT-Grundschutz-Kompendium1) definiert Sicherheitsanforderungen für IT-Systeme. Diese Seite dokumentiert, wie WvdS die relevanten Bausteine erfüllt.
Baustein: Konzeption und Vorgehensweisen - Kryptokonzept2)
| Anforderung | BSI-ID | WvdS-Umsetzung | Status |
|---|---|---|---|
| Auswahl geeigneter kryptographischer Verfahren | CON.1.A1 | ML-DSA (FIPS 204), ML-KEM (FIPS 203) | ✅ |
| Datensicherung von kryptographischen Schlüsseln | CON.1.A2 | KeyDerivation, PEM-Export mit Verschlüsselung | ✅ |
| Verschlüsselung der Kommunikation | CON.1.A3 | TLS 1.3 mit PQ-Algorithmen | ✅ |
| Geeignete Schlüssellängen | CON.1.A4 | ML-DSA-44/65/87, ML-KEM-512/768/1024 | ✅ |
| Kryptokonzept dokumentieren | CON.1.A5 | Konzepte-Dokumentation | ✅ |
| Regelmäßige Überprüfung | CON.1.A6 | Versionierte API, NIST-Konformität | ✅ |
CON.1.A1 - Auswahl geeigneter kryptographischer Verfahren:
// WvdS verwendet ausschließlich NIST-standardisierte Algorithmen CryptoConfig.DefaultMode = CryptoMode.Hybrid; // Verfügbare Algorithmen: // - ML-DSA-44/65/87 (NIST FIPS 204) // - ML-KEM-512/768/1024 (NIST FIPS 203) // - RSA-2048/3072/4096 (klassisch) // - ECDSA P-256/384/521 (klassisch)
CON.1.A4 - Geeignete Schlüssellängen:
Die Schlüssellängen entsprechen den BSI-Empfehlungen3):
| Algorithmus | Sicherheitsniveau | BSI-Empfehlung |
|---|---|---|
| ML-DSA-44 | NIST Level 2 (~128 Bit) | Kurzlebige Zertifikate |
| ML-DSA-65 | NIST Level 3 (~192 Bit) | Standard-Empfehlung |
| ML-DSA-87 | NIST Level 5 (~256 Bit) | Höchste Sicherheit |
Baustein: Schlüsselmanagement4)
| Anforderung | BSI-ID | WvdS-Umsetzung | Status |
|---|---|---|---|
| Anforderungsanalyse | CON.5.A1 | Dokumentierte API, Szenarien | ✅ |
| Schlüsselerzeugung | CON.5.A2 | OpenSSL 3.6 CSPRNG | ✅ |
| Schlüsselspeicherung | CON.5.A3 | Verschlüsselter PEM-Export | ✅ |
| Schlüsselverteilung | CON.5.A4 | X.509-Zertifikate, CSR-Workflow | ✅ |
| Schlüsselableitung | CON.5.A5 | HKDF, PBKDF2, Argon2id | ✅ |
| Schlüsselvernichtung | CON.5.A6 | SecureZeroMemory, IDisposable | ✅ |
| Schlüsselarchivierung | CON.5.A7 | PEM/PFX mit Passwortschutz | ✅ |
CON.5.A5 - Schlüsselableitung:
Die Schlüsselableitungsfunktionen entsprechen den BSI-Empfehlungen5) und NIST-Standards6).
// HKDF (RFC 5869) für Schlüsselableitung var derivedKey = KeyDerivationExtensions.DeriveKey( sharedSecret, salt: cryptoRandom, info: contextInfo, outputLength: 32, HashAlgorithmName.SHA256 ); // Argon2id für passwortbasierte Ableitung (Memory-Hard) var key = OpenSslKdf.Argon2id( password, salt, outputLength: 32, iterations: 3, memoryKiB: 65536, // 64 MB parallelism: 4 );
CON.5.A6 - Schlüsselvernichtung:
// Automatische Schlüsselvernichtung via IDisposable using var keyPair = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65); // ... Verwendung ... // Dispose() ruft SecureZeroMemory auf private key bytes
Baustein: Protokollierung7)
| Anforderung | BSI-ID | WvdS-Umsetzung | Status |
|---|---|---|---|
| Erstellung einer Protokollierungsrichtlinie | OPS.1.1.5.A1 | Dokumentierte Events | ✅ |
| Sicherstellung der Integrität | OPS.1.1.5.A3 | Signierte Audit-Logs | ⏳ |
| Schutz der Protokolldaten | OPS.1.1.5.A4 | Verschlüsselte Logs | ⏳ |
| Event | Daten | Zweck |
|---|---|---|
| KeyGeneration | Algorithm, KeyId, Timestamp | Audit-Trail |
| CertificateCreation | Subject, Serial, Validity | PKI-Überwachung |
| SignatureOperation | KeyId, DataHash, Mode | Nachvollziehbarkeit |
| ValidationResult | CertChain, Status, Reason | Sicherheitsmonitoring |
Relevanz: TLS-Konfiguration für Webserver
| Anforderung | BSI-ID | WvdS-Umsetzung | Status |
|---|---|---|---|
| TLS-Verschlüsselung | APP.3.1.A14 | Hybride TLS-Zertifikate | ✅ |
| Sichere Authentisierung | APP.3.1.A15 | mTLS mit PQ-Zertifikaten | ✅ |
// Hybrides Server-Zertifikat für TLS var serverCert = request.CreateServerCertificate( intermediateCa, dnsNames: new[] { "api.example.com" }, mode: CryptoMode.Hybrid // ECDSA + ML-DSA );
Relevanz: Netzwerkgeräte mit Zertifikaten
| Anforderung | BSI-ID | WvdS-Umsetzung | Status |
|---|---|---|---|
| Management-Zugang absichern | NET.3.1.A4 | mTLS-Zertifikate | ✅ |
| Sichere Protokolle | NET.3.1.A9 | SSH/TLS mit PQ | ✅ |
Für BSI-Audits verwenden Sie diese Checkliste:
| # | Prüfpunkt | Nachweis | ✓ |
| — | ———– | ———- | — |
| 1 | Kryptokonzept dokumentiert | Konzepte | ☐ |
| 2 | NIST-konforme Algorithmen | FIPS 203/204 Referenzen | ☐ |
| 3 | Schlüsselerzeugung via CSPRNG | OpenSSL 3.6 Source | ☐ |
| 4 | Schlüsselableitung dokumentiert | KeyDerivation API | ☐ |
| 5 | Sichere Schlüsselvernichtung | IDisposable-Pattern im Code | ☐ |
| 6 | Hybride Kryptographie | CryptoMode.Hybrid | ☐ |
| 7 | Zertifikatsmanagement | PKI-Szenarien | ☐ |
Die BSI Technische Richtlinie TR-031168) definiert konkrete kryptographische Vorgaben:
| Vorgabe | TR-03116 Teil | WvdS-Konformität |
|---|---|---|
| TLS 1.3 Cipher Suites | Teil 4 | ✅ Unterstützt |
| Signaturalgorithmen | Teil 1 | ✅ ML-DSA (NIST) |
| Schlüsselaustausch | Teil 4 | ✅ ML-KEM (NIST) |
| Hashfunktionen | Teil 1 | ✅ SHA-256/384/512 |
Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional