Le chiffrement hybride classique et post quantique, comment ça marche

X-Or, le shérif de l'espace quantique

Le chiffrement hybride classique et post quantique, comment ça marche

Le chiffrement hybride classique et post quantique, comment ça marche

Abonnez-vous pour tout dévorer et ne rien manquer.

Déjà abonné ? Se connecter

Abonnez-vous

On entend souvent parler de chiffrement post quantique et/ou hybride. Dans les deux cas, il s’agit de mélanger chiffrement asymétrique et symétrique afin de profiter du meilleur des mondes. Le post quantique ajoute une couche pour résister aux calculateurs quantiques… dont on ne sait pas quand ils seront de vrais dangers pour la cybersécurité. 

Sur le papier, l’ordinateur quantique est une révolution, capable de casser les systèmes de chiffrement asymétrique grâce à sa force de calcul. Ce n’est par contre pas une solution magique à tous les problèmes mathématiques, des algorithmes sont parfaitement capables de lui résister. 

Le quantique en embuscade

Dans la pratique, les calculateurs quantiques n’ont pour le moment que quelques dizaines/centaines de qubits (des bits quantiques). Et encore, il faut prendre en compte les taux d’erreurs, le nombre de qubits efficace, la profondeur et le temps de calcul disponible…

On est encore loin de pouvoir utiliser un calculateur quantique dans des conditions réelles pour casser RSA par exemple. Mais le risque existe et, en cybersécurité, c’est suffisant pour qu’il soit pris en compte. D’autant que, on ne le rappelle jamais assez, certaines organisations enregistrent des données chiffrées (comme un écureuil garde précieusement ses noisettes) dans l’espoir de les décrypter plus tard.

Le chiffrement hybride post quantique consiste à mélanger du chiffrement classique – éprouvé et donc rassurant pour les responsables de la cybersécurité – avec un algorithme post quantique. Ces derniers résistent aux ordinateurs quantiques, mais sont plus jeunes et on a donc moins de recul sur leur résistance face à de nouvelles attaques sur lesquelles des chercheurs travaillent au quotidien. La crainte des experts en cybersécurité étant que les mathématiciens trouvent une faille ou une faiblesse dans le protocole, réduisant à néant les efforts.

Le risque existe aussi pour les anciens algorithmes, mais après des dizaines d’années à s’y casser les dents, il est moins grand. Dans tous les cas, un fonctionnement hybride permet de profiter du meilleur des deux mondes. Nous avons rencontré Bruno Grieder, directeur technique et co-fondateur de Cosmian, aux Assises de la cybersécurité. Il nous explique le fonctionnement théorique des chiffrements hybrides, finalement assez simple à comprendre. 

On commence en douceur avec le chiffrement hybride

Commençons par parler de chiffrement hybride (mais pas post quantique). Il s’agit là de mélanger des algorithmes symétriques et asymétriques. Dans le premier cas, la clé pour chiffrer et déchiffrer l’information est la même, tandis que dans le second, elles sont différentes (clé privée et clé publique).

Le chiffrement symétrique est très robuste et résiste quasiment « by design » aux calculateurs quantiques : il suffit en effet de doubler la taille des clés. Par exemple, décrypter de l’AES 256 bits sur un ordinateur quantique demande le même effort que de casser de l’AES 128 bits sur un ordinateur classique.

Le chiffrement symétrique a la bonne idée d’être très rapide, mais il a un inconvénient majeur : il faut utiliser la même clé pour chiffrer et déchiffrer, et donc la faire circuler, ce n’est pas le plus pratique pour envoyer des messages chiffrés.

Avec le chiffrement asymétrique, la transmission ne pose plus de problème puisqu’on a une clé privée et une clé publique. Pourquoi alors ne pas utiliser directement du chiffrement asymétrique ? Il a un problème majeur : il est bien plus lent à cause des calculs complexes qu’il nécessite. 

Algos asymétrique et symétrique imbriqués

Le chiffrement hybride mélange simplement les deux technologies. Et plutôt que d’avoir un système lent (asymétrique) avec une clé unique (symétrique), les cryptologues ont eu la bonne idée de les combiner afin de profiter de la rapidité des algorithmes symétriques et du double jeu de clés de ceux asymétriques.

Dans la pratique, le message de base est chiffré via un algorithme symétrique (AES par exemple) grâce à une clé de session aléatoire (k). C’est ensuite cette clé de session qui va être chiffrée via un algorithme asymétrique. La « lenteur » de l’algorithme n’est plus vraiment un problème puisqu’on ne chiffre qu’une clé de quelques centaines de bits seulement, pas la totalité du message. 

