Zum Inhalt springen
ecdsa.com

ML-DSA (FIPS 204)

Der modulgitterbasierte Signaturalgorithmus (Module-Lattice-Based Digital Signature Algorithm) aus FIPS 204 (August 2024), hervorgegangen aus CRYSTALS-Dilithium: das primäre Post-Quanten-Signaturverfahren des NIST mit den Parametersätzen ML-DSA-44, ML-DSA-65 und ML-DSA-87.
Auch geschrieben alsML-DSAFIPS 204DilithiumCRYSTALS-DilithiumML-DSA-65

Größen in Byte (FIPS 204, Tabelle 2), öffentlicher Schlüssel / Signatur: ML-DSA-44 1.312 / 2.420 (Sicherheitskategorie 2), ML-DSA-65 1.952 / 3.309 (Kategorie 3), ML-DSA-87 2.592 / 4.627 (Kategorie 5). Private Schlüssel belegen expandiert 2.560–4.896 Byte, lassen sich aber als 32-Byte-Seed speichern. Auf einem Kern eines Apple M4 Max erzeugt OpenSSL 3.6.5 etwa 3.900 ML-DSA-44-Signaturen und 20.800 Prüfungen pro Sekunde; das Signieren arbeitet mit Rejection Sampling, daher schwankt seine Dauer.

Das Signieren arbeitet standardmäßig mit Hedging: 32 Byte frischer Zufall werden mit Schlüssel und Nachricht gemischt, und eine optionale deterministische Variante verwendet stattdessen Nullen (§3.4). Jede Signatur bindet einen Kontextstring von bis zu 255 Byte ein. HashML-DSA (§5.4) ist ein eigener Algorithmus: Er signiert einen Digest und bindet dabei die OID der Hashfunktion mit ein. Die X.509-Bezeichner sind id-ml-dsa-44, -65 und -87 (2.16.840.1.101.3.4.3.17 bis .19, RFC 9881).

ML-DSA ist die Standardwahl für allgemeines Post-Quanten-Signieren: Zertifikate in privaten PKIs, Firmware, Dokumente. Seine Größe ist das Hindernis für TLS in der öffentlichen Web-PKI; deshalb werden Composite-ML-DSA-Zertifikate und Merkle Tree Certificates entwickelt. Das Tool für Post-Quanten-Signaturen signiert und prüft lokal.

Standards und Quellen

Alle Begriffe