Arrêt sur image de la cryptographie à base de couplage

Documents pareils
Panorama de la cryptographie des courbes elliptiques

Cryptographie. Cours 3/8 - Chiffrement asymétrique

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

Fonction de hachage et signatures électroniques

INF 4420: Sécurité Informatique Cryptographie II

Cryptographie et fonctions à sens unique

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

Informatique. Les réponses doivent être données en cochant les cases sur la dernière feuille du sujet, intitulée feuille de réponse

Cryptologie à clé publique

Matrice d accès. Master SEMS, Pierre Paradinas. October 16, 2013

Calculateur quantique: factorisation des entiers

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

ÉPREUVE COMMUNE DE TIPE Partie D

Sécurité et sûreté des systèmes embarqués et mobiles

Quelques tests de primalité

Résolution d équations non linéaires

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

La cryptographie du futur

Nouveaux résultats en cryptographie basée sur les codes correcteurs d erreurs

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

Une introduction aux codes correcteurs quantiques

Les fonctions de hachage, un domaine à la mode

CRYPTOGRAPHIE. Signature électronique. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Cryptologie et physique quantique : Espoirs et menaces. Objectifs 2. distribué sous licence creative common détails sur

Cryptographie. Master de cryptographie Architectures PKI. 23 mars Université Rennes 1

ISFA INSTITUT DE SCIENCE FINANCIÈRE ET D ASSURANCES GRANDE ÉCOLE D ACTUARIAT ET DE GESTION DES RISQUES

Fonctions homographiques

Probabilités sur un univers fini

Rapport de stage de fin de première année : exemples de groupes, leur traitement par MAGMA, et applications en cryptographie

Votre Réseau est-il prêt?

Continuité et dérivabilité d une fonction

Corrigé des TD 1 à 5

Représentation des Nombres

Le calcul formel dans l enseignement des mathématiques

L exclusion mutuelle distribuée

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Polynômes à plusieurs variables. Résultant

Simulation de variables aléatoires

Introduction au pricing d option en finance

Probabilités sur un univers fini

Accélérateurs logiciels et matériels pour l algèbre linéaire creuse sur les corps finis

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Ordonnancement temps réel

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

DÉCLARATION ET DEMANDE D'AUTORISATION D OPÉRATIONS RELATIVES A UN MOYEN DE CRYPTOLOGIE

Petite introduction aux protocoles cryptographiques. Master d informatique M2

Licence Sciences et Technologies Examen janvier 2010

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

Fonction inverse Fonctions homographiques

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Exo7. Limites de fonctions. 1 Théorie. 2 Calculs

Prérequis. Résolution des problèmes WMI. Date 03/30/2010 Version 1.0 Référence 001 Auteur Antoine CRUE

EXERCICE 4 (7 points ) (Commun à tous les candidats)

ANALYSE GÉNÉRALE - PROPOSITION DE CORRIGÉ. Exercice 1

Chapitre VI- La validation de la composition.

Sécurité des réseaux IPSec

0x700. Cryptologie Pearson France Techniques de hacking, 2e éd. Jon Erickson

Résolution de systèmes linéaires par des méthodes directes

Introduction à l étude des Corps Finis

Initiation à l algorithmique

Automatique (AU3): Précision. Département GEII, IUT de Brest contact:

Etude de fonctions: procédure et exemple

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Gestion des Clés. Pr Belkhir Abdelkader. 10/04/2013 Pr BELKHIR Abdelkader

Variations du modèle de base

Par KENFACK Patrick MIF30 19 Mai 2009

Qu est-ce qu un ordinateur quantique et à quoi pourrait-il servir?

Examen d informatique première session 2004

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Exercices - Polynômes : corrigé. Opérations sur les polynômes

D31: Protocoles Cryptographiques

TD 1 - Transmission en bande de passe

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Les indices à surplus constant

Réseaux IUP2 / 2005 DNS Système de Noms de Domaine

Projet de Traitement du Signal Segmentation d images SAR

Métriques de performance pour les algorithmes et programmes parallèles