Pour chiffrer la clé (k), on utilise la clé publique du destinataire du message. Il n’a alors plus qu’à utiliser sa clé privée pour la déchiffrer et ainsi obtenir la clé de session (k) de l’algorithme symétrique. Il peut ensuite déchiffrer le message initial. C’est efficace, rapide et sécurisé. 

Mais, comme nous l’avons déjà expliqué, ce montage sera balayé d’un revers de la main par un ordinateur quantique. En effet, les anciens algorithmes asymétriques ne peuvent pas franchement y résister. Une fois la clé k décryptée, il n’y a plus qu’à déchiffrer le message. 

Hybride post quantique : on prend les mêmes, avec KYBER et XOR en plus

C’est là qu’entre en jeu le chiffrement hybride post quantique. On entend depuis quelque temps parler d’algorithmes post quantique, capables de résister à ces nouveaux supercalculateurs. En juillet de l’année dernière, le NIST en a sélectionné quatre, dont un seul pour le chiffrement à clé publique (asymétrique) : CRYSTALS-KYBER. C’est ce dernier qui peut être utilisé, les trois autres ne servant que pour de la signature numérique.

Au début, le principe reste exactement le même : une clé de session (k) pour chiffrer le message via un algorithme symétrique, qui est donc résistant à un ordinateur quantique modulo un doublement de la taille des clés.  Sauf que la clé de session est le résultat d’une opération de logique utilisant un opérateur booléen. Cosmian nous explique que le NIST a décidé de partir sur un XOR (OU exclusif) avec deux clés de session k’ et k’’ (de même taille). On a donc k = k’ ⊕ k’’. Le symbole ⊕ correspond à l’opérateur XOR. 

Maintenant, on va utiliser un algorithme post quantique pour chiffrer k’, par exemple KYBER, et un algorithme asymétrique plus classique pour chiffrer pour k’’. Si une des deux clés k’ ou k’’ est trouvée par un attaquant, il ne pourra rien faire sans avoir la seconde. Les deux clés sont en effet nécessaires pour reconstituer k. D’autres approches que XOR sont possibles, le principe reste le même.

Pour casser le chiffrement et donc décrypter le message, il faut ainsi casser à la fois l’algorithme classique (éprouvé, mais sensible aux ordinateurs quantiques) et l’algorithme post quantique (récent, mais résistant aux ordinateurs quantiques). Le meilleur des deux mondes d’une certaine manière. 

Commentaires (18)


Sachant que pour le web (https), la clé de session ne circule même pas sur le réseau.



Par exemple avec Diffie-Hellman, chacune des partie génère un secret et en partage la partie publique. En “multipliant” la partie publique de l’autre avec son propre secret, on arrive à un secret commun.



(le chiffrement asymétrique est utilisé pour que le serveur prouve son identité - pas pour chiffrer les communications)


Sauf que Diffie-Hellman est sensible aux attaques de l’homme du milieu. Ce n’est pas pour rien que le chiffrement asymétrique est utilisée afin de vérifier l’identité du serveur.



Résultat des courses : si (quand ?) ordinateur quantique il y a, la vérification de l’identité tombe, et donc Diffie-Hellman redevient non sécurisé.


fdorin

Sauf que Diffie-Hellman est sensible aux attaques de l’homme du milieu. Ce n’est pas pour rien que le chiffrement asymétrique est utilisée afin de vérifier l’identité du serveur.



Résultat des courses : si (quand ?) ordinateur quantique il y a, la vérification de l’identité tombe, et donc Diffie-Hellman redevient non sécurisé.


Tout à fait, une attaque active (MITM) serait possible.
Mais si l’attaquant est passif (enregistre “seulement” les messages qui passent), je ne pense pas que le chiffrement (symétrique) soit facilement cassé.



On a donc k = k’ ⊕ k




Est-ce une erreur ? Si non, à quel moment k” est utile ? J’ai beau relire ce passage, mon cerveau n’arrive pas à comprendre (“k est égal à k additionné à k’ moins leur partie commune” est ce que je comprends)


Oui, c’est bien k = k’ ⊕ k”



Mon cerveau de matheux à fait le nécessaire automatiquement, je ne l’avais même pas remarqué :)


fdorin

Oui, c’est bien k = k’ ⊕ k”



Mon cerveau de matheux à fait le nécessaire automatiquement, je ne l’avais même pas remarqué :)


Merci pour vos réponses ^^


Grrr, j’ai pourtant regardé plusieurs fois et moi aussi mon cerveau ajouté tout seul les ’’, je fixed


gathor

Grrr, j’ai pourtant regardé plusieurs fois et moi aussi mon cerveau ajouté tout seul les ’’, je fixed


Ah zut, je viens de signaler. J’ai mis du temps à lire, ayant été interrompu… :transpi:


