ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) is het post-kwantum sleuteluitwisselingsalgoritme dat in augustus 2024 door NIST is gestandaardiseerd in FIPS 203, gebaseerd op het CRYSTALS-Kyber-algoritme.
ML-KEM is een sleutelinkapselingsmechanisme dat is ontworpen om bestand te zijn tegen kwantumcomputers. Het stelt twee partijen in staat om een ​​gedeelde geheime sleutel tot stand te brengen via een onbeveiligd kanaal, ter vervanging van kwantumkwetsbare methoden zoals RSA en Diffie-Hellman-sleuteluitwisseling. NIST publiceerde het in augustus 2024 als FIPS 203 met drie parameterreeksen: ML-KEM-512, ML-KEM-768 en ML-KEM-1024.
Key Takeaways
- ML-KEM is de belangrijkste post-kwantumstandaard van NIST voor sleutelvaststelling, gepubliceerd als FIPS 203 in augustus 2024.
- Het is gebaseerd op CRYSTALS-Kyber en steunt op de moeilijkheidsgraad van het Module Learning With Errors (MLWE)-probleem.
- Drie parameterreeksen (ML-KEM-512/768/1024) bieden ruwweg 128, 192 en 256-bits klassieke beveiliging.
- ML-KEM vervangt de sleuteluitwisselingsmethoden RSA en ECDH, die kwantumcomputers met het algoritme van Shor kunnen kraken.
- Het wordt tijdens migraties vaak in een hybride modus ingezet, naast een klassiek algoritme.
Wat is ML-KEM?
ML-KEM is een post-kwantumalgoritme voor sleuteluitwisseling. Een sleutelinkapselingsmechanisme (KEM) stelt twee partijen in staat om via een onbeveiligd kanaal een gedeelde geheime sleutel overeen te komen, wat momenteel de functie is van RSA-sleuteltransport en Diffie-Hellman-sleuteluitwisseling. NIST heeft ML-KEM in augustus 2024 gestandaardiseerd in FIPS 203, samen met ML-DSA (FIPS 204) en SLH-DSA (FIPS 205).
Waarom ML-KEM belangrijk is
De huidige sleuteluitwisseling is gebaseerd op de moeilijkheid van factorisatie of het discrete logaritme-probleem. Een grote kwantumcomputer die het algoritme van Shor uitvoert, zou beide kunnen oplossen, waarmee RSA en sleuteluitwisseling via elliptische krommen onbruikbaar worden. ML-KEM is gebouwd op een ander wiskundig probleem (Module Learning With Errors) waarvoor geen efficiënte kwantumaanval bekend is. In combinatie met de dreiging van 'nu oogsten, later decoderen', is dit de reden waarom de overstap naar ML-KEM een prioriteit is.
Hoe ML-KEM werkt
ML-KEM gebruikt drie bewerkingen om een ​​gedeeld geheim vast te stellen:
- Sleutelgeneratie: De ontvanger genereert een paar publieke en private sleutels en publiceert de publieke sleutel.
- inkapseling: De afzender gebruikt de publieke sleutel van de ontvanger om een ​​gedeeld geheim en een versleutelde tekst te genereren, en verzendt vervolgens de versleutelde tekst.
- Ontkapseling: De ontvanger gebruikt de privésleutel om hetzelfde gedeelde geheim uit de versleutelde tekst te achterhalen.
Beide partijen beschikken nu over hetzelfde geheim, dat wordt gebruikt als sleutel voor een snel symmetrisch algoritme zoals AES voor de daadwerkelijke gegevensverwerking.
ML-KEM-parameterreeksen
FIPS 203 definieert drie parameterreeksen die de sterkte van een borgstelling afwegen tegen de omvang en prestaties ervan.
| Parameterset | Ongeveer klassieke beveiliging | Typisch gebruik |
|---|---|---|
| ML-KEM-512 | 128-bit | Het lichtst; beperkte omgevingen. |
| ML-KEM-768 | 192-bit | Aanbevolen standaardinstelling voor algemeen gebruik. |
| ML-KEM-1024 | 256-bit | Hoogste veiligheidseisen. |
Alle drie genereren een gedeeld geheim van 32 bytes. De publieke sleutels en versleutelde teksten variëren van ongeveer 800 tot circa 1,568 bytes, afhankelijk van de parameterinstellingen. Dit is groter dan klassieke sleutels, wat een van de praktische overwegingen is bij de toepassing van ML-KEM.
ML-KEM versus ML-DSA
ML-KEM en ML-DSA zijn complementair, geen alternatieven. ML-KEM genereert sleutels; ML-DSA produceert digitale handtekeningen. Een typische beveiligde verbinding in een post-kwantumwereld gebruikt ML-KEM voor de sleuteluitwisseling en ML-DSA voor de authenticatie van de partijen, vergelijkbaar met hoe RSA of ECDH en een handtekeningalgoritme tegenwoordig samenwerken.
ML-KEM implementeren
Het meest voorkomende implementatiepatroon tijdens migratie is hybride: ML-KEM wordt gecombineerd met een bewezen klassiek algoritme zoals X25519, zodat de verbinding veilig blijft, zelfs als een van de algoritmen een onverwachte zwakte vertoont. ML-KEM is al opgenomen in belangrijke TLS-bibliotheken en browsers, en hardwarebeveiligingsmodules voegen ondersteuning toe. De HSM-as-a-Service en PQC Advisory van Encryption Consulting helpen organisaties om ML-KEM veilig te implementeren.
Hoe encryptieconsultancy kan helpen
Het PQC Advisory-programma van Encryption Consulting helpt u bij het plannen en uitvoeren van de implementatie van ML-KEM als onderdeel van een bredere post-quantum roadmap, van cryptografische inventarisatie tot hybride implementatie en testen. Onze HSM-as-a-Service biedt FIPS-gevalideerde hardware die post-quantum algoritmen ondersteunt, en is gebaseerd op ISO/IEC 27001:2022 en SOC 2-gecertificeerde werkwijzen.
Veelgestelde Vragen / FAQ
Is ML-KEM hetzelfde als Kyber?
ML-KEM is de gestandaardiseerde versie van CRYSTALS-Kyber. Kyber was het algoritme dat werd geselecteerd in de NIST post-quantumcompetitie, en NIST standaardiseerde het als ML-KEM in FIPS 203 in augustus 2024 met enkele verfijningen. In de praktijk bedoelt men tegenwoordig meestal ML-KEM als men Kyber zegt, maar ML-KEM is de officiële, gestandaardiseerde naam die gebruikt moet worden.
Wat is het verschil tussen ML-KEM en ML-DSA?
Ze lossen verschillende problemen op. ML-KEM (FIPS 203) is een sleutelinkapselingsmechanisme dat wordt gebruikt om een ​​gedeelde geheime sleutel vast te stellen, ter vervanging van RSA en Diffie-Hellman sleuteluitwisseling. ML-DSA (FIPS 204) is een digitaal handtekeningalgoritme dat wordt gebruikt voor ondertekening en verificatie, ter vervanging van RSA en ECDSA handtekeningen. De meeste systemen zullen beide nodig hebben: ML-KEM voor sleuteluitwisseling en ML-DSA voor authenticatie.
Welke ML-KEM-parameterreeks moet ik gebruiken?
ML-KEM-768 is de meest gangbare standaard en biedt ongeveer 192-bits klassieke beveiliging met een goede balans tussen grootte en prestaties. Het wordt breed aanbevolen voor algemeen gebruik. ML-KEM-1024 is geschikt voor de hoogste beveiligingseisen, terwijl ML-KEM-512 de lichtste is. De juiste keuze hangt af van uw beveiligingsvereisten en prestatiebeperkingen; veel richtlijnen wijzen naar ML-KEM-768 als de basisstandaard.
Is ML-KEM kwantumveilig?
ML-KEM is ontworpen om aanvallen van zowel klassieke als kwantumcomputers te weerstaan. De veiligheid ervan berust op de moeilijkheid van het Module Learning With Errors (MLWE)-probleem, waarvoor geen efficiënt kwantumalgoritme bekend is, in tegenstelling tot de factorisatie- en discrete-logaritme-problemen die het algoritme van Shor wel oplost. NIST heeft ML-KEM gestandaardiseerd in FIPS 203 juist omdat men aanneemt dat het kwantumresistent is.
Waar kan ik ML-KEM vandaag de dag gebruiken?
ML-KEM wordt al ondersteund in belangrijke TLS-bibliotheken en browsers, vaak in een hybride modus die het combineert met een klassiek algoritme zoals X25519. Het wordt toegepast in protocollen zoals TLS 1.3 en SSH, en hardwarebeveiligingsmodules voegen ondersteuning toe. De praktische aanpak is nu een hybride implementatie, waarbij men overstapt op uitsluitend ML-KEM naarmate de ondersteuning volwassener wordt.
Kies vol vertrouwen voor ML-KEM.
Klaar om sleuteluitwisseling over te zetten naar post-kwantumcryptografie? Neem contact op met een PQC-adviseur van Encryption Consulting of ontdek HSM-as-a-Service.
