Farbschema: Riviera
Sie befinden sich hier: start » de » Dokumentation » Post-Quanten-Kryptografie » WvdS Crypto Service – Überblick » Anleitungen » Eigenes OpenSSL einbinden

Eigenes OpenSSL einbinden

Diese Anleitung zeigt, wie Sie beide Bauformen gegen ein OpenSSL Ihrer Wahl bauen, etwa eine geprüfte Fassung 3.6 Ihres Hauses statt des mitgebauten OpenSSL 3.5.4. Das ist der übliche Weg für ausgelieferte Pakete, weil Sie dann Sicherheitsupdates von OpenSSL selbst einspielen können.

Was das OpenSSL mitbringen muss

  • Fassung 3.5 oder neuer.
  • include\openssl\*.h und die Bibliotheken libcrypto und libssl für die Zielarchitektur, unter Windows als lib\libcrypto.lib und lib\libssl.lib.
  • Für dynamisches Binden die passenden Laufzeitbibliotheken, unter Windows libcrypto-3-x64.dll und libssl-3-x64.dll, die zur Laufzeit im Suchpfad des Programms liegen müssen.

Windows-Bauform

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

Enthält das Verzeichnis nur statische Bibliotheken, setzen Sie vorher $env:OPENSSL_STATIC = "1". OPENSSL_DIR aus der Umgebung geht dem Vorgabewert in win/.cargo/config.toml immer vor.

L4Re-Bauform

Schalten Sie das mitgebaute OpenSSL ab und nennen Sie das eigene:

export OPENSSL_DIR=/opt/openssl-3.6
cd l4re
cargo build --release --target x86_64-unknown-linux-gnu \
    --no-default-features --features pqc,openssl-system

Für Querübersetzung mit vorgebauten Bibliotheken je Architektur gibt es stattdessen L4RE_OPENSSL_DIR; siehe Bauoptionen und Konfiguration.

Prüfen, welches OpenSSL wirkt

  • Windows-Bauform: Das Startbanner zeigt die gebundene Fassung, etwa OpenSSL: OpenSSL 3.6.0 ….
  • L4Re-Bauform: Beim Start schreibt der Dienst OpenSSL version: … ins Protokoll.
  • Beide: cargo test enthält einen Test, der scheitert, wenn das gebundene OpenSSL kein ML-DSA kennt.

Unter Linux lädt ein dynamisch gebundenes Programm gern das libcrypto des Systems statt des eigenen, wenn der Suchpfad nicht stimmt. Ist das System-OpenSSL älter als 3.5, scheitern dann alle Post-Quanten-Anfragen. Prüfen Sie mit ldd, welche Bibliothek tatsächlich geladen wird, oder binden Sie statisch mit OPENSSL_STATIC=1.

Verwandte Themen

de/wiki/pqcrypt/svc/how-to/use-own-openssl-build.txt · Zuletzt geändert: von Wolfgang van der Stille