Zum Hauptinhalt springen

Architekturüberblick

Gilt für:
PQC ScannerRustLinuxmacOSWindows

Einführung​

Der DuoKey PQC Scanner ist ein umfassendes Werkzeug zur Bewertung der Post-Quantum-Kryptografie-(PQC-)Bereitschaft, das in Rust für hochperformante, plattformübergreifende Entdeckung und Analyse kryptografischer Assets entwickelt wurde.

Architektur auf hoher Ebene​

PQC-Scanner-Architektur

Hochleistungsfähige Rust-CLI für die Erkennung und Risikobewertung post-quantenkryptografischer Verfahren

Ffilesystem
Ddomain
Aagent
Nnetwork
Ssourcecode
Ccompliance
Wserve
Ici
Nservicenow
Bcbom
Clap 4.5Tokio Async10 Unterbefehle
Befehlsweiterleitung
▼

Infrastruktur-Scanner

Async I/O
Dateisystem
PEM, DER, JKS, PKCS#12
Domain / TLS
Rustls-Handshake-Erfassung
Agent
Systemweite Inventarisierung
Netzwerk
Passive Paketerfassung
+
SCAN

Erweiterte Scanner

Erweiterbar
Quellcode
150+ Regeln, 8 Sprachen
Cloud KMS
AWS, Azure, GCP
SSH-Schlüssel
Host-Schlüssel-Algorithmen
Compliance
8+ Frameworks
Kryptografische Rohdaten
▼
Parser-Schicht
PEM
x509-parser
DER
x509-parser
PKCS#12
x509-parser
Win Store
schannel
CBOM
serde
▼
Krypto-Detektor
Algorithmus-Identifikation per OID-Lookup
RSAECDSADSAEd25519PQC
Risikobewerter
7-Faktoren-gewichteter Quantenanfälligkeits-Score
P0
P1
P2
P3
P4
Bewertete Befunde
▼
Ausgabe-Formatierer
{}
JSON
Maschinenlesbar
Ym
YAML
Menschenlesbar
<>
HTML
Stakeholder-Berichte
>>_
Terminal
ANSI-Farbausgabe
Cd
CycloneDX
CBOM-1.7-Export
Sr
SARIF
CI/CD-Integration
Bericht erstellt
▼

PQC-Bereitschaftsbewertung

Vollständiges kryptografisches Inventar mit Quantenanfälligkeits-Bewertung und Migrationsfahrplan

Erkennung+Risiko-Score= Quantenbereit
Einzelne Binärdatei
Native ausführbare Datei pro Plattform, keine Laufzeitabhängigkeiten
Async-First
Tokio für I/O, Rayon für CPU-gebundene Aufgaben
Zero OpenSSL
Reines Rust-TLS über Rustls, keine C-Abhängigkeiten
Modulare Scanner
Jeder Befehl ist unabhängig und erweiterbar

Architekturablauf​

1

CLI-Einstiegspunkt (Clap 4.5)

Parst einen von 10 Unterbefehlen (filesystem, domain, agent, network, serve, ci, sourcecode, compliance, servicenow, cbom). Validiert die Eingaben und leitet an den entsprechenden Scanner weiter.

2

Scanner-Ausführung

Der ausgewählte Scanner sammelt kryptografische Rohdaten – TLS-Handshakes, Zertifikatsdateien, Quellcode-Muster, Cloud-KMS-Metadaten oder SSH-Host-Keys. Die Scanner nutzen Tokio für asynchrone I/O und Rayon für die CPU-parallele Verzeichnisdurchquerung.

3