Très bonne explication, bien claire. Je connaissais le chiffrement hybride classique mais je me demandais ce que ça signifiait dans le monde post-quantique, si c’était lié ou une signification totalement différente du mot “hybride”.


@ Sébastien
Avec ce sous titre, j’ai non seulement le morceau dans la tête mais aussi la vision des monstres avec leur costume moisi. Je me vengerai :)
Bon je vais lire l’article.


Un truc m’échappe. Kyber étant déjà un algorithme asymétrique postquantique, et les clés symétriques étant aussi résistantes aux attaques quantiques, pourquoi s’embêter à transmettre 2 clés symétriques dont une par un canal non résistant aux attaques quantiques ?



La transmission d’une clé symétrique chiffrée via Kyber est suffisant non ?


Parce que nous n’avons pas de retour fort sur les algo postquantique.



Les algo symétriques en usage aujourd’hui sont éprouvés depuis des années. Il est tout à fait possible que les algo postquantique présentent des vulnérabilités non vu à ce jour (il a fallu de nombreuses années pour détecter des failles dans des algo comme MD4, MD5, WEP, etc.).



Aujourd’hui, l’usage des algorithmes asymétriques est sûr. Par contre, si un jour un ordinateur quantique sort, on sait qu’il sera cassable facilement.



Les algorithmes postquantiques résisteront à l’ordinateur quantique. Mais ils peuvent très bien présenter des failles non encore détectées, du fait de leur faible utilisation aujourd’hui et de leur jeune âge.



Combiner les deux garanti donc un renforcement de la sécurité, car il faudrait casser les deux algorithmes en même temps pour pouvoir décrypter les données.


fdorin

Parce que nous n’avons pas de retour fort sur les algo postquantique.



Les algo symétriques en usage aujourd’hui sont éprouvés depuis des années. Il est tout à fait possible que les algo postquantique présentent des vulnérabilités non vu à ce jour (il a fallu de nombreuses années pour détecter des failles dans des algo comme MD4, MD5, WEP, etc.).



Aujourd’hui, l’usage des algorithmes asymétriques est sûr. Par contre, si un jour un ordinateur quantique sort, on sait qu’il sera cassable facilement.



Les algorithmes postquantiques résisteront à l’ordinateur quantique. Mais ils peuvent très bien présenter des failles non encore détectées, du fait de leur faible utilisation aujourd’hui et de leur jeune âge.



Combiner les deux garanti donc un renforcement de la sécurité, car il faudrait casser les deux algorithmes en même temps pour pouvoir décrypter les données.



(reply:2161412:earendil_fr)




Merci à vous 2 :yes:



tomdom a dit:


Un truc m’échappe. Kyber étant déjà un algorithme asymétrique postquantique, et les clés symétriques étant aussi résistantes aux attaques quantiques, pourquoi s’embêter à transmettre 2 clés symétriques dont une par un canal non résistant aux attaques quantiques ?



La transmission d’une clé symétrique chiffrée via Kyber est suffisant non ?




Parce qu’on a un doute que l’algorithme résistant aux ordinateurs quantiques soit aussi résistant aux ordinateurs non-quantiques…


Merci pour cet article qui clarifie complètement les zones nébuleuses de l’article récent sur le même sujet.




fdorin a dit:


Aujourd’hui, l’usage des algorithmes asymétriques est sûr. Par contre, si un jour un ordinateur quantique sort, on sait qu’il sera cassable facilement.




Juste un détail de vocabulaire : “l’usage des algorithmes asymétriques” n’est pas sûr tant qu’on ne sait pas de quels algorithmes ont parle. On sait que RSA, El Gamal ou les courbes elliptiques sont probablement OK (99.9 %). Mais on sait aussi que RSA-704 ou que ECCp-109 sont cassés.



Tout ça pour dire que dire que “tous les usages des algorithmes asymétriques” sont sûr est une phrase dangereuse à dire :)



Oui, et j’ai oublié d’indiquer dans les commentaires de l’actu précédédente que c’était compliqué de répondre en un commentaire et qu’une actu était en préparation du coup pour apporter toutes les réponses.



:chinois:



Cqoicebordel a dit:


Merci pour cet article qui clarifie complètement les zones nébuleuses de l’article récent sur le même sujet.




Je ne suis dit la même chose.



Cqoicebordel a dit:



Tout ça pour dire que dire que “tous les usages des algorithmes asymétriques” sont sûr est une phrase dangereuse à dire :)




Tu as raison. C’est du chipotage, mais tu as raison ;) Tous les algorithmes asymétriques ne sont effectivement pas sûr. Mais employer ceux qui sont sur aujourd’hui ne pose pas de problème lorsque couplés avec un algo postquantique.


Fermer