PQC Migration Roadmap: How to Build One and Where to Start
02 juil. 2026
ArticleBuild a PQC migration roadmap: inventory and CBOM, risk ranking with Mosca, hybrid ML-KEM first, PKI next, and the 2027-2035 deadlines.
Lire l’article
ML-KEM (FIPS 203) expliqué : paramètres et tailles de clés, Kyber vs ML-KEM, CNSA 2.0, TLS hybride, et comment générer, stocker et renouveler les clés.
La gestion des clés ML-KEM est l'ensemble des contrôles qui encadrent la génération, le stockage, la distribution, la rotation et la destruction des clés utilisées par ML-KEM, le mécanisme d'encapsulation de clés post-quantique normalisé par le NIST dans FIPS 203. La plupart des clés ML-KEM sont éphémères et ne vivent que le temps d'une poignée de main TLS ; les clés statiques exigent la même protection que toute clé privée à long terme, avec deux particularités : des clés plus grandes, et une graine (seed) de 64 octets aussi sensible que la clé privée elle-même.
L'établissement de clés est la partie de votre cryptographie exposée au « harvest now, decrypt later » : un trafic enregistré aujourd'hui avec un échange de clés RSA ou ECDH pourra être déchiffré dès qu'un ordinateur quantique suffisamment puissant existera. C'est pourquoi le projet de plan de transition du NIST et le calendrier fédéral américain placent l'établissement de clés en premier, et pourquoi ML-KEM est le premier algorithme post-quantique que la plupart des organisations exploiteront en production, souvent déjà via le TLS hybride des versions récentes d'OpenSSL.
Ce guide couvre les tailles de clés de FIPS 203, les différences entre la gestion des clés ML-KEM et celle de RSA et d'ECDH, le TLS hybride avec X25519MLKEM768, l'emplacement des clés ML-KEM, un tableau du cycle de vie, les échéances de NIST IR 8547 et de CNSA 2.0, la gestion des clés PQC au sens large (ML-DSA, SLH-DSA et hiérarchie de clés), ainsi que la planification de la migration.
ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) est spécifié dans FIPS 203, publié par le NIST le 13 août 2024. Selon les termes du NIST, il s'agit d'un mécanisme d'encapsulation de clés que deux parties peuvent utiliser « to establish a shared secret key over a public channel » (pour établir une clé secrète partagée sur un canal public). Sa sécurité repose sur le problème Module Learning with Errors, réputé résister aux attaques par ordinateur quantique.
Deux points comptent pour la gestion des clés :
KeyGen produit une clé d'encapsulation ek (publique) et une clé de décapsulation dk (privée). Encaps(ek) renvoie un chiffré et un secret partagé de 32 octets. Decaps(dk, ciphertext) retrouve le même secret partagé.| Élément | Détail |
|---|---|
| Norme | NIST FIPS 203, version finale, 13 août 2024 |
| Type | Mécanisme d'encapsulation de clés (KEM) pour l'établissement de clés |
| Issu de | CRYSTALS-Kyber, retenu par le NIST en 2022 |
| Base de sécurité | Module Learning with Errors (réseaux euclidiens modulaires) |
| Jeux de paramètres | ML-KEM-512, ML-KEM-768 (défaut recommandé par le NIST), ML-KEM-1024 |
| Secret partagé | 32 octets pour tous les jeux de paramètres |
| Usages principaux | Échange de clés hybride TLS 1.3 et IPsec, enveloppement de clés, chiffrement vers la clé publique d'un destinataire |
| Systèmes de sécurité nationale américains | ML-KEM-1024 pour tous les niveaux de classification (CNSA 2.0) |
ML-KEM ou Kyber. ML-KEM n'est pas identique octet pour octet à la soumission CRYSTALS-Kyber. La FAQ CNSA 2.0 de la NSA rappelle que les algorithmes CRYSTALS ont connu plusieurs versions, avec des ajustements faits avant la publication de la FIPS. Les implémentations de Kyber pré-normatif, comme l'ancien groupe TLS X25519Kyber768Draft00, n'interopèrent pas avec ML-KEM et doivent être mises à jour.
ML-KEM est l'une des trois normes post-quantiques du NIST, avec ML-DSA (FIPS 204) et SLH-DSA (FIPS 205) ; notre présentation de la cryptographie post-quantique (en anglais) les compare.
La recommandation complémentaire du NIST, SP 800-227 (version finale, septembre 2025), explique comment utiliser les KEM en toute sécurité, notamment les clés statiques et éphémères, les données au repos et les constructions hybrides. Lisez-la en parallèle de FIPS 203 lorsque vous rédigez une politique ML-KEM.
FIPS 203 approuve trois jeux de paramètres. Les tailles ci-dessous proviennent du tableau 3 de FIPS 203 ; les catégories de sécurité, de la section 8.
| Jeu de paramètres | Catégorie de sécurité NIST | Clé d'encapsulation (publique) | Clé de décapsulation (privée) | Chiffré | Secret partagé |
|---|---|---|---|---|---|
| ML-KEM-512 | 1 | 800 octets | 1 632 octets | 768 octets | 32 octets |
| ML-KEM-768 | 3 | 1 184 octets | 2 400 octets | 1 088 octets | 32 octets |
| ML-KEM-1024 | 5 | 1 568 octets | 3 168 octets | 1 568 octets | 32 octets |
À titre de comparaison, une clé publique X25519 fait 32 octets.
Lequel choisir. FIPS 203 indique : « NIST recommends using ML-KEM-768 as the default parameter set, as it provides a large security margin at a reasonable performance cost. » (Le NIST recommande ML-KEM-768 comme jeu de paramètres par défaut, car il offre une large marge de sécurité pour un coût de performance raisonnable.) La norme conseille aussi d'utiliser le jeu de paramètres le plus robuste qui soit praticable dès la mise en place de la protection, afin d'éviter une transition ultérieure. Les systèmes de sécurité nationale suivent CNSA 2.0, qui désigne ML-KEM-1024 (voir Échéances).
La graine. La génération de clés ML-KEM part de deux valeurs aléatoires de 32 octets, d et z. FIPS 203 autorise le stockage de cette graine de 64 octets pour redériver la paire de clés plus tard, mais précise que « it is sensitive data and shall be treated with the same safeguards as a decapsulation key » (il s'agit de données sensibles, qui doivent bénéficier des mêmes protections qu'une clé de décapsulation).
1. Une interface différente. Avec ECDH, chaque partie combine sa clé privée avec la clé publique de l'autre. Avec le transport de clés RSA, l'émetteur choisit un secret et le chiffre. ML-KEM ne fait ni l'un ni l'autre : la partie qui encapsule obtient un nouveau secret partagé et un chiffré, et seul le détenteur de dk peut retrouver ce secret. Les bibliothèques, les API de HSM et les workflows d'encapsulation (key wrapping) construits autour de encrypt/decrypt ou de derive ont besoin d'un nouveau chemin encapsulate/decapsulate. PKCS#11 3.2 ajoute précisément cela (voir la FAQ).
2. Les clés éphémères et statiques obéissent à des règles différentes. SP 800-227 est explicite : « If an application uses an ephemeral key pair, the key pair shall be used for only one execution of key-establishment via a KEM and shall be destroyed as soon as possible after its use. » (Si une application utilise une paire de clés éphémère, celle-ci ne doit servir qu'à une seule exécution d'établissement de clés via un KEM et doit être détruite le plus tôt possible après usage.) Une clé ML-KEM statique, en revanche, est une clé privée à long terme qui exige garde, sauvegarde et rotation.
3. Deux formats privés à gérer. Une clé privée ML-KEM peut être stockée sous forme de graine de 64 octets, de dk étendue (1 632 à 3 168 octets), ou des deux. SP 800-227 note que « some applications might call for storing keys using only a short seed, while other applications might call for storing keys in an expanded format that allows for faster computations » (certaines applications peuvent exiger de stocker les clés sous la seule forme d'une graine courte, d'autres sous un format étendu qui accélère les calculs). Votre politique doit préciser quel format est stocké, exporté et sauvegardé, car une sauvegarde contenant uniquement la graine ne peut pas être restaurée dans un système qui n'accepte que dk, et inversement.
4. La preuve de possession change. Une clé KEM ne peut pas signer une demande de certificat. SP 800-227 précise qu'une partie qui utilise la clé d'encapsulation statique d'une autre « must have assurance of the other party's ownership of the key » (doit avoir l'assurance que l'autre partie détient bien la clé), assurance obtenue auprès d'une autorité de certification ou par une preuve de possession associée à une vérification d'identité. Attendez-vous à ce que les processus d'enrôlement des certificats ML-KEM diffèrent du modèle CSR signée que vous utilisez pour RSA.
5. La vérification des entrées est obligatoire. FIPS 203 exige que Encaps et Decaps ne s'exécutent que sur des entrées vérifiées (section 7). Importer une clé provenant d'une source non fiable est donc une étape de validation, pas une simple copie de fichier.
6. Des objets plus volumineux. Des clés et des chiffrés plus grands ont un impact sur les poignées de main TLS, les colonnes de base de données, les limites d'attributs et les quotas de stockage des HSM.
| Aspect | RSA (transport de clés) / ECDH (accord de clés) | ML-KEM (FIPS 203) |
|---|---|---|
| Résistance quantique | Non ; le projet NIST IR 8547 propose la dépréciation après 2030 (112 bits) et l'interdiction après 2035 | Conçu pour résister aux attaques quantiques |
| Opération | RSA : chiffrer/déchiffrer un secret choisi. ECDH : dériver à partir de deux paires de clés | Encapsuler/décapsuler ; le secret est généré pendant l'encapsulation |
| Taille typique de la clé publique | X25519 : 32 octets ; RSA-2048 : module de 256 octets | 800 / 1 184 / 1 568 octets |
| Stockage de la clé privée | Valeur de la clé privée | Graine de 64 octets, dk étendue (1 632 à 3 168 octets), ou les deux |
| Usage éphémère | ECDHE dans TLS 1.3 | Partage de clé ML-KEM dans le TLS 1.3 hybride ; une exécution d'établissement de clés par paire de clés |
| Usage statique | Transport de clés RSA, ECDH statique | Clé d'encapsulation à long terme publiée ou certifiée ; dk conservée dans un KMS/HSM |
| Preuve de possession | CSR signée (RSA) | Aucune signature possible ; preuve de possession via l'autorité de certification ou le protocole |
| Peut-elle signer ? | RSA oui ; clés ECDH non | Non ; utiliser ML-DSA ou SLH-DSA |
| Support HSM/API | PKCS#11, KMIP, KMS cloud depuis de nombreuses années | PKCS#11 3.2 définit les objets et mécanismes ML-KEM ; le support varie selon les produits |
| Mode de transition | Classique uniquement | Généralement hybride avec X25519 ou ECDH pendant la transition |
X25519MLKEM768 est un groupe d'échange de clés TLS 1.3 qui exécute ML-KEM-768 et X25519 en parallèle et combine les deux secrets partagés, de sorte que la session reste sûre tant que l'un des deux algorithmes tient. Il est normalisé dans la RFC 10024, « Post-Quantum Traditional (PQ/T) Hybrid Key Agreement Mechanisms for TLS 1.3 » (Standards Track, août 2026), publiée à partir du brouillon IETF draft-ietf-tls-ecdhe-mlkem.
La RFC 10024 définit trois groupes :
| Groupe | Code point | Recommandé | Partage client | Partage serveur | Secret partagé |
|---|---|---|---|---|---|
| X25519MLKEM768 | 4588 (0x11EC) | Y | 1 216 octets (1 184 ML-KEM + 32 X25519) | 1 120 octets (1 088 ML-KEM + 32 X25519) | 64 octets |
| SecP256r1MLKEM768 | 4587 (0x11EB) | N | 1 249 octets | 1 153 octets | 64 octets |
| SecP384r1MLKEM1024 | 4589 (0x11ED) | N | 1 665 octets | 1 665 octets | 80 octets |
Un détail piège les implémenteurs : dans X25519MLKEM768, la partie ML-KEM vient en premier dans le partage de clé et dans le secret partagé concaténé, alors que les deux groupes à courbes NIST placent la partie ECDH en premier.
Ce que cela implique pour la gestion des clés : rien à stocker. Dans le TLS 1.3 hybride, le client génère une nouvelle paire de clés ML-KEM à chaque poignée de main, envoie la clé d'encapsulation de 1 184 octets, et le serveur répond par un chiffré. Les deux paires de clés sont éphémères et détruites après la poignée de main, exactement comme ECDHE aujourd'hui. Le serveur continue de s'authentifier avec son certificat RSA ou ECDSA existant.
Ce groupe est aussi déjà déployé. La prise en charge par les navigateurs et serveurs, les points de vigilance et des exemples de configuration figurent dans notre guide du TLS post-quantique hybride (en anglais). OpenSSL 3.5.0 (8 avril 2025) a ajouté ML-KEM, ML-DSA et SLH-DSA et a modifié « the default TLS keyshares ... to offer X25519MLKEM768 and X25519 » (les partages de clés TLS par défaut, pour proposer X25519MLKEM768 et X25519). Pour vérifier si un serveur le négocie :
# OpenSSL 3.5 or later
openssl s_client -connect example.com:443 -groups X25519MLKEM768 </dev/null 2>/dev/null | grep -i -E "group|temp key"
La première décision consiste à déterminer quelles clés doivent réellement être gérées.
| Usage | Type de clé | Emplacement de la partie privée | Effort de gestion |
|---|---|---|---|
| TLS 1.3 hybride (X25519MLKEM768) | Éphémère | Mémoire du processus de la bibliothèque TLS, pour une poignée de main | Configuration uniquement : activer le groupe, surveiller la négociation |
| Échange de clés IPsec / VPN hybride | Éphémère | Mémoire de la passerelle | Niveau configuration et firmware |
| Chiffrement de données ou de clés pour un destinataire à long terme | Statique | KMS ou HSM ; dk ne devrait pas en sortir | Cycle de vie complet : garde, sauvegarde, rotation, destruction |
| Encapsulation de clés (key wrapping) entre systèmes ou tenants | Statique | KMS ou HSM | Cycle de vie complet plus politique d'accès |
| Équipements ou services dotés d'une clé KEM certifiée | Statique | Élément sécurisé de l'équipement, TPM ou HSM | Cycle de vie plus émission et révocation des certificats |
Pour les clés statiques, SP 800-227 fixe le socle : les données privées (graines et clés de décapsulation) « needs to be stored within the cryptographic module in a manner that is secure against both leakage and unauthorized modification » (doivent être stockées dans le module cryptographique de manière à être protégées contre les fuites comme contre les modifications non autorisées), et l'import comme l'export « needs to be performed in a secure manner » (doivent être réalisés de manière sécurisée). En pratique : générer dans le KMS ou le HSM, garder dk non exportable sauf si la sauvegarde impose un export encapsulé, et n'exposer que Decaps aux applications.
Utilisez ce tableau comme point de départ d'une politique de clés ML-KEM statiques. Les clés TLS éphémères ne concernent que les lignes génération et destruction, prises en charge par la bibliothèque TLS.
| Étape | Ce qu'il faut décider | Spécificités ML-KEM |
|---|---|---|
| Génération | Où les clés sont générées ; quel jeu de paramètres | Générer dans un module validé. FIPS 203 exige un RBG approuvé d'une force de sécurité d'au moins 128, 192 ou 256 bits pour ML-KEM-512, -768 et -1024. ML-KEM-768 par défaut ; ML-KEM-1024 dans le périmètre CNSA 2.0 |
| Stockage | Format et protection | Stocker la graine, dk ou les deux, et consigner lequel. Traiter la graine exactement comme dk. La clé publique ek doit être protégée contre la modification, pas contre la divulgation |
| Distribution | Comment les pairs obtiennent la clé d'encapsulation | Certificat ou canal authentifié ; prévoir la preuve de possession, puisque la clé ne peut pas signer |
| Utilisation | Qui peut appeler Decaps | Restreindre par identité applicative ; journaliser chaque décapsulation pour les clés statiques |
| Rotation | Cryptopériode et ré-encapsulation | Fixer une cryptopériode selon la politique. Les données ou clés encapsulées avec l'ancienne clé doivent être ré-encapsulées, ou l'ancienne dk conservée (déchiffrement seul) jusqu'à leur expiration |
| Sauvegarde et restauration | Format d'export et garde | Export encapsulé uniquement. Une graine de 64 octets est compacte mais doit être sauvegardée avec les mêmes contrôles que la clé complète ; vérifier que le système cible accepte le format |
| Destruction | Quand et comment | FIPS 203 indique que la clé de décapsulation « must be destroyed after it is no longer needed » (doit être détruite dès qu'elle n'est plus nécessaire). Détruire ensemble la graine et dk, sauvegardes comprises |
| Audit | Preuves | Enregistrer les événements de génération, d'utilisation, de rotation et de destruction dans un journal inviolable |
Si vous avez besoin d'un fichier de clé portable pour des tests, OpenSSL 3.5 montre directement le choix de la graine. Par défaut, il conserve la graine ; cette commande n'écrit que la dk FIPS 203 :
openssl genpkey -provparam ml-kem.retain_seed=no -algorithm ml-kem-768 -out priv-only.pem
Réservez ces clés logicielles aux tests.
NIST IR 8547. Le document du NIST Transition to Post-Quantum Cryptography Standards n'est encore qu'un projet initial soumis à consultation publique (publié le 12 novembre 2024 ; consultation close le 10 janvier 2025). Pour l'établissement de clés, il propose que DH/MQV sur corps finis, DH/MQV sur courbes elliptiques et l'établissement de clés RSA à 112 bits de sécurité soient dépréciés après 2030, et que ces algorithmes à 112 bits et à 128 bits ou plus soient interdits après 2035. S'agissant d'un projet, ces dates indiquent l'orientation du NIST plutôt que des règles définitives.
CNSA 2.0. Aux États-Unis, les systèmes de sécurité nationale suivent la suite CNSA 2.0 de la NSA. Un Internet-Draft de l'IETF rédigé par la NSA, qui définit un profil TLS pour CNSA 2.0 (draft-becker-cnsa2-tls-profile), indique que « CNSA 2.0 requires the use of ML-KEM-1024 for key establishment in TLS » (CNSA 2.0 exige ML-KEM-1024 pour l'établissement de clés dans TLS). La FAQ CNSA 2.0 de la NSA retient ML-KEM-1024 pour tous les niveaux de classification. Les algorithmes CNSA 2.0 sont exigés dans les nouvelles acquisitions de systèmes de sécurité nationale à partir du 1er janvier 2027 et obligatoires d'ici le 31 décembre 2031 ; voir le calendrier CNSA 2.0 (en anglais). L'articulation avec le calendrier fédéral civil de l'OMB figure dans notre guide de la réglementation post-quantique américaine : NIST, OMB et CNSA 2.0.
La gestion des clés PQC applique les contrôles du cycle de vie des clés (génération, stockage, distribution, rotation, sauvegarde, destruction et audit) aux clés post-quantiques et à la hiérarchie de clés qui les protège. ML-KEM n'en est qu'une partie. Une politique complète de gestion des clés post-quantiques couvre aussi les clés de signature et les clés au sommet de votre hiérarchie.
| Algorithme | Norme | Usage | Clé publique | Clé privée | Sortie | Points de gestion |
|---|---|---|---|---|---|---|
| ML-KEM | FIPS 203 | Établissement de clés | 800 à 1 568 octets | 1 632 à 3 168 octets (ou une graine de 64 octets) | Chiffré de 768 à 1 568 octets | Surtout éphémères ; les clés statiques exigent une garde complète (ce guide) |
| ML-DSA | FIPS 204 | Signatures (certificats, code, documents) | 1 312 / 1 952 / 2 592 octets | 2 560 / 4 032 / 4 896 octets | Signature de 2 420 / 3 309 / 4 627 octets | Clés de CA et de signature de code à longue durée de vie ; prévoir la taille des certificats et le support HSM |
| SLH-DSA | FIPS 205 | Signatures lorsqu'un schéma conservateur à base de hachage est préféré | 32 à 64 octets | 64 à 128 octets | Signature de 7 856 à 49 856 octets | Petites clés, signatures grandes et lentes ; adapté aux racines et aux firmwares |
Les tailles proviennent de FIPS 203, FIPS 204 (tableau 2, ML-DSA-44/65/87) et FIPS 205. Les signatures à base de hachage avec état (LMS et XMSS, NIST SP 800-208) ajoutent une règle : le signataire ne doit jamais réutiliser une clé à usage unique, l'état doit donc être sauvegardé et synchronisé avec le plus grand soin. Les clés symétriques ne posent pas problème : AES-256 reste acceptable, et CNSA 2.0 l'exige.
Une clé post-quantique protégée par une clé parente classique n'est pas plus solide que cette parente. Si une clé RSA enveloppe vos clés de chiffrement de clés (KEK), ou si une clé est exportée sous RSA-OAEP, une copie enregistrée de cet échange est exposée au « harvest now, decrypt later », même si toutes les clés de données en dessous résistent au quantique. En pratique :
En pratique, la gestion des clés post-quantiques échoue là où un magasin de clés ne sait pas stocker les nouveaux objets. Pour chaque HSM, KMS cloud et gestionnaire de secrets, demandez des réponses datées sur :
Consignez les réponses dans votre inventaire cryptographique pour que la feuille de route de migration PQC puisse planifier chaque magasin de clés.
dk et de l'export encapsulé.DuoKey couvre les étapes d'inventaire et de politique ci-dessus. D'après la documentation de DuoKey :
classical, hybrid ou pqc_only), la référence de clé et le backend. La posture hybride avec ML-KEM et ML-DSA est disponible d'emblée. Passer au PQC seul est une modification de politique ; le code applicatif ne change pas.CAP fonctionne aujourd'hui sur DuoKey Cockpit via une API REST et des clients de référence Java/Spring Boot et .NET/EF Core ; des SDK packagés figurent sur la feuille de route. Pour tout ce qui n'est pas mentionné ici, par exemple le support ML-KEM d'un modèle de HSM précis, contactez DuoKey.
Q: Qu'est-ce que la gestion des clés ML-KEM ?
C'est l'ensemble des contrôles qui encadrent la génération, le stockage, la distribution, la rotation, la sauvegarde et la destruction des clés ML-KEM, les clés KEM post-quantiques définies dans FIPS 203. Les clés éphémères utilisées dans le TLS hybride ne demandent qu'une configuration correcte ; les clés statiques exigent une gestion complète du cycle de vie dans un KMS ou un HSM, y compris la protection de la graine de 64 octets.
Q: Qu'est-ce que la gestion des clés PQC ?
La gestion des clés PQC est la gestion du cycle de vie des clés post-quantiques (ML-KEM pour l'établissement de clés, ML-DSA et SLH-DSA pour les signatures) et de la hiérarchie de clés au-dessus d'elles. Elle couvre l'endroit où les clés sont générées et stockées, les formats sauvegardés, le remplacement des clés d'enveloppement classiques et les produits KMS et HSM qui prennent en charge les nouveaux algorithmes. Voir Gestion des clés PQC : au-delà de ML-KEM.
Q: Qu'est-ce que ML-KEM ?
ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism) est le mécanisme post-quantique d'encapsulation de clés normalisé par le NIST dans FIPS 203, le 13 août 2024. Deux parties l'utilisent pour convenir d'un secret partagé de 32 octets sur un canal public. Il existe en trois jeux de paramètres, ML-KEM-512, -768 et -1024 ; ML-KEM-768 est le défaut recommandé par le NIST.
Q: ML-KEM est-il identique à Kyber ?
ML-KEM est la version normalisée de CRYSTALS-Kyber, mais les deux ne sont pas identiques : l'algorithme a été ajusté avant la publication de FIPS 203. Les implémentations de Kyber pré-normatif n'interopèrent pas avec ML-KEM.
Q: ML-KEM est-il approuvé pour CNSA 2.0 ?
Oui, avec le jeu de paramètres ML-KEM-1024, que la NSA exige pour tous les niveaux de classification des systèmes de sécurité nationale. ML-KEM-512 et ML-KEM-768 sont approuvés par le NIST mais ne sont pas le choix CNSA 2.0.
Q: ML-KEM remplace-t-il RSA ?
En partie. ML-KEM remplace RSA (et ECDH) pour l'établissement de clés : transport de clés et accord de clés. Il ne remplace pas les signatures RSA ; pour celles-ci, le NIST a normalisé ML-DSA (FIPS 204) et SLH-DSA (FIPS 205). Pendant la transition, ML-KEM est généralement combiné avec X25519 ou ECDH dans un mode hybride.
Q: Qu'est-ce que X25519MLKEM768 ?
Un groupe d'échange de clés TLS 1.3 hybride qui combine ML-KEM-768 et X25519, normalisé dans la RFC 10024 avec le code point 0x11EC. Le partage client fait 1 216 octets, le partage serveur 1 120 octets, et le secret partagé combiné 64 octets. OpenSSL 3.5 le propose par défaut.
Q: Un HSM peut-il stocker des clés ML-KEM ?
Cela dépend du HSM et de son firmware. La norme PKCS#11 3.2 (OASIS Standard, juin 2026) définit les objets de clés ML-KEM (CKK_ML_KEM), un mécanisme de génération de paires de clés (CKM_ML_KEM_KEY_PAIR_GEN), C_EncapsulateKey et C_DecapsulateKey, ainsi que des attributs pour la graine (CKA_SEED) et la clé de décapsulation (CKA_VALUE). Savoir si un HSM donné les implémente, et avec quel statut de validation, est une question à poser à son fournisseur.
Q: Faut-il stocker la graine ML-KEM ou la clé de décapsulation ?
Les deux sont autorisés. FIPS 203 permet de stocker la graine de 64 octets et de redériver la paire de clés, à condition que la graine bénéficie des mêmes protections que la clé de décapsulation. Choisissez un format de référence unique par système, et assurez-vous que votre format de sauvegarde peut être importé là où vous le restaureriez.
Q: Quel jeu de paramètres ML-KEM utiliser ?
Le NIST recommande ML-KEM-768 par défaut et conseille le jeu de paramètres le plus robuste qui soit praticable. Utilisez ML-KEM-1024 lorsque CNSA 2.0 s'applique ou que votre politique exige la catégorie de sécurité 5.
Q: Faut-il de nouveaux certificats pour utiliser ML-KEM dans TLS ?
Pas pour l'échange de clés hybride. X25519MLKEM768 modifie l'échange de clés, pas l'authentification ; vos certificats RSA ou ECDSA existants continuent donc de fonctionner. Les certificats changent lorsque vous migrez les signatures vers ML-DSA.
ML-KEM change moins de choses à la gestion des clés que ne le laissent penser ses tailles de clés, à condition de séparer les deux cas. Les clés éphémères du TLS hybride relèvent d'une tâche de configuration que vous pouvez lancer dès ce trimestre. Les clés statiques exigent une politique qui couvre la graine, l'interface KEM et la preuve de possession.
dk ou les deux), la cryptopériode, la sauvegarde et la destructionÉcrit par
DuoKey Team
Ressources associées
Dites-nous où le contrôle est difficile aujourd’hui. Nous vous aiderons à définir une prochaine étape concrète.