Parser-Schicht (PEM / DER / PKCS#12)

Die Rohdaten werden formatspezifischen Parsern zugeführt, die mithilfe der Crates x509-parser und schannel Zertifikatsmetadaten, Schlüsselalgorithmen und Signaturverfahren extrahieren.

4

Risikobewertung (0-10)

Jeder geparste Fund durchläuft die Risikobewertung, die ihm einen Quantenrisikowert von 0 bis 10 zuweist, ihn einer Schweregradstufe (Kritisch bis Info) zuordnet, eine Priorität (P0-P4) vergibt und Empfehlungen generiert.

5

Ausgabeformatierung

Das bewertete ScanResult wird vom gewählten Ausgabeformatierer serialisiert – JSON, YAML, HTML, ANSI-Terminal oder CycloneDX 1.7 CBOM – und in eine Datei oder nach stdout geschrieben.

Technologie-Stack​

Rust (stable, neueste Version)

  • Speichersicherheit ohne Garbage Collection
  • Zero-Cost-Abstraktionen
  • Furchtlose Nebenläufigkeit
  • Plattformübergreifende Unterstützung (Linux, macOS, Windows)

Der Scanner baut auf einer Reihe etablierter Rust-Bibliotheken auf, gruppiert nach der Rolle, die sie erfüllen:

BereichBibliothekenZweck
TLS und Kryptografierustls, x509-parser, der, pemReines Rust-TLS 1.2/1.3, X.509-Zertifikatsparsing sowie DER/PEM-Dekodierung
Async-RuntimetokioAsynchrone I/O für Netzwerk- und nebenläufiges Scanning
CLI und Serialisierungclap, serde, serde_json, serde_yamlBefehlszeilen-Parsing und JSON/YAML-Serialisierung
Logging und Fehlerbehandlungtracing, tracing-subscriber, anyhow, thiserrorStrukturiertes Logging sowie flexible Fehlertypen für Anwendung und Bibliothek
Dateisystem und Parallelitätwalkdir, rayonRekursive Verzeichnisdurchquerung mit Datenparallelität
Netzwerk-Paketerfassungpcap, pnetLibpcap-basierte Paketerfassung und Paket-Parsing
Fortschrittsanzeigeindicatif, ratatuiFortschrittsbalken und die im Netzwerkmodus verwendete Terminal-UI

Modularchitektur​

Der Scanner ist in klar abgegrenzte funktionale Bereiche gegliedert, jeder mit einer fokussierten Aufgabe:

BereichVerantwortlichkeit
CLIBefehlszeilen-Parsing und Befehlsweiterleitung
CoreErkennung von Krypto-Algorithmen, Quantenrisikobewertung, X.509-Operationen und die Datenbank der Krypto-Algorithmen
ScannerDie vier Scan-Modi – System-Agent, Dateisystem, TLS/Domain und Netzwerk-Paketerfassung
ParserFormatparser für JKS, PKCS#12, PEM, DER und nginx-/apache-Konfigurationsdateien
AusgabeAusgabeformatierer – JSON, YAML, SARIF (für CI/CD) und Terminal
HilfsfunktionenLogging, Fehlerbehandlung und betriebssystemspezifische Helfer

Vier Scan-Modi​

Der Scanner arbeitet in vier verschiedenen Modi, die jeweils für bestimmte Entdeckungsszenarien optimiert sind:

Algorithmus zur Quantenrisikobewertung​

Der Scanner verwendet ein Mehrkriterien-Bewertungssystem, das mehrere gewichtete Faktoren zu einem Endwert von 0 bis 100 zusammenführt, der anschließend einer Prioritätsstufe zugeordnet wird. Die Faktoren und ihre Gewichtungen sind:

FaktorGewichtung
Quantenrisiko30 %
Geschäftskritikalität25 %
Datensensibilität20 %
Exposition10 %
Compliance10 %
Migrationskomplexität3 %
Migrationskosten2 %

Der resultierende Wert wird einer von fünf Prioritätsstufen zugeordnet:

PrioritätBedeutungEmpfohlene Maßnahme
P0KritischSofortige Maßnahme erforderlich
P1HochMaßnahme innerhalb von 3 Monaten
P2MittelMaßnahme innerhalb von 6 Monaten
P3NiedrigMaßnahme innerhalb von 12 Monaten
P4InfoBeobachten

Erkannte anfällige Algorithmen

AlgorithmusSchlüsselgrößeQuantenrisikowertSchweregrad
RSA< 2048-Bit10/10Kritisch
RSA2048-Bit8/10Hoch
RSA3072-Bit6/10Mittel
RSA4096-Bit4/10Mittel
ECDSAP-2568/10Hoch
ECDSAP-3847/10Hoch
ECDSAP-5216/10Mittel
DSABeliebig9/10Kritisch
3DESN/V10/10Kritisch
RC4N/V10/10Kritisch

Ausgabeformate​

Der Scanner unterstützt mehrere Ausgabeformate für unterschiedliche Anwendungsfälle:

Das standardmäßige maschinenlesbare Format. Jeder JSON-Report enthält die Scan-Metadaten, die Liste der Funde, eine Risikozusammenfassung und eine Reihe von Empfehlungen.

Leistungsmerkmale​

Skalierbarkeit

  • TLS-Endpunkte: Kann Tausende pro Stunde scannen
  • Dateisystem: Verarbeitet über 100.000 Dateien effizient mit parallelem Scanning
  • Speicher: Geringer Speicherbedarf (typischerweise <100 MB)
  • CPU: Multithreaded für optimale Leistung

Benchmarks

Das Scannen des Dateisystems ist hocheffizient: In internen Benchmarks verarbeitet der Scanner rund 1.000 PEM-Zertifikate in etwa 50 Millisekunden.

Plattformübergreifende Unterstützung​

PlattformStatusHinweise
LinuxVolle UnterstützungBevorzugte Plattform, alle Funktionen
macOSVolle UnterstützungIntel & Apple Silicon
WindowsVolle UnterstützungWindows 10/11, Server 2019+

Integrationsfähigkeiten​

Der Scanner kann als Bibliothek eingebettet werden. Ein Aufrufer konfiguriert einen Scan – wählt den Modus (zum Beispiel Domain), die Ziele und das Ausgabeformat – führt ihn aus und liest die Ergebnisse zurück, einschließlich des Gesamtwerts für die PQC-Bereitschaft.

Sicherheitsaspekte​

Berechtigungsanforderungen

ModusErforderliche Berechtigung
AgentenmodusErfordert root/admin für vollständigen Systemzugriff
NetzwerkmodusErfordert CAP_NET_RAW oder gleichwertig
DateisystemmodusStandard-Benutzerberechtigungen ausreichend
DomänenmodusStandard-Benutzerberechtigungen ausreichend

Datenschutz

Wichtig

Private Schlüssel werden niemals extrahiert oder exportiert. Es werden nur Metadaten und öffentliche Informationen erfasst. Die gesamte Netzwerkkommunikation ist verschlüsselt (TLS 1.3). Audit-Logging ist für alle Operationen aktiviert.

Nächste Schritte​