Kurz gesagt: FIPS 203, am 13. August 2024 vom NIST finalisiert, standardisiert ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism), den primären Ersatz für den Schlüsselaustausch von RSA und ECDH. ML-KEM ist ein Schlüsselkapselungsmechanismus und kein Verschlüsselungsalgorithmus. Er etabliert einen gemeinsamen symmetrischen Schlüssel über einen unsicheren Kanal durch drei Operationen (Schlüsselerzeugung, Kapselung, Entkapselung) und ist in drei Parametersätzen mit unterschiedlichen Kompromissen zwischen Sicherheit und Speicherbedarf verfügbar. Für die meisten allgemeinen Anwendungen empfiehlt sich ML-KEM-768, für besonders sensible oder langfristige Schutzanforderungen ML-KEM-1024. Stellen Sie sicher, dass Ihre Infrastruktur die im Vergleich zu RSA oder ECDH größeren Schlüssel- und Chiffretextgrößen verarbeiten kann.
Wichtige Erkenntnisse
- ML-KEM (FIPS 203) definiert drei Operationen: Schlüsselerzeugung, Kapselung und Entkapselung und ist in drei Parametersätzen verfügbar, ML-KEM-512, -768 und -1024, wobei die Sicherheitsstärke gegen die Größe des Schlüssels und des Chiffretexts abgewogen wird.
- ML-KEM baut auf CRYSTALS-Kyber auf, fixiert aber das gemeinsame Geheimnis auf 256 Bit, aktualisiert die Fujisaki-Okamoto-Transformation, entfernt einen Zufalls-Hashing-Schritt und fügt explizite Eingabevalidierungsprüfungen hinzu.
- Der endgültige Standard korrigierte Matrixindexfehler aus dem ursprünglichen Entwurf und fügte eine Domänentrennung hinzu, um zu verhindern, dass Schlüssel einer Sicherheitsebene auf einer anderen missbraucht werden.
- Die Wahl eines Parametersatzes bedeutet, ein Gleichgewicht zwischen Sicherheitsniveau und Leistung zu finden: ML-KEM-1024 bietet die höchste Sicherheit, erfordert aber die größten Schlüssel und Chiffretexte, was die Systemleistung beeinträchtigen kann.
- ML-KEM wurde zusammen mit ML-DSA (FIPS 204) und SLH-DSA (FIPS 205) am 13. August 2024 finalisiert und bietet Organisationen damit einen vollständigen, produktionsreifen Satz von NIST-Post-Quanten-Standards für den Beginn der Migration.
Die Veröffentlichung FIPS 203 (Federal Information Processing Standards) stellt den ML-KEM-Standard (Module-Lattice-Based Key-Encapsulation Mechanism) vor. Dieser bietet ein hochmodernes kryptografisches Framework zum Schutz von Daten vor neuartigen Bedrohungen durch Quantencomputer . In unserem Blog beleuchten wir die Kernelemente, Parametersätze, Implementierungsunterschiede und praktischen Aspekte des FIPS-203-Standards.
Einführung in ML-KEM
ML-KEM ist ein Schlüsselkapselungsmechanismus (KEM) zum Schutz symmetrischer Schlüssel, die für die Ver- und Entschlüsselung von Daten entscheidend sind. Der Standard definiert drei Hauptoperationen:
- Schlüsselgenerierung (KeyGen): Dieser Vorgang generiert ein Schlüsselpaar, einen öffentlichen und einen privaten Schlüssel. Der öffentliche Schlüssel wird zur Verschlüsselung verteilt, während der private Schlüssel sicher aufbewahrt und zur Entschlüsselung verwendet wird.
- Kapselung (Encaps): Mithilfe des öffentlichen Schlüssels wird bei diesem Vorgang ein Geheimtext der einen symmetrischen Schlüssel enthält. Dieser Chiffretext kann sicher über unsichere Kanäle übertragen werden.
- Entkapselung (Decaps): Mit dem privaten Schlüssel ruft diese Operation den symmetrischen Schlüssel aus dem Chiffretext ab. Der symmetrische Schlüssel wird dann für nachfolgende Verschlüsselung or Entschlüsselung Aufgaben.
Parametersätze
FIPS 203 spezifiziert drei Parametersätze für ML-KEM, die jeweils auf unterschiedliche Sicherheitsstufen und Leistungsmerkmale zugeschnitten sind:
ML-KEM-512
- Sicherheitsstufe: Bietet ein grundlegendes Sicherheitsniveau, das für viele Standardanwendungen geeignet ist.
- Schlüssel- und Chiffretextgrößen: Bietet ein Gleichgewicht zwischen Sicherheit und Leistung mit Kapselungsschlüsseln von 800 Byte, Entkapselungsschlüsseln von 1632 Byte, Chiffretexten von 768 Byte und einem festen gemeinsamen geheimen Schlüssel von 32 Byte.
ML-KEM-768
- Sicherheitsstufe: Erhöht die Sicherheit im Vergleich zu ML-KEM-512 und ist daher für sensiblere Anwendungen geeignet.
- Schlüssel- und Chiffretextgrößen: Enthält größere Kapselungsschlüssel von 1184 Byte, Entkapselungsschlüssel von 2400 Byte, Chiffretexte von 1088 Byte und einen gemeinsamen geheimen Schlüssel von 32 Byte, wodurch ein Gleichgewicht zwischen höherer Sicherheit und größeren Datenmengen hergestellt wird.
ML-KEM-1024
- Sicherheitsstufe: Bietet das höchste Sicherheitsniveau unter den drei Parametersätzen, ideal für hochsensible oder langfristige Schutzanforderungen.
- Schlüssel- und Chiffretextgrößen: Verfügt über die größten Kapselungsschlüssel von 1568 Byte, Entkapselungsschlüssel von 3168 Byte, Chiffretexte von 1568 Byte und einen gemeinsamen geheimen Schlüssel von 32 Byte, der aufgrund der erhöhten Datengröße die Leistung beeinträchtigen kann.
Jeder Parametersatz enthält Variablen, die die Größe der Matrizen und Vektoren bestimmen, die bei der Schlüsselgenerierung und Verschlüsselung verwendet werden. Diese Parameter sind entscheidend, um die kryptografischen Operationen an unterschiedliche Sicherheits- und Leistungsanforderungen anzupassen.
Schlüssel- und Chiffretextgrößen
Der FIPS 203-Standard gibt die Größe der Schlüssel und Chiffretexte für jeden Parametersatz an, die sich direkt auf die Datenmenge auswirken, die während der Ver- und Entschlüsselung verarbeitet wird:
ML-KEM-512
- Kapselungsschlüssel: 800 Bytes
- Entkapselungsschlüssel: 1632 Bytes
- Geheimtext: 768 Bytes
- Gemeinsamer geheimer Schlüssel: 32 Bytes
- Erforderliche RBG-Stärke: mindestens 128 Bit
ML-KEM-768
- Kapselungsschlüssel: 1184 Bytes
- Entkapselungsschlüssel: 2400 Bytes
- Geheimtext: 1088 Bytes
- Gemeinsamer geheimer Schlüssel: 32 Bytes
- Erforderliche RBG-Stärke: mindestens 192 Bit
ML-KEM-1024
- Kapselungsschlüssel: 1568 Bytes
- Entkapselungsschlüssel: 3168 Bytes
- Geheimtext: 1568 Bytes
- Gemeinsamer geheimer Schlüssel: 32 Bytes
- Erforderliche RBG-Stärke: mindestens 256 Bit
Diese Größen spiegeln die Datenmenge wider, die an den kryptografischen Prozessen beteiligt ist, und beeinflussen sowohl die Sicherheit als auch die Leistung des Systems.
Unterschiede zu CRYSTALS-Kyber
FIPS 203 baut auf dem CRYSTALS-Kyber-Schema auf und enthält mehrere wichtige Aktualisierungen und Änderungen:
-
Feste Länge des gemeinsamen Geheimnisses
Im Gegensatz zu CRYSTALS-Kyber, das gemeinsame geheime Schlüssel variabler Länge zuließ, gibt ML-KEM eine feste Länge von 256 Bit vor. Diese Standardisierung vereinfacht die Integration und Nutzung und sorgt für eine einheitliche Größe des gemeinsamen geheimen Schlüssels in allen Anwendungen.
-
Aktualisierte Fujisaki-Okamoto-Transformation
ML-KEM verwendet eine modifizierte Version der Fujisaki-Okamoto-Transformation. Dieses Update schließt den Hash des Geheimtextes bei der Ableitung des gemeinsamen Geheimnisses aus und entspricht den aktuellen Sicherheitspraktiken, um den Prozess zu optimieren.
-
Handhabung von Zufälligkeiten
Frühere Versionen des Algorithmus erforderten das Hashing der anfänglichen Zufallszahlen, um deren Qualität zu gewährleisten. ML-KEM verzichtet auf diesen Schritt und verwendet stattdessen vom NIST zugelassene Zufallsgeneratoren, um ohne zusätzliche Verarbeitung ausreichende Zufälligkeit zu garantieren.
-
Eingabevalidierung
Der Standard führt explizite Prüfungen der Eingabegültigkeit ein, die in früheren Versionen nicht vorhanden waren. Beispielsweise überprüft ML-KEM, ob der Kapselungsschlüssel korrekt aus seinem Byte-Array dekodiert wird, und stellt so das richtige Format und die Integrität sicher.
Updates vom ersten Entwurf
Die endgültige Version von FIPS 203 enthält mehrere Überarbeitungen, die auf dem Feedback zum ersten öffentlichen Entwurf basieren:
-
Domänentrennung
Um den Missbrauch von Schlüsseln über verschiedene Sicherheitsstufen hinweg zu verhindern, wird bei der Schlüsselgenerierung eine Domänentrennung eingeführt. Dadurch wird sichergestellt, dass Schlüssel, die für eine Sicherheitsstufe bestimmt sind, nicht versehentlich für eine andere verwendet werden können, was die allgemeine Systemsicherheit erhöht.
-
Korrektur der Matrixindizes
Fehler im Zusammenhang mit Matrixindizes im ursprünglichen Entwurf wurden korrigiert, um die Übereinstimmung mit der ursprünglichen CRYSTALS-Kyber-Spezifikation zu gewährleisten. Diese Anpassung gewährleistet Genauigkeit und Konsistenz bei der Implementierung von ML-KEM.
Überlegungen zur praktischen Umsetzung
Berücksichtigen Sie bei der Implementierung von ML-KEM die folgenden praktischen Aspekte:
-
Auswählen eines Parametersatzes
Wählen Sie den Parametersatz, der Ihren Sicherheitsanforderungen und Leistungseinschränkungen am besten entspricht. Parametersätze mit höherer Sicherheit bieten besseren Schutz, können aber aufgrund größerer Datenmengen oder Verarbeitungsanforderungen die Systemleistung beeinträchtigen.
-
Kompromisse zwischen Leistung und Sicherheit
Verstehen Sie das Gleichgewicht zwischen Sicherheit und Leistung. Stärkere Sicherheitseinstellungen bieten besseren Schutz, können aber zu einer langsameren Leistung oder größeren Datenmengen führen. Bewerten Sie Ihre spezifischen Anforderungen, um den am besten geeigneten Parametersatz zu bestimmen.
-
Compliance
Stellen Sie sicher, dass Ihre Implementierung den in FIPS 203 beschriebenen Spezifikationen entspricht. Die Einhaltung dieser Standards ist für die sichere Schlüsselkapselung und die Aufrechterhaltung des Datenschutzes von entscheidender Bedeutung.
Wie Verschlüsselungsberatung helfen kann
Wir bieten umfassende kryptografische Algorithmen für die Zeit nach der Quantenquantentechnologie, die individuell auf die spezifischen Anforderungen Ihres Unternehmens zugeschnitten sind und Ihnen helfen, sich an das Quantenzeitalter anzupassen.
- Quantenrisikobewertung: Identifizieren Sie Schwachstellen in bestehenden Verschlüsselungsprotokolle und Schlüsselverwaltung Systemen.
- Roadmap zur Quantenbereitschaft: Entwickeln Sie eine maßgeschneiderte Strategie für den Übergang zu quantenresistenten Lösungen, die mit NIST und anderen Standards übereinstimmt.
- Maßgeschneiderte Sicherheitsmaßnahmen: Implementieren Sie Sicherheitsmaßnahmen basierend auf der Sensibilität und Kritikalität der Daten.
- Implementierungsunterstützung: Unterstützung beim Übergang zu Post-Quanten-Kryptografiealgorithmen, einschließlich der Entwicklung von Proof of Concept und Schwachstellenbewertungen.
- Transparenz und Compliance: Verbessern Sie die Transparenz kryptografischer Verfahren und stellen Sie die Einhaltung von Branchenstandards sicher.
- Zukunftssicher: Passen Sie sich mit flexiblen Modellen und kontinuierlicher Überwachung an neue Quantenbedrohungen an, um die langfristige Widerstandsfähigkeit aufrechtzuerhalten.
- Expertenberatung: Profitieren Sie von unseren spezialisierten Tools und Best Practices für robuste kryptografische Sicherheit.
Fazit
FIPS 203 und der ML-KEM-Standard stellen bedeutende Fortschritte in der kryptografischen Technologie dar, insbesondere im Hinblick auf die Vorbereitung auf potenzielle zukünftige Bedrohungen durch Quantencomputer . Durch das Verständnis der Parametersätze, der Unterschiede zu bisherigen Verfahren und der praktischen Aspekte können Unternehmen ML-KEM effektiv implementieren und so ihre Datenschutzstrategien verbessern. Für eine detaillierte Beratung vereinbaren Sie ein persönliches Gespräch, um zu erfahren, wie wir Sie bei der Umsetzung von Best Practices und der Einhaltung der Vorschriften unterstützen können.
Häufig gestellte Fragen
Welche drei Operationen werden durch ML-KEM definiert?
Schlüsselerzeugung (KeyGen), bei der ein öffentliches und ein privates Schlüsselpaar erzeugt werden; Kapselung (Encaps), bei der der öffentliche Schlüssel verwendet wird, um einen Chiffretext zu erzeugen, der einen symmetrischen Schlüssel enthält; und Entkapselung (Decaps), bei der der private Schlüssel verwendet wird, um den symmetrischen Schlüssel aus diesem Chiffretext abzurufen.
Welchen ML-KEM-Parametersatz sollten die meisten Organisationen verwenden?
ML-KEM-768 bietet erhöhte Sicherheit und eignet sich für die meisten sensiblen Anwendungen bei gleichzeitig akzeptabler Speichergröße. ML-KEM-1024 bietet höchste Sicherheit für besonders sensible oder langfristige Schutzanforderungen, erfordert jedoch die größten Schlüssel- und Chiffretextgrößen. ML-KEM-512 bietet grundlegende Sicherheit für Standardanwendungen.
Worin unterscheidet sich ML-KEM von CRYSTALS-Kyber?
ML-KEM legt die Länge des gemeinsamen geheimen Schlüssels auf 256 Bit fest, anstatt variable Längen zuzulassen, aktualisiert die Fujisaki-Okamoto-Transformation, um den Chiffretext-Hash von der Ableitung des gemeinsamen Geheimnisses auszuschließen, entfernt einen früheren Zufalls-Hashing-Schritt zugunsten von NIST-zugelassenen Zufallsgeneratoren und fügt explizite Eingabevalidierungsprüfungen hinzu, die CRYSTALS-Kyber nicht erforderte.
Was hat sich zwischen dem ersten Entwurf und der endgültigen Fassung von FIPS 203 geändert?
NIST hat die Domänentrennung in den Schlüsselerzeugungsprozess eingeführt, um zu verhindern, dass Schlüssel einer Sicherheitsstufe auf einer anderen missbraucht werden, und hat Matrixindexfehler korrigiert, die im ersten öffentlichen Entwurf aufgetreten waren, wodurch der endgültige Standard mit der ursprünglichen CRYSTALS-Kyber-Spezifikation in Einklang gebracht wurde.
Warum sind ML-KEM-Schlüssel und -Chiffretexte größer als bei RSA oder ECC?
ML-KEM basiert auf Gittermathematik anstatt auf Faktorisierung ganzer Zahlen oder elliptischen Kurven. Gitterbasierte Verfahren benötigen naturgemäß größere Schlüssel- und Chiffretextgrößen, um eine vergleichbare Sicherheit zu erreichen. Dies ist ein bekannter Kompromiss bei allen NIST-standardisierten Post-Quanten-Algorithmen und kein spezifischer Konstruktionsfehler von ML-KEM.
Wann wurde FIPS 203 finalisiert?
Das NIST finalisierte FIPS 203 zusammen mit FIPS 204 (ML-DSA) und FIPS 205 (SLH-DSA) am 13. August 2024 und stellte Organisationen damit einen vollständigen, produktionsreifen Satz von Post-Quanten-Kryptographiestandards zur Verfügung.
