ML-KEM (Module-Lattice-based Key-Encapsulation Mechanism), également connu sous son nom d'origine Kyber ou CRYSTALS-Kyber, est mécanisme d'encapsulation de clef (KEM) post-quantique (conçu pour résister aux attaques des ordinateurs quantiques) standardisé en 2024. Il permet d'établir un secret entre deux interlocuteurs sans qu'un attaquant puisse l'intercepter en écoutant les messages échangés. Ce cryptosystème asymétrique est basé sur le problème algorithmique de l'apprentissage avec erreurs (M-LWE) comme fonction à trappe.
Il a gagné le concours du NIST comme le premier algorithme de cryptographie post-quantique standardisé sous le nom FIPS 203.
ML-KEM est basé sur le problème algorithmique d'apprentissage avec erreurs modulaire (M-LWE).
D'abord connu sous le nom Kyber, ce mécanisme est dérivé d'une méthode publiée en 2005 par Oded Regev,. Il fait partie de CRYSTALS (Cryptographic Suite for Algebraic Lattices), une suite composée de lui-même, et de CRYSTALS-Dilithium, un algorithme de signature post-quantique .
En 2017, Kyber est soumis au NIST pour le concours de standardisation des primitives cryptographiques post-quantiques. Il s'agit du premier mécanisme d'encapsulation de clef sélectionné pour devenir une norme (FIPS 203) lors du processus de standardisation, au troisième tour. D'après une note de bas de page du relevé de décision, sa standardisation est conditionnée à divers accords relatifs aux brevets, sans lesquels le NIST pourrait se tourner vers NTRU plutôt que Kyber d'ici fin 2022. En 2025, lors du quatrième tour processus de standardisation, le schéma HQC a été sélectionné comme solution de replis.
Lors d'une deuxième phase du processus de standardisation, plusieurs paramètres de l'algorithme ont été ajustés, et la compression des clefs publiques a été supprimée.
Kyber a subi plusieurs modifications durant le processus de standardisation du NIST. En particulier, lors du deuxième tour, la version Kyber v2 a subi les changements suivants :
D'autres modifications ont été apportées lors du troisième tour :
Lors de la publication de la version préliminaire publique du standard FIPS 203, d'autres changements ont été apportés :
Enfin, depuis la version préliminaire, les changements suivants ont été apportés au standard FIPS 203 :
Les développeurs ont publiés une implémentation de référence dans le domaine public (ou en licence CC0), en C.
La librairie liboqs du projet Open Quantum Safe (OQS) contient une implémentation basée sur l'implémentation de référence. Le projet OQC maintient également un module pour Openssl 3.x, et a intégré son code dans BoringSSL.
La librairie wolfSSL maintient sa propre implémentation de ML-KEM.
Il existe diverses implémentations dans divers langages de programmation, dont JavaScript ou Java.
Certaines implémentations matérielles optimisée existent, résistantes aux attaques par canaux auxillaires,.
Amazon Web Services (AWS) a intégré Kyber dans leur service de gestion de clefs en 2020 comme option d'hybridation post-quantique pour TLS.
En 2023, Signal (service de messagerie chiffrée implémente Post-Quantum Extended Diffie–Hellman (PQXDH), un mécanisme d'encapsulation de clef basé sur ML-KEM au Signal Protocol.