Au terme de 35 millions d’heures de calcul, une équipe internationale est parvenue à inverser des opérations mathématiques utilisées pour assurer la sécurité informatique.
Une équipe de l’Inria à Nancy et du Laboratoire lorrain de recherche en informatique et ses applications (Loria – Inria, CNRS), associée aux universités de Limoges et de San Diego (Californie), a battu simultanément deux records numériques. Ces deux prouesses éprouvent la solidité de la sécurité informatique de systèmes aussi courants que les paiements par carte bancaire ou les communications en ligne. Ces chercheurs ont démontré jusqu’à quel niveau les chaînes de sécurité de tels systèmes pouvaient tenir, comme ils l’ont expliqué lundi 2 décembre à la conférence Elliptic curve cryptography à Bochum (Allemagne). Ces niveaux se mesurent par la taille des nombres, appelés clés, utilisés dans les protocoles de sécurité. Leur réponse est que l’utilisation de tout nombre inférieur à 240 chiffres (ou 795 bits) est dangereuse. C’est-à-dire que le chiffrement qu’il permet pourrait être cassé et les messages déchiffrés.
Les précédents records sur ce type d’exercice dataient de 2009 et 2016 pour des nombres à 768 bits. Ces quelques bits d’écart peuvent sembler faibles, mais les spécialistes estimaient que le « cassage » devait être deux fois et demie plus difficile.
Il aura fallu 35 millions d’heures de calcul (ou 4 000 ans pour un PC doté d’un seul cœur) et trois centres de calcul pour venir à bout des deux records. Le chantier a été lancé il y a plus d’un an et a consisté à améliorer l’algorithme précédent. D’ailleurs, à puissance de machine équivalente, les chercheurs ont mis 25 % de temps en moins pour ce record que pour le précédent. Le logiciel utilisé est désormais en open source, « là aussi une première », souligne Emmanuel Thomé, responsable de cette équipe au Loria.
Deux opérations mathématiques
Les deux records sont liés à deux opérations mathématiques. La première consiste à chercher les deux nombres premiers dont le produit donne la clé de 795 bits. Ces nombres servent ensuite à chiffrer des communications ou des messages. La seconde, appelée problème du logarithme discret, implique des calculs de puissance et sert en général pour protéger la première étape d’un protocole de sécurité. Les deux sont des fonctions mathématiques d’autant plus difficiles à inverser que les nombres impliqués sont grands.
La sécurité des échanges informatiques actuels n’est cependant pas menacée puisque les clés utilisées, ou en tout cas recommandées, sont bien plus grandes, de l’ordre de 2048 bits. « L’un des intérêts de cette démonstration est d’avoir montré que les deux calculs sont presque aussi difficiles l’un que l’autre, alors que la communauté pensait que le problème du logarithme discret était plus dur », note Emmanuel Thomé, qui a tout de même identifié un objet connecté doté d’une clé de 768 bits seulement.