Farbschema: Riviera
Sie befinden sich hier: start » de » Dokumentation » Post-Quanten-Kryptografie » WvdS Crypto Service – Überblick » Erste Schritte » Bauen und testen

Bauen und testen

Diese Anleitung führt vom frischen Klon zu zwei gebauten und geprüften Bauformen und zu einem laufenden Windows-Dienst, der eine erste Anfrage beantwortet. Rechnen Sie beim ersten Mal mit 10 bis 20 Minuten, den größten Teil davon für den Bau von OpenSSL.

Voraussetzung: Die Werkzeuge aus Voraussetzungen sind installiert.

1. L4Re-Bauform bauen und testen

Wechseln Sie in das Verzeichnis der Bauform. Aus der Wurzel des Repositorys heraus greift die .cargo/config.toml der Bauform nicht.

cd l4re
cargo test

Unter Windows muss Strawberry Perl im Suchpfad vor anderen Perl-Fassungen stehen, etwa mit $env:PATH = "C:\Strawberry\perl\bin;" + $env:PATH.

Am Ende meldet jede Testgruppe test result: ok. Die Tests prüfen unter anderem, dass das gebundene OpenSSL ML-DSA kennt, dass eine manipulierte Signatur abgelehnt wird und dass die Testvektoren die tatsächlichen Größen von Signaturen und Chiffraten haben.

Für die Linux-Ziele:

cd l4re
cargo build --release --target x86_64-unknown-linux-gnu
cargo build --release --target aarch64-unknown-linux-gnu   # Querübersetzung

Ein so gebautes Programm führt außerhalb von L4Re eine Vorführung aus und endet; es nimmt keine Anfragen an.

2. Windows-Bauform bauen und testen

Geben Sie das OpenSSL an, gegen das gebaut werden soll, und bauen Sie aus dem Verzeichnis win:

$env:OPENSSL_DIR = "C:\OpenSSL-3.6"   # Ihr Installationsverzeichnis
cd win
cargo test
cargo build --release

Enthält lib\ nur statische Bibliotheken, setzen Sie zusätzlich $env:OPENSSL_STATIC = "1". Das Programm liegt danach unter win\target\release\wvds_crypto_service.exe.

3. Windows-Dienst starten

.\target\release\wvds_crypto_service.exe --no-tui --single

Das Startbanner nennt die tatsächlich gebundene OpenSSL-Fassung, etwa OpenSSL 3.5.4 30 Sep 2025. Danach meldet der Dienst Starting gateway: Default Gateway on \\.\pipe\wvds_crypto und wartet auf Verbindungen.

4. Erste Anfrage senden

Öffnen Sie eine zweite PowerShell und fragen Sie den Dienst nach seinem Zustand:

$pipe = [System.IO.Pipes.NamedPipeClientStream]::new('.', 'wvds_crypto', 'InOut')
$pipe.Connect(5000)
$utf8 = [System.Text.UTF8Encoding]::new($false)
$reader = [System.IO.StreamReader]::new($pipe, $utf8)
$writer = [System.IO.StreamWriter]::new($pipe, $utf8)
$writer.NewLine = "`n"; $writer.AutoFlush = $true
$writer.WriteLine('{"operation":"info","request_id":"i1"}')
$reader.ReadLine()
$pipe.Dispose()

Die Antwort ist eine JSON-Zeile mit "success":true, "status":"running" und der Liste der Verfahren. Wie Sie Schlüssel erzeugen, signieren und verschlüsseln, zeigt Den Windows-Dienst ansprechen.

5. Testvektoren unabhängig prüfen

Die Testvektoren der L4Re-Bauform lassen sich gegen ein beliebiges OpenSSL ab 3.5 nachrechnen:

python tools/verify-test-vectors.py l4re/crypto_test_vectors.json "C:\Program Files\OpenSSL\bin\libcrypto-3-x64.dll"

Das Skript meldet 8 vectors, 0 failures, wenn jeder Vektor stimmt. Einzelheiten: Testvektoren prüfen.

Nächste Schritte

de/wiki/pqcrypt/svc/getting-started/build-and-test.txt · Zuletzt geändert: von Wolfgang van der Stille