Séminaire de Cryptographie

Accueil     Présentation     Archives

Benoît Gérard


Attaques par consommation de courant : collisions et codes LDPC

Depuis les années 1990, l'on sait que la consommation électrique d'un appareil peu donner de l'information sur le secret cryptographique qu'il contient. Différentes mesures de protection ont été développées afin de rendre plus difficile l'extraction de cette information. En parallèle, les cryptanalystes ont mis au point des techniques de plus en plus avancées. Cependant, ces techniques reposent sur des "modèles de fuites" qui sont des hypothèses sur la façon dont la consommation évolue en fonction des données traitées. Ces modèles dépendent des caractéristiques des puces et la question de la validité de ces modèles pour certaines puces peut se poser. Dans ce contexte, les attaques par collisions ont une approche orthogonale au problème puisque la seule hypothèse faite est que les fuites correspondant aux traitements de deux valeurs identiques seront similaires.

Le principe de base de ce type d'attaque est de détecter une collision (deux traces de consommation similaires) et d'en déduire la valeur du XOR de deux octets de clef. Il en résulte un système linéaire qu'il suffit de résoudre par recherche exhaustive des octets "libres" afin de retrouver la clef. Cette méthode est fortement sensible au fausses détections et n'exploite pas la redondance de l'information. Des travaux ont été effectué pour essayer d'améliorer ce point mais les techniques utilisées restent très heuristiques.

Dans cet exposé, je me propose de présenter l'attaque par collisions puis de l'exprimer comme un problème de décodage de code LDPC. On verra alors que l'utilisation de techniques classiques de décodage permet de passer outre les limitations citées afin de tirer pleinement profit de la redondance de l'information ainsi que de sa nature "soft".