Les protocoles de chiffrement à clé publique sont complexes et, sur les réseaux informatiques, ils sont exécutés par logiciel. Or, cette approche est inadaptée à l'Internet des objets, un réseau hypothétique qui connecterait une multitude de capteurs différents — embarqués dans des véhicules, des appareils électroménagers, des infrastructures, des équipements de production et même des étiquettes d'identification pour le bétail — à des serveurs en ligne. Les capteurs embarqués, dont l'autonomie est cruciale, ne peuvent pas supporter la consommation d'énergie et l'espace mémoire nécessaires à l'exécution logicielle des protocoles de chiffrement.
Des chercheurs du MIT ont conçu une nouvelle puce, câblée pour effectuer le chiffrement à clé publique, qui consomme seulement 400 fois moins d'énergie qu'un logiciel utilisant les mêmes protocoles. Elle utilise également environ 10 fois moins de mémoire et est 500 fois plus rapide. Les chercheurs décrivent cette puce dans un article qu'ils présentent cette semaine à la Conférence internationale sur les circuits intégrés à semi-conducteurs (ISPC).
Comme la plupart des systèmes de chiffrement à clé publique modernes, la puce mise au point par les chercheurs utilise une technique appelée chiffrement par courbe elliptique. Comme son nom l'indique, ce type de chiffrement repose sur une fonction mathématique appelée courbe elliptique. Par le passé, des chercheurs, notamment l'équipe du MIT qui a développé cette nouvelle puce, ont conçu des puces embarquées capables de gérer des courbes elliptiques spécifiques ou des familles de courbes. La particularité de cette nouvelle puce réside dans sa capacité à gérer n'importe quelle courbe elliptique.
« Les cryptographes obtiennent des courbes aux propriétés différentes et utilisent des nombres premiers différents », explique Utsav Banerjee, doctorant en génie électrique et informatique au MIT et premier auteur de l'article. « Le choix de la courbe la plus sûre et la plus appropriée font l'objet de nombreux débats, et différents gouvernements, avec leurs propres normes, préconisent des courbes différentes. Cette puce nous permet de les prendre toutes en charge et, nous l'espérons, de pouvoir également prendre en charge les nouvelles courbes qui apparaîtront à l'avenir. ».
Dans le journal, Banerjee est rejoint par son directeur de thèse, Anantha Chandrakasan, doyen de l'école d'ingénierie du MIT et professeur Vannevar Bush de génie électrique et d'informatique ; Arvind, professeur Johnson de génie informatique ; et Andrew Wright et Chiraag Juvekar, tous deux étudiants diplômés en génie électrique et en informatique.
Raisonnement modulaire
Pour créer leur puce à courbe elliptique à usage général, les chercheurs ont décomposé le calcul cryptographique en ses éléments constitutifs. La cryptographie à courbe elliptique repose sur l'arithmétique modulaire : les valeurs des nombres intervenant dans le calcul sont limitées. Si le résultat d'un calcul dépasse cette limite, il est divisé par celle-ci, et seul le reste est conservé. Le secret entourant cette limite garantit la sécurité du calcul.
L'un des calculs pour lesquels la puce du MIT utilise un circuit dédié est la multiplication modulaire. Cependant, la cryptographie sur courbes elliptiques manipulant de grands nombres, le multiplicateur modulaire de la puce est volumineux. Un multiplicateur modulaire classique peut traiter des nombres de 16 ou 32 bits. Pour des calculs plus complexes, les résultats de multiplications discrètes sur 16 ou 32 bits sont intégrés à l'aide de circuits logiques supplémentaires.
Cependant, le multiplicateur modulaire de la puce du MIT peut traiter des nombres de 256 bits. L'élimination des circuits supplémentaires nécessaires à l'intégration de calculs plus simples réduit la consommation d'énergie de la puce et augmente sa vitesse.
Une autre opération clé en cryptographie à courbes elliptiques est l'inversion. L'inversion consiste à calculer un nombre qui, multiplié par un nombre donné, donne un produit modulaire de 1. Dans les puces précédentes dédiées à la cryptographie à courbes elliptiques, les inversions étaient effectuées par les mêmes circuits que les multiplications modulaires, ce qui permettait de gagner de la place. Mais les chercheurs du MIT ont doté leur puce d'un circuit inverseur spécifique. Cela augmente la surface de la puce de 10 % tout en réduisant de moitié sa consommation d'énergie.
Le protocole de chiffrement le plus courant pour la cryptographie à courbes elliptiques est le protocole DTLSP (Datagram Transport Layer Security Protocol), qui gère non seulement les calculs de courbes elliptiques, mais aussi le formatage, la transmission et le traitement des données chiffrées. En réalité, l'intégralité du protocole est intégrée directement dans la puce par les chercheurs du MIT, ce qui réduit considérablement la quantité de mémoire nécessaire à son exécution.
La puce comprend également un processeur à usage général qui peut être utilisé conjointement avec les circuits dédiés pour exécuter d'autres fonctions de sécurité basées sur les courbes elliptiques.
Auteur : Larry Hardesty, service de presse du MIT