Cryptographie Quantique

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

CHOIX OPTIMAL DU CONSOMMATEUR. A - Propriétés et détermination du choix optimal

Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet

ASR1 TD7 : Un microprocesseur RISC 16 bits

Bitcoin : crypto-monnaie décentralisée ouverte et libre Mathématiques, algorithmes et méthode de confiance

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

K W = [H 3 O + ] [OH - ] = = K a K b à 25 C. [H 3 O + ] = [OH - ] = 10-7 M Solution neutre. [H 3 O + ] > [OH - ] Solution acide

Optimisation, traitement d image et éclipse de Soleil

Joueur B Pierre Feuille Ciseaux Pierre (0,0) (-1,1) (1,-1) Feuille (1,-1) (0,0) (-1,1) Ciseaux (-1,1) (1,-1) (0.0)

Chapitre VI - Méthodes de factorisation

Probabilités conditionnelles Exercices corrigés

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Nouvelle version de Zonecheck, la 3.0, avec tests DNSSEC

Sujet 4: Programmation stochastique propriétés de fonction de recours

Transcription:

Arrêt sur image de la cryptographie à base de couplage Nadia El Mrabet SAS, EMSE Crypto puce, 2 juin 2017 - Porquerolles 1 / 35

Plan de l exposé 1 Couplage sur courbes elliptiques Construction et exemple de couplages Calcul des couplages Aspect arithmétique de la cryptographie à base de couplages 2 Attaque par injection de fautes La cryptographie basée sur l identité Définition d une attaque par injection de fautes Attaque par injection de fautes contre l algorithme de Miller 2 / 35

Plan de l exposé 1 Couplage sur courbes elliptiques Construction et exemple de couplages Calcul des couplages Aspect arithmétique de la cryptographie à base de couplages 2 Attaque par injection de fautes La cryptographie basée sur l identité Définition d une attaque par injection de fautes Attaque par injection de fautes contre l algorithme de Miller 3 / 35

Qu est ce qu un couplage? Propriétés Soient G 1, G 2 et G 3 trois groupes abéliens finis. Un couplage est une application : e : (G 1, +) (G 2, +) (G 3, ) 4 / 35

Qu est ce qu un couplage? Propriétés Soient G 1, G 2 et G 3 trois groupes abéliens finis. Un couplage est une application : Vérifiant les propriétés : e : (G 1, +) (G 2, +) (G 3, ) Non dégénérescence : P G 1 {0}, Q G 2 t.q. e(p, Q) 1 Bilinéarité : P, P G 1, Q G 2, e(p + P, Q) = e(p, Q).e(P, Q) 4 / 35

Qu est ce qu un couplage? Propriétés Soient G 1, G 2 et G 3 trois groupes abéliens finis. Un couplage est une application : Vérifiant les propriétés : e : (G 1, +) (G 2, +) (G 3, ) Non dégénérescence : P G 1 {0}, Q G 2 t.q. e(p, Q) 1 Bilinéarité : P, P G 1, Q G 2, e(p + P, Q) = e(p, Q).e(P, Q) Conséquences j Z, e(jp, Q) = e(p, Q) j = e(p, jq) 4 / 35

Cryptologie à base de couplages Cryptographie les couplages ont permis la construction de protocoles originaux ainsi que la simplification de protocoles cryptographiques existants. L échange de Diffie Hellman à trois (Joux 2001) La cryptographie basée sur l identité (Boneh et Franklin 2001) Les s (Boneh, Lynn, Shacham 2001) Ils pourraient apporter des solutions élégantes aux problèmes suivants liés à l IoT et au cloud par exemple : Gestion des clé ; Schémas de signature courte ; Signature par agrégation, aveugle, en anneau... ; Chiffrement et signature hiérarchiques. 5 / 35

Cryptologie à base de couplages Exemple Construction d une clé pour un échange basé sur l identité entre Alice et Bob. 6 / 35

Cryptographie basée sur l identité Echange de clé sécurisée entre Alice et Bob 7 / 35

