ADMIN

2026

01

2025-12-29T12:00:00

Infrastruktur und Rechenzentrum

PRAXIS

048

Open-Source-Tipp

Quantencomputer

Verschlüsselung

Kryptographie

Post-Quanten-Algorithmen implementieren

Zukunftsfest

von Thorsten Scherf

Veröffentlicht in Ausgabe 01/2026 - PRAXIS

Die rasante Entwicklung im Bereich der Quantencomputer stellt die moderne Kryptographie vor neue Herausforderungen. Klassische Verschlüsselungsverfahren wie RSA oder ECC könnten dadurch schon in wenigen Jahren als unsicher gelten. Grund genug, sich schleunigst mit dem Thema Post-Quanten-Kryptographie auseinander zu setzen. Der Open-Source-Tipp in diesem Monat zeigt, wie dies sehr einfach gelingt.

Die meisten asymetrischen Verschlüsselungsverfahren basieren auf mathematischen Problemen wie der Faktorisierung großer Zahlen oder dem diskreten Logarithmus. Sollten in Zukunft Quantencomputer zur Verfügung stehen, verwenden diese spezielle Algorithmen, mit deren Hilfe sich derartige mathematische Probleme in kurzer Zeit lösen lassen. Dies lässt sich bereits heute anhand von Modellen simulieren.
Die aktuell eingesetzten Verschlüsselungsverfahren sind damit leicht knackbar und es ist absehbar, dass diese bereits in wenigen Jahren als nicht mehr sicher gelten. Des Weiteren ist zu bedenken, dass Quantencomputer heute verschlüsselte Daten in Zukunft entschlüsseln könnten – getreu dem Motto "harvest now, decrypt later". Somit sollten bereits heute Verschlüsselungsmethoden der Post-Quanten-Kryptographie (PQC) zum Einsatz kommen, um vor solchen Angriffen geschützt zu sein.
In der Post-Quanten-Kryptographie kommen kryptographische Verfahren zum Einsatz, die auf mathematischen Problemen basieren, die selbst für Quantencomputer schwer bis gar nicht zu lösen sind. Viele davon basieren auf der sogenannten Gitter-Problematik. Ein bekanntes Beispiel hierfür ist das "Shortest Vector Problem" (SVP) [1]. Hierbei geht es darum, in einem Gitter den kürzesten Vektor zu finden, der nicht null ist. Aktuell sind keine Quantenalgorithmen bekannt, die ein solches Problem effizienter lösen als klassische Algorithmen.
Die meisten asymetrischen Verschlüsselungsverfahren basieren auf mathematischen Problemen wie der Faktorisierung großer Zahlen oder dem diskreten Logarithmus. Sollten in Zukunft Quantencomputer zur Verfügung stehen, verwenden diese spezielle Algorithmen, mit deren Hilfe sich derartige mathematische Probleme in kurzer Zeit lösen lassen. Dies lässt sich bereits heute anhand von Modellen simulieren.
Die aktuell eingesetzten Verschlüsselungsverfahren sind damit leicht knackbar und es ist absehbar, dass diese bereits in wenigen Jahren als nicht mehr sicher gelten. Des Weiteren ist zu bedenken, dass Quantencomputer heute verschlüsselte Daten in Zukunft entschlüsseln könnten – getreu dem Motto "harvest now, decrypt later". Somit sollten bereits heute Verschlüsselungsmethoden der Post-Quanten-Kryptographie (PQC) zum Einsatz kommen, um vor solchen Angriffen geschützt zu sein.
In der Post-Quanten-Kryptographie kommen kryptographische Verfahren zum Einsatz, die auf mathematischen Problemen basieren, die selbst für Quantencomputer schwer bis gar nicht zu lösen sind. Viele davon basieren auf der sogenannten Gitter-Problematik. Ein bekanntes Beispiel hierfür ist das "Shortest Vector Problem" (SVP) [1]. Hierbei geht es darum, in einem Gitter den kürzesten Vektor zu finden, der nicht null ist. Aktuell sind keine Quantenalgorithmen bekannt, die ein solches Problem effizienter lösen als klassische Algorithmen.
Übergang zur Post-Quanten-Kryptographie
In der Kryptographie kommen sogenannte "Key Encapsulation Mechanisms" (KEM) [2] zum Einsatz, um hiermit einen Schlüssel zwischen verschiedenen Kommunikationsteilnehmern auszutauschen. Für den Einsatz in der Post-Quanten-Kryptographie hat das amerikanische National Institute of Standards and Technology (NIST) im Jahr 2024 einen KEM-Algorithmus standardisiert, der unter dem Namen ML-KEM [3] bekannt ist. Für digitale Signaturen steht mit ML-DSA [4] ein PQC-Algorithmus zur Verfügung, den das NIST ebenfalls 2024 standardisiert hat. Beide Varianten basieren als Teil einer Sammlung von PQC-Algorithmen auf CRYSTALS-Kyber und CRYSTALS-Dilithium [5] und bedienen sich der erwähnten Gitter-basierten Kryptographie.
Mit QUBIP [6] und Open Quantum Safe (OQS) [7] stehen zwei Open-Source-Projekte zur Verfügung, die sich mit dem Thema PQC beschäftigen. QUBIP ist ein von der Europäischen Union (EU) gesponsertes Projekt, das sich primär darauf konzentriert, Prozesse und Standards zu definieren um PQC auf unterschiedlichsten Plattformen bereitzustellen. OQS hingegen ist eine Schicht tiefer zu finden. Dieses Projekt entwickelt Software, um PQC auf Computerplattformen einzusetzen. Auf der GitHub-Seite [8] des QUBIP-Projekts finden Sie eine Vielzahl dieser Softwarekomponenten.
Mittlerweile setzen einige Linux-Distributionen bereits PQC-Standards ein. In diesem Artikel verwenden wir die aktuelle Version von Fedora, um anhand einiger praktischer Beispiele zu zeigen, wie der Einstieg in die PQC-Welt gelingt. Red Hat, als Sponsor der Fedora-Distribution, ist eng in beide Projekte eingebunden und von daher finden viele Entwicklungen zuerst in Fedora statt, bevor diese in anderen Distributionen zur Verfügung stehen.
PQC-Container laden
Das QUBIP-Projekt stellt eine Referenz-implementierung der PQC-Standards in Form eines Container-Images zur Verfügung. Dieses wird laufend aktualisiert und basiert auf Fedora Rawhide [9]. Mithilfe von Podman oder wahlweise natürlich auch Docker laden Sie das Image wie folgt aus der Registry auf Ihr lokales System:
podman pull quay.io/qubip/ pq-container:latest
Einen Container starten Sie, basierend auf diesem Image, mit dem folgenden Kommando:
podman run --rm -it quay.io/qubip/pq-container
Das Image enthält die beiden Softwarepakete liboqs [10] und oqsprovider [11] aus dem Open-Quantum-Safe-Projekt. Die OQS-Bibliothek stellt verschiedene PQC-Algorithmen zur Verfügung, unter anderem ML-KEM und ML-DSA, sowie ein API für den Zugriff hierauf. Das OQS-Provider-Paket enthält einen Provider für OpenSSL, um aus OpenSSL heraus auf diese Bibliothek zugreifen zu können:
rpm -q liboqs oqsprovider
liboqs-0.12.0-4.fc42.x86_64
oqsprovider-0.8.0-3.fc42.x86_64
openssl list -providers
Providers:
       default
        name: OpenSSL Default Provider
        version: 3.2.4
        status: active
       oqsprovider
        name: OpenSSL OQS Provider
        version: 0.8.0
        status: active
