Les organisations qui utilisent encore du RSA en 1024 bits se heurtent à des barrières de calcul moins élevées pour certaines attaques, selon Google DeepMind, dans des travaux relayés par SecurityWeek le 9 novembre. Des agents d'IA supervisés par des humains ont contribué à améliorer la falsification de signatures et la factorisation de clés, même si ces résultats supposent des prérequis substantiels et comprennent des algorithmes évalués uniquement sur le plan théorique.
Les travaux ont impliqué des cryptographes de l'UC San Diego et de l'Inria. Leur périmètre concerne les systèmes RSA-1024 obsolètes, a déclaré Pushmeet Kohli, vice-président chez Google DeepMind et directeur scientifique de Google Cloud. Selon lui, les protocoles de chiffrement modernes, qui utilisent presque systématiquement des clés d'au moins 2048 bits, restent sûrs.
Deux pistes pour réduire le calcul
Un résultat porte sur le coût de la factorisation de plusieurs clés RSA de même taille, c'est-à-dire la recherche des facteurs mathématiques qui sous-tendent ces clés. L'algorithme proposé répartit un calcul initial coûteux sur les cibles suivantes. DeepMind estime que, en moyenne, chaque clé supplémentaire de 1024 bits coûterait alors environ 30 fois moins cher à factoriser que selon la meilleure approche précédente.
Cette estimation suppose un travail initial équivalent à la factorisation d'une seule clé. L'algorithme n'a pas encore été implémenté.
L'autre résultat concerne la falsification de signatures numériques. Il examine le rembourrage (padding), c'est-à-dire des données prédéfinies utilisées pour compléter un message jusqu'à une taille de bloc fixe. Les chercheurs savaient déjà que le rembourrage pouvait entraver la falsification ; la question restée ouverte était de savoir dans quelle mesure il aidait lorsque les attaquants pouvaient choisir les données à signer.
La réponse de DeepMind dépend de la part du bloc contrôlée par l'attaquant. Kohli a déclaré que le rembourrage n'offre aucune protection lorsque cette part atteint environ la moitié du bloc, voire davantage. SecurityWeek rapporte que l'article qui accompagne ces travaux applique ce résultat à PKCS#1 v1.5, un format utilisé via l'interface de signature PKCS#11 sur des dispositifs cryptographiques, notamment des modules de sécurité matériels (HSM).
Une falsification démontrée, aux prérequis exigeants
Pour tester l'approche de falsification dans un environnement isolé, les agents ont repris une attaque académique antérieure utilisant la même clé de 1024 bits. La production de la première falsification a mobilisé 391 années-cœur de CPU, contre 1 380 dans l'étude précédente, soit une réduction d'un facteur 3,5. Une année-cœur correspond au travail d'un cœur de processeur pendant un an ; ce n'est pas la durée écoulée de l'expérience.
Deux agents ont planifié, exécuté et débogué le calcul en moins de quatre jours. Un chercheur humain a envoyé environ 20 messages, essentiellement pour valider des étapes. L'expérience n'a pas permis de factoriser la clé, tâche estimée à 500 000 à 1 million d'années-cœur.
Avec le contrôle d'une portion plus petite du bloc, par exemple un condensat (hash) de 32 octets, c'est-à-dire une représentation de longueur fixe d'un message, la falsification devient plus difficile. DeepMind estime néanmoins qu'un autre algorithme offre une amélioration théorique d'environ 1 600 fois par rapport à la meilleure méthode précédente pour les clés de 1024 bits.
Kohli présente ces travaux comme une raison d'utiliser l'IA pour remettre en question les hypothèses sur la difficulté des attaques cryptographiques. Pour les opérateurs qui évaluent le résultat sur les signatures, ce sont les prérequis des chercheurs qui déterminent la pertinence : l'attaque nécessite environ 4 milliards de requêtes de signature au préalable et ne permet pas de récupérer la clé privée. Les dispositifs qui calculent eux-mêmes le condensat des messages ne relèvent pas du périmètre de cette attaque sur les signatures.