Cryptographie basée sur l identité Echange de clé sécurisée entre Alice et Bob 7 / 35

Cryptographie basée sur l identité Echange de clé sécurisée entre Alice et Bob 7 / 35

Cryptographie basée sur l identité Echange de clé sécurisée entre Alice et Bob 7 / 35

Les couplages utilisés en cryptologie Le couplage de Weil, le couplage de Tate, le couplage η, le couplage Ate et Twisted Ate. sont les couplages les plus utilisés en cryptologie. 8 / 35

Les couplages utilisés en cryptologie Le couplage de Weil, le couplage de Tate, le couplage η, le couplage Ate et Twisted Ate. sont les couplages les plus utilisés en cryptologie. Les couplages de Weil, de Tate, Ate et Twisted Ate sont construits sur le même modèle. Ils partagent la même étape centrale pour leur calcul. 8 / 35

Construction des couplages Données Afin de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K : E(K) := {(x, y) K K, y 2 = x 3 + ax + b, avec a, b K} P. Figure: Courbe elliptique dans le plan réel La courbe elliptique est munie d une loi d addition. 9 / 35

Courbe elliptique Loi de groupe - Addition 10 / 35

Courbe elliptique Loi de groupe - Addition 10 / 35

Courbe elliptique Loi de groupe - Addition 10 / 35

Courbe elliptique Loi de groupe - Doublement 11 / 35

Courbe elliptique Loi de groupe - Doublement 11 / 35