OpenSSL implementiert ab Version 3.5 PQC-Algorithmen selbst, sodass der Einsatz dieses Providers dann nicht mehr notwendig ist.
OpenSSL-Signaturen erzeugen
Das folgende Beispiel zeigt, wie Sie mithilfe von OpenSSL und ML-DSA eine Signatur erzeugen und diese dann auch verifizieren. Erstellen Sie hierfür zuerst ein Schlüsselpaar auf Basis von ML-DSA:
openssl genpkey -algorithm mldsa65 -out mldsa-privatekey.pem
openssl pkey -in mldsa-privatekey.pem -pubout -out mldsa-publickey.pem
Erzeugen Sie dann eine Datei, für die Sie im nächsten Schritt eine Signatur generieren möchten:
echo "Hallo, liebe IT-Administrator Leser." > data.txt
Die Signatur für die Datei legen Sie wie folgt an:
openssl dgst -sign mldsa-privatekey.pem -out signature data.txt
Und schließlich verifizieren Sie mittels der soeben erzeugten Signatur die Integrität der Datei:
openssl dgst -verify mldsa-publickey.pem -signature signature data.txt
Verified OK
Verändern Sie die Datei, so erhalten Sie eine Fehlermeldung.
Systemweite Crypto-Policies
Ganz ähnlich wie mit dem OpenSSL-Provider verhält es sich auch mit den Crypto-Policies, die Fedora seit einigen Jahren einsetzt. Diese stellen ein systemweites Framework dar, das die Nutzung kryptographischer Protokolle und Algorithmen zentral steuert, um so eine einheitliche und sichere Konfiguration über alle unterstützten Crypto-Bibliotheken wie OpenSSL, GnuTLS oder NSS zu gewährleisten. Die aktuell aktivierte Crypto-Policy zeigt Ihnen der folgende Befehl an:
update-crypto-policies --show
DEFAULT:TEST-PQ
Das Policy-Modul TEST-PQ sorgt für eine einheitliche PQC-Konfiguration der einzelnen Crypto-Bibliotheken und Tools, die hierauf zurückgreifen. In späteren Versionen findet diese Konfiguration ihren Weg in das DEFAULT-Policy-Modul, sodass das Aktivieren der TEST-PQ-Policy entfällt. Das folgende Beispiel zeigt, wie OpenSSH nach dem Laden der TEST-PQ-Policy in der Konfiguration den PQC-Algorithmus ML-KEM verwendet:
grep Include /etc/ssh/sshd_config.d/40-redhat-crypto-policies.conf
Include /etc/crypto-policies/ back-ends/opensshserver.config
grep mlkem /etc/crypto-policies/ backends/opensshserver.config
KexAlgorithms mlkem768x25519-sha256,curve25519-sha256,curve25519-sha256@libssh.org, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-group-exchange-
       sha256, diffie-hellman-group14-sha256, diffie-hellman-group16-sha512, diffie-hellman-group18-sha512
Fazit
Red Hat stellt mit dem auf Fedora basierenden QUBIP-Container-Image eine Referenzimplementierung für Post-Quanten-Kryptographie zur Verfügung. PQC-Algorithmen wie ML-KEM und ML-DSA sowie diverse PQC-Tools wie der OQS-Provider für OpenSSL sind bereits in diesem Image enthalten. Crypto-Policies ermöglichen eine einheitliche Konfiguration der einzelnen Crypto-Bibliotheken und Tools. Admins und Entwickler können somit bereits heute zukunftssichere Systeme aufbauen.
(dr)
Links
[2] Key-Encapsulation-Mechanismus: https://it-a.eu/q1pc2
[6] Open-Quantum-Safe-(OQS)-Projekt: https://openquantumsafe.org/
[7] GitHub-Seite des QUBIP-Projekts: https://github.com/qubip
[8] QUBIP-Fedora-Reference- Container-Image: https://github.com/QUBIP/pq-container
[9] liboqs GitHub-Repository: https://github.com/open-quantum-safe/liboqs
[10] oqsprovider GitHub-Repository: https://github.com/open-quantum-safe/oqs-provider