Cours 2 · Ce que le tore interdit, et le schémaLeçon 2 sur 2
Le KEM : leviers, correction, sécurité
3 h de lecture8 sections Version PDF
Les trois leviers de compacité, la probabilité d'échec exacte, la seconde hypothèse, et la réduction IND-CPA puis IND-CCA.
La forme du schéma n'est pas libre. L'algèbre en impose une partie — c'est l'objet de l'Annexe E — et la cryptanalyse de la séance précédente en autorise une autre, prise ici à crédit et honorée en séance 7. Cette séance suit ces deux déterminations jusqu'à l'IND-CCA.
À lire avant la séance
§4 en entier, des leviers de §4.1 aux tailles de §4.10, en passant par les Algorithmes 1 à 5 et les Théorèmes 1 et 2. Puis l'Annexe D, courte, sur la probabilité d'échec exacte, et les deux premiers paragraphes de l'Annexe E sur ce que l'algèbre force.
Ce que l'algèbre force
Deux contraintes précèdent tout choix de conception.
La trappe rescale par , donc l'encodage est -adique. La seule opération secrète dont dispose le receveur est la multiplication par : tout ce qui est extrait se trouve donc mis à l'échelle par . Un encodage à la Kyber, avec , ferait récupérer dont la norme est bien trop grande pour éviter le repli modulo . On suit donc la route NTRU : tous les termes parasites sont rendus nuls modulo , et le message se lit modulo un petit premier.
L'aléa de chiffrement doit vivre dans . Le déchiffrement ne se referme que si l'aléa de l'émetteur commute avec . Par le Lemme 6, le commutant d'une matrice générique ne rencontre qu'en les scalaires : l'aléa doit donc être pris dans lui-même, et non comme une matrice courte arbitraire de .
Les trois leviers
Troncature de ligne. En imposant et en restreignant le message à la première coordonnée, on obtient : le déchiffrement ne lit que la première coordonnée. Le receveur n'a donc besoin que d'une ligne de et d'une ligne de , d'où une clé publique de coefficients et un chiffré de — au lieu de et . Le réseau d'attaque tronqué coïncide exactement avec le régime de la séance 4 : rien n'est perdu.
Encodage MSB, pour la compression seule. Le budget de bruit est identique ; le gain est que l'erreur d'arrondi entre additivement comme un bruit ordinaire, là où un encodage LSB détruirait le résidu modulo . Deux limites méritent d'être nommées. La clé publique tronquée n'est pas compressible : son erreur d'arrondi multiplie un produit de deux secrets, et un seul bit brise la correction. Et le chiffré ne tolère qu'une compression modérée, à 12 bits, parce qu'à la différence du de Kyber il multiplie un secret et non un haché.
Distributions découplées. Une largeur unique partout est sous-optimale : élargir durcit la seconde hypothèse à un coût linéaire dans le budget de bruit, alors que y entre quadratiquement. Le découplage en trois largeurs récupère la catégorie 3, qui échouerait autrement.
Le levier qu'on ne peut pas tirer. La Remarque 6 mérite d'être lue en séance : annuler les coordonnées d'erreur que l'attaque n'utilise pas est dangereux. La relation publique est colonne par colonne une équation linéaire en ; mettre une coordonnée à zéro impose une contrainte exacte qui, combinée à la brièveté de , récupère la clé. Les leviers changent ce qui est publié, jamais la façon dont on échantillonne.
Pourquoi ne peut-on pas simplement tirer à zéro les coordonnées d'erreur que l'attaque optimale n'utilise pas ?
Correction, et la probabilité d'échec exacte
Le Lemme 7 donne l'identité de déchiffrement, la Proposition 2 la condition de correction, et l'équation (5) la variance coordonnée par coordonnée. Jusque-là, la mécanique est classique.
§4.5 l'est beaucoup moins, et c'est la partie de §4 à ne pas survoler. La borne gaussienne sous-estime la queue d'une somme de produits de variables bornées. Le calcul exact, par convolution et avec le terme d'arrondi énuméré plutôt qu'approché, coûte 2 à 9 bits sur la variance et 2 à 3 de plus sur la queue : le gaussien est optimiste de 5 à 12 bits à ces paramètres.
La conséquence est concrète. À la catégorie 1, la marge passe de 16 bits à 4 — et c'est précisément ce qui rend la contrainte de correction mordante dans le réglage de la séance 8, où un jeu sélectionné contre le gaussien s'avère inadmissible. Le Lemme 8 clôt la section sur une note plus légère : la clé -adique est gratuite, le facteur pouvant être ignoré dans l'analyse de sécurité.
La seconde hypothèse
Il faut être clair là-dessus, car le résumé peut induire en erreur : la sécurité passive ne repose pas sur seule. La pseudo-aléatoirité de la clé publique ne cache pas le message ; il faut encore que le chiffré soit pseudo-aléatoire. La Définition 8 isole cette seconde hypothèse décisionnelle, — exactement l'analogue de la situation NTRU, où le NTRU décisionnel se combine à une hypothèse de type LWE sur le quotient devenu uniforme.
La Remarque 8 en établit la plausibilité, et vaut d'être détaillée : l'échantillon tronqué en colonne est précisément du module-LWE de rang sur ; l'échantillon tronqué en ligne est du ring-LWE sur , qui se trouve être l'anneau cyclotomique de degré — dans la famille en puissance de deux, et l'anneau à la catégorie 3. Ce sont deux objets standards, et la seule structure jointe est le secret partagé, c'est-à-dire le cadre ordinaire du LWE à échantillons multiples.
De l'IND-CPA à l'IND-CCA
Le Théorème 1 borne l'avantage par la somme des deux hypothèses, en deux sauts de jeu : le premier remplace la ligne publiée de par de l'uniforme — un distingueur tronque un défi -Dec — le second remplace le chiffré, qui est exactement une instance tronquée à sous secret commun.
Deux remarques encadrent le résultat. La Remarque 9 souligne que la réduction est serrée et n'invoque ni l'Heuristique 6 ni le non-scindage — ceux-ci servent au problème de recherche ; le non-scindage reste cependant nécessaire en amont, faute de quoi l'attaque CRT récupère la clé et -Dec est simplement fausse. La Remarque 10 précise que les deux sauts ne consomment que ce que le schéma publie, la corrélation de colonnes du schéma non tronqué n'étant jamais exposée.
La transformation de Fujisaki–Okamoto à rejet implicite donne enfin l'IND-CCA dans le ROM. Le terme du Théorème 2 est ce qui impose : à et , la queue doit être coupée à six ou sept écarts-types.
Sur quoi repose exactement la sécurité IND-CPA du schéma ?
Point de discussion
La Remarque 11 chiffre ce que coûterait la conception naïve : publier les lignes, encoder -adiquement, une seule largeur de bruit — soit 2,3 à 2,7 fois la clé publique et 1,5 à 2 fois le chiffré, à sécurité égale. Autrement dit, la compacité annoncée du schéma tient pour bonne moitié à une lecture fine de sa propre cryptanalyse. Est-ce une pratique saine ? Elle crée une dépendance : si §5.1 se révélait fautive sur , le schéma perdrait sa compacité sans que sa sécurité soit d'abord en cause. Discutez cette dette, que l'article assume explicitement en parlant de crédit.
À retenir
Vous avez parcouru les 8 sections.
Marquez-la terminée pour faire avancer votre parcours, ou revenez sur un point avant de passer à la suite.