Courbe elliptique Loi de groupe - Doublement Par convention nous noterons [r]p = P } + P + {{... + P }. r fois 11 / 35

Les courbes elliptiques Loi de groupe - Aspect algébrique Opposé d un point Soit E une courbe d équation y 2 = x 3 + ax + b, P = (x P, y P ) et Q = (x Q, y Q ) deux éléments de E(K). Les coordonnées du point P l inverse du point P pour la loi + peuvent s exprimer en fonction des coordonnées de P. L opposé du point P, noté P, admet pour coordonnées (x P, y P ). Cette propriété est une conséquence directe du fait que la droite (P( P)) est une droite verticale. Le troisième point d intersection de la courbe elliptique et de cette droite ne peut être que le point à l infini. Ainsi, P + ( P) = P. 12 / 35

Les courbes elliptiques Loi de groupe - Aspect algébrique Soient P = (x P, y P ) et Q = (x Q, y Q ) deux points distincts d une courbe elliptique E(K) tels que P Q. Pour trouver les formules donnant les coordonnées du point R = P + Q avec R = (x R, y R ), nous cherchons à résoudre le système de deux équations formé par l équation de la droite (PQ) et l équation de la courbe elliptique. Ce système traduit exactement le fait que (P + Q) est le troisième point d intersection de la courbe elliptique et de la droite (PQ). Nous obtenons les formules 1, où λ représente la pente de la droite (PQ) : λ = y P y Q x P x Q x R = λ 2 x P x Q (1) y R = λ(x P x R ) y P 13 / 35

Construction des couplages Données Afin de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K F p, a et b F p : E(K) := {(x, y) K K, y 2 = x 3 + ax + b} {P }. 14 / 35

Construction des couplages Données Afin de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K F p, a et b F p : E(K) := {(x, y) K K, y 2 = x 3 + ax + b} {P }. r un nombre premier divisant card(e(f p )), ainsi que l ensemble : E[r] = {P E(F p ), [r]p = P }. 14 / 35

Construction des couplages Données Afin de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K F p, a et b F p : E(K) := {(x, y) K K, y 2 = x 3 + ax + b} {P }. r un nombre premier divisant card(e(f p )), ainsi que l ensemble : E[r] = {P E(F p ), [r]p = P }. Le degré de plongement k : le plus petit entier tel que r (p k 1) ; Si k > 1 alors E[r] E(F p k ). 14 / 35

Construction des couplages Données Afin de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K F p, a et b F p : E(K) := {(x, y) K K, y 2 = x 3 + ax + b} {P }. r un nombre premier divisant card(e(f p )), ainsi que l ensemble : E[r] = {P E(F p ), [r]p = P }. Le degré de plongement k : le plus petit entier tel que r (p k 1) ; Si k > 1 alors E[r] E(F p k ). La fonction de Miller notée f r,p qui admet : le point P comme zéro d ordre r le point [r]p comme pôle. 14 / 35

Construction des couplages Le couplage de Weil Soit P E(F p )[r], Q E(F p k )/re(f p k ) et k le degré de plongement de la courbe relativement à r. { ew : G 1 G 2 G 3, (P, Q) ( 1) r f r,p (Q) f r,q (P) 15 / 35

Construction des couplages Le couplage de Tate Soit P E(F p )[r], Q E(F p k )/re(f p k ) et k le degré de plongement de la courbe relativement à r. Le couplage de Tate est l application : e T : E(F p )[r] E(F p k )/re(f p k ) F p k (P, Q) f r,p (Q) pk 1 r 16 / 35

Construction des couplages Les couplages optimaux Dès que les couplages ont été introduits pour une utilisation cryptographique, les cryptographes ont cherché des algorithmes plus efficaces pour leur calcul. Soit : α = (p k 1)/r Ate : f t 1,Q (P) α twisted Ate f (t 1) e,p(q) α Optimal pairing f s,u (V ) α, avec s de l ordre de log 2 (r/ϕ(k)) Pairing lattices 17 / 35

L égalité de Miller La fonction f r,p Le calcul des couplages nécessite la construction d une fonction rationnelle f r,p pour r un entier naturel. Cette fonction admet le point P comme zéro d ordre r et le point [r]p comme pôle. Victor Miller a établi l égalité : f i+j,p = f i,p f j,p l [i]p,[j]p v [i+j]p Cette égalité nous permet de construire une suite de fonction admettant le point [i]p comme pôle pour i allant de 1 à r. 18 / 35

L égalité de Miller Exemple Soit f 1,P qui vaut 1 par construction des fonctions f i,p et i = 1. i := 2i (i = 2) f 2,P = f 1,P f 1,P l P,P v [2]P f 2,P = l P,P v [2]P 19 / 35

L égalité de Miller Exemple Soit f 1,P qui vaut 1 par construction des fonctions f i,p et i = 1. i := 2i (i = 2) f 2,P = f 1,P f 1,P l P,P v [2]P f 2,P = l P,P v [2]P i := 2i (i = 4) f 4,P = f 2,P f 2,P l [2]P,[2]P v [4]P f 4,P = f2,p 2 l [2]P,[2]P v [4]P i := i + 1 (i = 5) f 5,P = f 4,P l [4]P,P v [5]P 19 / 35

L égalité de Miller Exemple Soit f 1,P qui vaut 1 par construction des fonctions f i,p et i = 1. i := 2i (i = 2) f 2,P = f 1,P f 1,P l P,P v [2]P f 2,P = l P,P v [2]P ( ( ) 2 lp,p f 5,P = l ) [2]P,[2]P v [2]P v [4]P i := 2i (i = 4) f 4,P = f 2,P f 2,P l [2]P,[2]P v [4]P f 4,P = f2,p 2 l [2]P,[2]P v [4]P i := i + 1 (i = 5) f 5,P = f 4,P l [4]P,P v [5]P l [4]P,P v [5]P 19 / 35

Calcul des couplages L algorithme de Miller renvoie f r,p (Q) Data: r = (r N... r 0 ) 2, P G 1 E(F p )[r] et Q G 2 E(F p k )[r] ; Result: f r,p (Q) G 3 F p k ; T P, f 1 1, f 2 1 ; for i = N 1 to 0 do T [2]T ; ; ; if r i = 1 then T T + P ; end end return f 1 f2 20 / 35

Calcul des couplages L algorithme de Miller renvoie f r,p (Q) Data: r = (r N... r 0 ) 2, P G 1 E(F p )[r] et Q G 2 E(F p k )[r] ; Result: f r,p (Q) G 3 F p k ; T P, f 1 1, f 2 1 ; for i = N 1 to 0 do T [2]T ; f 1 f 1 2 l d (Q) ; f 2 f 2 2 v d (Q) ; if r i = 1 then T T + P ; end end return f 1 f2 20 / 35

Calcul des couplages L algorithme de Miller renvoie f r,p (Q) Data: r = (r N... r 0 ) 2, P G 1 E(F p )[r] et Q G 2 E(F p k )[r] ; Result: f r,p (Q) G 3 F p k ; T P, f 1 1, f 2 1 ; for i = N 1 to 0 do T [2]T ; f 1 f 1 2 l d (Q) ; f 2 f 2 2 v d (Q) ; if r i = 1 then T T + P ; f 1 f 1 l a (Q) ; f 2 f 2 v a (Q); end end return f 1 f2 20 / 35

Calcul des couplages L algorithme de Miller renvoie f r,p (Q) Data: r = (r N... r 0 ) 2, P G 1 E(F p )[r] et Q G 2 E(F p k )[r] ; Result: f r,p (Q) G 3 F p k ; T P, f 1 1, f 2 1 ; for i = N 1 to 0 do T [2]T ; f 1 f 1 2 l d (Q) ; f 2 f 2 2 v d (Q) ; if r i = 1 then T T + P ; f 1 f 1 l a (Q) ; f 2 f 2 v a (Q); end end return f 1 f2 20 / 35

Calcul des couplages L exponentiation finale 21 / 35

Calcul des couplages L exponentiation finale Voir présentation suivante 21 / 35

Calcul des couplages Optimisations L implémentation d un couplages nécessitent au moins 3 arithmétiques différentes : F p, F p k, E(F p ) ou E(F p k ). Les optimisations classiques sont : Coordonnées homogènes pour la courbe elliptique pour le point P lors du calcul de f s,p (Q). Arithmétique en tour d extension pour les calculs dans F p k. Utilisation de la tordue de E(F p k ). Elimination des dénominateurs. 22 / 35

Les paramètres à choisir niveau de sécurité représentation d une courbe elliptique système de coordonnées arithmétique des corps finis couplage 23 / 35

La sécurité des couplages Elle repose sur le problème du logarithme discret Niveau de sécurité en bits 80 128 192 256 Nombre minimal de bits de r 160 256 384 512 Nombre minimal de bits de p k 1 024 3 072 7 680 15 360 Table: Niveau de sécurité (avant janvier 2016) 24 / 35

La sécurité des couplages Niveau de sécurité en bits 80 128 192 256 Nombre minimal de bits de r 160 256 384 512 Nombre minimal de bits de p k 1 024 3 072 7 680 15 360 Table: Niveau de sécurité (avant janvier 2016) Famille de courbes BN BLS12 KSS BLS24 128 bits de sécurité 383 384 342 320 192 bits de sécurité 1031 1147 597 480 Table: Niveau de sécurité (post-janvier 2016) par Menezes et al. 25 / 35

Plan de l exposé 1 Couplage sur courbes elliptiques Construction et exemple de couplages Calcul des couplages Aspect arithmétique de la cryptographie à base de couplages 2 Attaque par injection de fautes La cryptographie basée sur l identité Définition d une attaque par injection de fautes Attaque par injection de fautes contre l algorithme de Miller 26 / 35

Cryptographie à base de couplage La cryptographie basée sur l identité Les protocoles de cryptographie basée sur l identité sont des protocoles cryptographiques asymétriques où la clé publique d un utilisateur est son identité, la clé privée associée lui est fournie par une autorité de confiance. 27 / 35

Cryptographie à base de couplage La cryptographie basée sur l identité Les protocoles de cryptographie basée sur l identité sont des protocoles cryptographiques asymétriques où la clé publique d un utilisateur est son identité, la clé privée associée lui est fournie par une autorité de confiance. Exemple L échange de clé basé sur l identité entre Alice et Bob. 27 / 35

Attaques par canaux cachées Lors d un protocole basé sur l identité l attaquant connait : l algorithme de couplage utilisé, le nombre d itérations (N = [log 2 (r)] + 1). Le secret est l un des arguments du couplage. Le secret n influence ni le temps d exécution ni le nombre d itérations de l algorithme. 28 / 35

Attaques par canaux cachés Les attaques par canaux cachés utilisent les failles matérielles de l implantation pour récupérer des informations sur le secret utilisé. Les attaques par injection de fautes consistent à perturber l exécution d un algorithme par exemple par des émissions lasers. 29 / 35

Attaques par canaux cachés Les attaques par canaux cachés utilisent les failles matérielles de l implantation pour récupérer des informations sur le secret utilisé. Les attaques par injection de fautes consistent à perturber l exécution d un algorithme par exemple par des émissions lasers. La première attaque par injection de fautes contre un cryptosystème à base de couplage à été introduite en 2006 par Page et Vercauteren contre l algorithme de Duursma et Lee. 29 / 35

Attaques par canaux cachés Les attaques par canaux cachés utilisent les failles matérielles de l implantation pour récupérer des informations sur le secret utilisé. Les attaques par injection de fautes consistent à perturber l exécution d un algorithme par exemple par des émissions lasers. La première attaque par injection de fautes contre un cryptosystème à base de couplage à été introduite en 2006 par Page et Vercauteren contre l algorithme de Duursma et Lee. Nous étudions la vulnérabilité de l algorithme de Miller confronté à une attaque par injection de fautes. 29 / 35

Description de l attaque par injection de fautes Nous supposons que le couplage est utilisé lors d un protocole de cryptographie basée sur l identité. Le secret est le point P, premier argument lors du calcul du couplage e(p, Q). Le second paramètre du couplage Q est connu et maitrisé par l attaquant. 30 / 35

Description de l attaque par injection de fautes Nous supposons que le couplage est utilisé lors d un protocole de cryptographie basée sur l identité. Le secret est le point P, premier argument lors du calcul du couplage e(p, Q). Le second paramètre du couplage Q est connu et maitrisé par l attaquant. Objectif de l attaque par injection de fautes L attaque consiste à faire varier le nombre d itérations durant l exécution de l algorithme de Miller, ceci afin d obtenir les résultats de deux exécutions dont le nombre d itérations soient consécutifs : τ et τ + 1 itérations pour τ {1,..., N}. Nous notons F τ,p (Q) et F τ+1,p (Q) les deux résultats de ces itérations. 30 / 35

Description de l attaque par injection de fautes Cible de l attaque Nous modifions le registre mémoire contenant l entier N déterminant le nombre d itérations exécutées par l algorithme de Miller à l aide d émission laser. 31 / 35

Description de l attaque par injection de fautes Cible de l attaque Nous modifions le registre mémoire contenant l entier N déterminant le nombre d itérations exécutées par l algorithme de Miller à l aide d émission laser. Principe de l attaque Nous procédons à plusieurs exécutions de l algorithme de Miller en modifiant aléatoirement à chaque exécution ce registre. 31 / 35

Description de l attaque par injection de fautes Cible de l attaque Nous modifions le registre mémoire contenant l entier N déterminant le nombre d itérations exécutées par l algorithme de Miller à l aide d émission laser. Principe de l attaque Nous procédons à plusieurs exécutions de l algorithme de Miller en modifiant aléatoirement à chaque exécution ce registre. Ce bombardement laser modifie le nombre d exécutions effectuées ; en dénombrant les cycles d horloge nous pouvons retrouver le nombre d itérations faites. Nous recommençons l opération jusqu à obtenir deux nombre d itérations consécutifs notés τ et τ + 1. 31 / 35

Description de l attaque par injection de fautes Probabilité de réussite Nous cherchons à tirer deux entiers consécutifs pris aléatoirement parmi N. 32 / 35

Description de l attaque par injection de fautes Probabilité de réussite Nous cherchons à tirer deux entiers consécutifs pris aléatoirement parmi N. Ce problème est similaire au paradoxe des anniversaires. Nous pouvons calculer la probabilité de réussite de cet évènement. Exemple Pour un nombre r de taille 256 bits, il suffit de 15 tirages pour obtenir deux nombres consécutifs pris parmi 256 entiers avec une probabilité supérieure à 0, 5 ; et de 26 pour obtenir une probabilité supérieure à 0, 9. 32 / 35

Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Nous notons F τ,p (Q) le résultat de la τ-ième itération et F τ+1,p (Q) celui de la τ + 1-ième. 33 / 35

Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Nous notons F τ,p (Q) le résultat de la τ-ième itération et F τ+1,p (Q) celui de la τ + 1-ième. Le rapport R = F τ+1,p(q) permet de retrouver des informations sur le F τ,p (Q) 2 secret utilisé. 33 / 35

Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Nous notons F τ,p (Q) le résultat de la τ-ième itération et F τ+1,p (Q) celui de la τ + 1-ième. Le rapport R = F τ+1,p(q) permet de retrouver des informations sur le F τ,p (Q) 2 secret utilisé. A la τ-ième étape, T = [j]p dans l algorithme de Miller Nous notons [j]p = (X j, Y j, Z j ) le point secret et Q = (x Q, y Q ) l entrée connue lors du calcul de e(p, Q). 33 / 35

Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Nous notons F τ,p (Q) le résultat de la τ-ième itération et F τ+1,p (Q) celui de la τ + 1-ième. Le rapport R = F τ+1,p(q) permet de retrouver des informations sur le F τ,p (Q) 2 secret utilisé. A la τ-ième étape, T = [j]p dans l algorithme de Miller Nous notons [j]p = (X j, Y j, Z j ) le point secret et Q = (x Q, y Q ) l entrée connue lors du calcul de e(p, Q). En écrivant les équations nous obtenons l expression de R suivante : Z 2j Z j 2 y Q 2Y j 2 (3X j 2 az j 4 )(x Q Z j 2 X j ). La connaissance du développement formel de R et de sa valeur, nous permet de construire un système en les coordonnées de [j]p. 33 / 35

Le système est : Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Y j Zj 3 = λ 2 Zj 2(X j 2 Zj 4) = λ 1 3X j (Xj 2 Zj 4) j 2 = λ 0. où nous connaissons les valeurs de λ 0, λ 1 et λ 2 dans F p. 34 / 35

Le système est : Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Y j Zj 3 = λ 2 Zj 2(X j 2 Zj 4) = λ 1 3X j (Xj 2 Zj 4) j 2 = λ 0. où nous connaissons les valeurs de λ 0, λ 1 et λ 2 dans F p. La résolution de ce système nous permet d exprimer les inconnues X j et Y j en fonction de Z j. Cela nous permet de construire une équation de degré 12 admettant Z j comme solution. 34 / 35

Le système est : Le rapport R = F τ+1,p(q) F τ,p (Q) 2 Y j Zj 3 = λ 2 Zj 2(X j 2 Zj 4) = λ 1 3X j (Xj 2 Zj 4) j 2 = λ 0. où nous connaissons les valeurs de λ 0, λ 1 et λ 2 dans F p. La résolution de ce système nous permet d exprimer les inconnues X j et Y j en fonction de Z j. Cela nous permet de construire une équation de degré 12 admettant Z j comme solution. (λ 2 0 9λ 2 1)Z 12 (4λ 0 λ 2 2 + 9λ 3 1)Z 6 + 4λ 4 1 0 mod p 34 / 35

Conclusion L algorithme de Miller est vulnérable à une attaque par injection de fautes. Vulnérabilité des couplages basés sur l algorithme de Miller Le couplage de Weil est directement sensible à cette attaque. Les couplages de Tate et Ate sont construits sur le même modèle : e T (P, Q) = (f r,p (Q)) pk 1 r. Cette exponentiation pourrait être une contre mesure à l attaque par faute, mais il est existe des méthodes comme les attaques par scan qui peuvent rendre possible l attaque par injection de fautes contre ces couplages. 35 / 35