Dé nition mathématique des couplages
Transcription
Dé nition mathématique des couplages
Dénition mathématique des couplages Nadia El Mrabet GREYC −LMNO−Université de Caen, France Ecole Code et Cryptographie , ENSIAS de Rabat−MAROC, Semaine du 8 au 14 mars 2010. 1 / 46 Plan de la présentation 1 Résumé des épisodes précédents 2 Rappel sur les corps nis 3 Courbe elliptique 4 Construction des couplages 2 / 46 Outline 1 Résumé des épisodes précédents 2 Rappel sur les corps nis 3 Courbe elliptique 4 Construction des couplages 3 / 46 Qu'est ce qu'un couplage ? Propriétés Soit G , G et G trois groupes de même ordre r , et un couplage 1 2 3 e : G1 × G2 → G3 vériant les propriétés de non dégénérescence ; bilinéarité. Conséquences ∀j ∈ N, e ([j ]P , Q ) = e (P , Q )j = e (P , [j ]Q ) 4 / 46 Suite des festivités Les couplages dans tout leur état Dans la suite, nous allons commencer à entrer dans le vif du sujet Dénition mathématiques des couplages Exemple et calcul de couplages Optimisation des couplages Mathématiques et Arithmétique Attaques par canaux cachés : SPA, attaque par faute, DPA Application au couplage Perspective de la recherche à base de couplage. 5 / 46 Suite des festivités Les couplages dans tout leur état Dans la suite, nous allons commencer à entrer dans le vif du sujet Dénition mathématiques des couplages Références Finite Fields de R. Lidl and H. Niederreiter, The arithmetic of elliptic curves deJ. H. Silverman. 6 / 46 Outline 1 Résumé des épisodes précédents 2 Rappel sur les corps nis 3 Courbe elliptique 4 Construction des couplages 7 / 46 Les corps nis Introduction Soit p un nombre premier, nous noterons Fp le corps ni à p éléments. Il est isomorphe à Z/pZ = {0, 1, 2, . . . , p − 2, p − 1}. Fp est un corps premier de caractéristique p . Nous notons F?p le sous ensemble de Fp composé des éléments inversibles pour la loi × dans Fp , il s'agit du sous groupe multiplicatif de Fp . Propriété Le sous groupe F?p est cyclique, il admet donc un élément g tel que n'importe lequel des éléments de F?p soit une puissance de g ; g est appelé un générateur de F?p . 8 / 46 Les corps nis Introduction Le calcul des couplages repose sur l'arithmétique des corps nis. En particulier, de nombreuses démonstrations de théorèmes reposent sur le petit théorème de Fermat : Petit théorème de Fermat Soit p un nombre premier et x un entier non nul dans Fp . Alors les égalités suivantes sont vraies : x si x 6= 0 mod p, x p ≡ (p −1) ≡ mod p, 1 mod p. x L'ordre d'un élément x est le plus petit entier α tel que x α ≡ 1 mod(p). Les générateurs de F?p sont les éléments de Fp d'ordre p − 1. 9 / 46 Les corps nis Polynôme irréductible Nous notons Fp [X ] l'ensemble des polynômes à coecients dans Fp ; nous aurons en particulier besoin de la notion de polynômes irréductibles : Dénition Un polynôme P (X ) de degré n est dit irréductible sur Fp si P (X ) n'est divisible par aucun polynôme Q (X ) de degré compris entre 1 et (n − 1). Exemple Soit p = 257, le corps ni F est déni comme étant l'ensemble des entiers compris entre 0 et 256. Le polynôme P (X ) = X − 3 est un polynôme irréductible sur F . En eet, P est de degré 4. Donc si P était réductible, P s'écrirait soit comme le produit d'un polynôme de degré 1 et d'un polynôme de degré 3 soit comme le produit de deux polynômes de degré 2. La suite en exercice. 257 4 257 10 / 46 Les corps nis Extension de corps L'arithmétique des couplages nécessite de construire des extensions de Fp . Une extension de Fp peut être vue comme un corps plus gros englobant Fp , la dénition suivante donne une représentation classique d'une telle extension de corps. Dénition Une extension de degré k du corps ni Fp , notée Fpk , est un corps ni que nous pouvons construire par le quotient Fp [X ]/(P (X )Fp [X ]) où Fp [X ] est l'ensemble des polynômes à coecients dans Fp , P (X ) est un polynôme irréductible sur Fp de degré k et P (X )Fp [X ] est l'ensemble des polynômes admettant P (X ) comme facteur (ou divisible par P (X )). Une extension de degré k de Fp peut donc être décrite comme l'ensemble des polynômes à coecients dans Fp et de degré strictement inférieur à k . Fpk = {R (X ) ∈ Fp [X ], tel que deg(R ) < k } . 11 / 46 Les corps nis Extension de corps Il est possible de construire une base de Fpk . Notons γ une racine dans Fpk de P (X ), polynôme irréductible de degré k , γ est une classe de X dans Fpk . Alors une base de Fpk est composée des puissances de γ inférieures à k : 1, γ, γ 2 , . . . , γ k −1 . Cette représentation permet de déduire directement le cardinal d'une extension de degré k du corps Fp : Propriété Le cardinal de Fpk , noté #Fpk , est pk . 12 / 46 Les corps nis Extension de corps Les racines des polynômes de Fp [X ] ne sont pas toutes contenues dans Fp . An de décrire l'espace dans lequel elles évoluent nous devons introduire la notion de clôture algébrique d'un corps : Dénition La clôture algébrique d'un corps ni Fp est l'extension de ce corps qui contient les racines de tous les polynômes de Fp [X ]. Nous la noterons Fp . Remarque Il n'y pas unicité de la clôture algébrique associée à un corps, mais elles sont toutes isomorphes. 13 / 46 Les corps nis Extension de corps Exemple Le polynôme P (X ) = X − 3 est un polynôme irréductible sur F . Comme il s'agit d'un polynôme de degré 4 il nous permet de construire une extension F 4 de degré 4 du corps ni F . Notons γ une racine dans F 4 du polynôme P (X ) = X − 3. Nous pouvons alors décrire les éléments de F 4 comme des polynômes en γ à coecient dans F 4 : 4 257 257 257 4 257 257 257 F2574 ∼ = a0 + a1 γ + a2 γ 2 + a3 γ 3 , a i ∈F 257 . 14 / 46 Outline 1 Résumé des épisodes précédents 2 Rappel sur les corps nis 3 Courbe elliptique 4 Construction des couplages 15 / 46 Les courbes elliptiques Dénition Une courbe elliptique E sur le corps K (notée E (K)) est dénie par une équation de Weierstrass du type pour ai ∈ K. (1) Une équation de Weierstrass dénit bien une courbe elliptique s'il n'existe pas de point de E (K) pour lequel les dérivées partielles (2y + a x + a ) et (3x + 2a x + a − a y ) s'annulent simultanément. Les coordonnées (x , y ) sont appelées coordonnées anes sur E . y 2 + a1 xy + a3 y = x 3 + a2 x 2 + a4 x + a6 , 1 2 2 4 3 1 16 / 46 Les courbes elliptiques Dénition Il est possible de décrire plus simplement une courbe elliptique, en utilisant une équation de Weierstrass réduite comme nous le montre le théorème suivant de : Théorème Soit K un corps ni de caractéristique diérente de 2 et 3. Alors pour toute courbe elliptique E (K) il existe un changement de variables tel que E (K) admette une équation de Weierstrass réduite y 2 = x 3 + ax + b. 17 / 46 Les courbes elliptiques Loi de groupe Soit E (K) une courbe elliptique sur un corps K. Il existe une loi de groupe notée + sur E (K). Cette loi existe en toute caractéristique, mais nous ne considérons que les courbes elliptiques dénies sur un corps de caractéristique diérente de 2 et 3 et données par une équation réduite de Weierstrass. La loi de groupe repose sur le théorème suivant : Théorème Soit E un courbe elliptique et D une droite du plan. Si D est tangente en un point à la courbe E ou bien si D coupe E en deux points distincts ; alors D coupe E en un unique autre point. La loi de groupe se décrit très bien de manière graphique. 18 / 46 Courbe elliptique Représentation graphique Figure: Courbe elliptique dans le plan réel La courbe elliptique est munie d'une loi d'addition. 19 / 46 Courbe elliptique Loi de groupe - Addition 20 / 46 Courbe elliptique Loi de groupe - Addition 20 / 46 Courbe elliptique Loi de groupe - Addition 20 / 46 Courbe elliptique Loi de groupe - Doublement 21 / 46 Courbe elliptique Loi de groupe - Doublement 21 / 46 Courbe elliptique Loi de groupe - Doublement Par convention nous noterons [r ]P = |P + P +{z. . . + P}. r fois 21 / 46 Les courbes elliptiques Loi de groupe Cette construction nous permet d'assurer que le théorème suivant est vrai. Théorème L'ensemble des points d'une courbe elliptique E muni de la loi + vérie les propriétés suivantes : (i) La loi + est interne : ∀P , Q ∈ E , P + Q ∈ E . (ii) Existence d'un élément neutre : ∀P ∈ E , P + P∞ = P . (iii) Commutativité de la loi + : ∀P , Q ∈ E , P + Q = Q + P . (iv) La loi + est associative : ∀P , Q , R ∈ E , (P + Q ) + R = P + (Q + R ). (v) La loi + est symétrique : ∀P ∈ E , il existe un point noté −P tel que P + (−P ) = P∞ . (E (K), +) est donc un groupe abélien additif d'élément neutre P∞ . 22 / 46 Les courbes elliptiques Loi de groupe - Aspect algébrique Nous pouvons décrire algébriquement la loi de groupe que nous venons de présenter graphiquement. Soient P et Q deux points d'une même courbe elliptique. Nous nous plaçons dans le plan ane sur K = R pour écrire les équations de droites intervenant dans les constructions des points P + Q et [2]P . Ces équations de droites vont nous permettre de décrire par des formules explicites la loi de groupe d'une courbe elliptique. 23 / 46 Les courbes elliptiques Loi de groupe - Aspect algébrique Opposé d'un point Soit E une courbe d'équation y = x + ax + b, P = (xP , yP ) et Q = (xQ , yQ ) 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 (xP , −yP ). 2 3 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'inni. Ainsi, P + (−P ) = P∞ . 24 / 46 Les courbes elliptiques Loi de groupe - Aspect algébrique Soient P = (xP , yP ) et Q = (xQ , yQ ) deux points distincts d'une courbe elliptique E (K) tels que P 6= −Q . Pour trouver les formules donnant les coordonnées du point R = P + Q avec R = (xR , yR ), 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 2, où λ représente la pente de la droite (PQ ) : yP − yQ λ = xP − xQ x = λ2 − xP − xQ R yR = λ(xP − xR ) − yP (2) 25 / 46 Les courbes elliptiques Loi de groupe - Aspect algébrique Pour trouver les formules donnant les coordonnées du point R = [2]P , nous utilisons le fait que −[2]P est le second point d'intersection de la courbe E et de la tangente en E au point P . L'équation de la tangente et celle de la courbe elliptique forment un système dont la résolution nous donne les formules pour obtenir les coordonnées de point R = [2]P . Nous obtenons les formules 3, où λ représente la pente de la tangente au point P de la courbe elliptique : 2 3x +a P λ = 2yP xR = λ2 − 2xP yR = λ(xP − xR ) − yP (3) 26 / 46 Les courbes elliptiques Diérents systèmes de coordonnées Soit P = (xP , yP ) un point de la courbe elliptique E : y = x + ax + b. Nous avons donné dans les parties précédentes les formules d'addition et de doublement de points en coordonnées anes. Il existe d'autre types de coordonnées : projectives Jacobiennes,.... Les équations pour l'addition et le doublement s'adaptent à ces coordonnées. 2 3 27 / 46 Les courbes elliptiques Diérents systèmes de coordonnées Les coordonnées projectives du point P sont notées (XP : YP : ZP ), I E : Y 2 Z = X 3 + aXZ 2 + bZ 3 Le point à l'inni est le point (0 : 1 : 0). I pour α non nul le point (XP : YP : ZP ) ≡ (α × XP : α × YP : α × ZP ). I I Relation entre coordonnées anes et projectives (XP : YP : ZP ) ≡ ( XZPP , YZPP ), si ZP 6= 0 et au point à l'inni sinon. L'opposé du point (XP : YP : ZP ) est le point (XP : −YP : ZP ). 28 / 46 Les courbes elliptiques Diérents systèmes de coordonnées Les coordonnées Jacobiennes du point P sont notées (XP ; YP ; ZP ), I E : Y 2 = X 3 + aXZ 4 + bZ 6 Le point à l'inni est le point (1 : 1 : 0). I pour α non nul le point (XP ; YP ; ZP ) ≡ (α2 × XP ; α3 × YP ; α × ZP ) I Relation entre coordonnées anes et jacobiennes (XP ; YP ; ZP ) ≡ ( XZP2 , YZP3 ), si ZP 6= 0 et au point à l'inni sinon. P I P L'opposé du point (XP : YP : ZP ) est le point (XP : −YP : ZP ). 29 / 46 Les courbes elliptiques Cardinalité et torsion Le premier résultat intéressant concernant le cardinal d'une courbe elliptique est le théorème de Hasse. Ce théorème donne un intervalle dans lequel se trouvent toutes les valeurs possibles du cardinal d'une courbe elliptique dénie sur Fq , pour q = pm avec p premier strictement supérieur à 3 et m ∈ N? . Nous noterons #E (Fq ) le cardinal de la courbe elliptique E (Fq ). Théorème de Hasse Soit E une courbe elliptique dénie sur un corps Fq alors |#E (Fq ) − (q + 1)| ≤ 2 √ q . Il existe des algorithmes permettant de calculer le cardinal d'une courbe elliptique donnée, par exemple : l'algorithme de Schoof-Elkies-Atkin de complexité en O ((log(q )) ) opérations. L'algorithme est implémenté dans les logiciels de calculs formels Magma et PariGP. 4 30 / 46 Les courbes elliptiques Cardinalité et torsion Soient E une courbe elliptique dénie sur un corps Fq et r un entier. Nous dénissons la notion de points de r -torsion de la courbe elliptique E (Fq ) comme suit : Dénition Un point P de la courbe elliptique E (Fq ) est un point de r -torsion s'il vérie la condition [r ]P = P∞ . Exemple Soit E la courbe elliptique d'équation y = x + 1 sur F . Le cardinal de cette courbe est 258 = 2 × 129. La courbe admet donc deux sous groupes de torsion non triviaux, un d'ordre 2 et un d'ordre 129. Le point P = (8, 16) est un point de E de 129-torsion. Le point Q = (−1, 0) est un point de E de 2-torsion. 2 3 257 31 / 46 Les courbes elliptiques Cardinalité et torsion An de décrire tous les points de r -torsion, nous devons donc considérer la courbe elliptique dénie sur la clôture algébrique de Fq , notée Fq . Remarque Soit E (Fq ) une courbe elliptique sur un corps ni Fq , et r un entier. L'ensemble des points r -torsion appartient à E (Fq ). L'ensemble des points de E (Fq ) de r -torsion est le noyau de l'application [r ] : P → [r ]P : [ ]= E r P ∈ E (Fq ), tel que [r ]P = P∞ . 32 / 46 Les courbes elliptiques Cardinalité et torsion Nous connaissons la structure de l'ensemble des points de r -torsion : Théorème Soit r un entier premier avec p la caractéristique de Fq . Alors [ ]∼ = Z/r Z × Z/r Z. E r Si p divise r alors r peut s'écrire sous la forme r = pα n, où p ne divise pas n et alors ∼ E [r ] = Z/n Z × Z/n Z ou Z/r Z × Z/n Z. Corollaire Pour r premier avec p et divisant #E (Fq ), nous déduisons du Théorème ?? que #E [r ] = r . 2 Pour décrire les points de E [r ] nous introduisons le degré de plongement de la courbe. 33 / 46 Les courbes elliptiques Degré de plongement de la courbe Dénition Soit E (Fq ) une courbe elliptique, et r un diviseur premier de #E (Fq ). Le degré de plongement de la courbe elliptique E relativement à r est le plus petit entier k pour lequel r divise (q k − 1). Autrement dit, k est l'ordre de q dans Fr . Ce paramètre de la courbe permet de savoir dans quel groupe vivent les points de r -torsion comme le montre le théorème de Balasubramanian et Koblitz : Théroème Soit E (Fq ) une courbe elliptique dénie sur un corps ni Fq , et r un diviseur de #E (Fq ). Si r est premier avec q et r ne divise pas (q − 1), alors n E [r ] ⊂ E (Fq n ) pour n un entier positif si et seulement si r divise (q − 1). 34 / 46 Les courbes elliptiques Degré de plongement de la courbe Structure des points de r -torsion Le degré de plongement k est le degré de l'extension minimale du corps Fq telle que E [r ] ⊂ E (Fqk ). Si k > 1, nous savons donc que E [r ] ⊂ E (Fqk ). De plus, la structure des points de r -torsion est connue, il existe P ∈ E (Fq ) et Q ∈ E (Fqk ) tels que [ ]= E r iP + jQ , (i , j ) ∈ Z2 . Exemple Le sous groupe de 2-torsion de la courbe E d'équation y = x + 1 sur F admet un degré de plongement égal à 1. Il sut de remarquer que 2 divise 257 − 1 = 256. Le sous groupe de 129-torsion de la courbe E d'équation y = x + 1 sur F admet un degré de plongement égal à 2. En eet, 129 divise (257 − 1) mais pas 257 − 1. 2 3 257 2 3 257 2 35 / 46 Outline 1 Résumé des épisodes précédents 2 Rappel sur les corps nis 3 Courbe elliptique 4 Construction des couplages 36 / 46 Construction des couplages Données An de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K ⊃ Fp , a et b ∈ Fp : E (K) := (x , y ) ∈ K × K, y = x + ax + b ∪ {P∞ }. 2 3 37 / 46 Construction des couplages Données An de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K ⊃ Fp , a et b ∈ Fp : E (K) := (x , y ) ∈ K × K, y = x + ax + b ∪ {P∞ }. 2 3 un nombre premier divisant card(E (Fp )), ainsi que l'ensemble : E [r ] = P ∈ E (Fp ), [r ]P = P∞ . r 37 / 46 Construction des couplages Données An de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K ⊃ Fp , a et b ∈ Fp : E (K) := (x , y ) ∈ K × K, y = x + ax + b ∪ {P∞ }. 2 3 un nombre premier divisant card(E (Fp )), ainsi que l'ensemble : E [r ] = P ∈ E (Fp ), [r ]P = P∞ . r Le degré de plongement k : le plus petit entier tel que r |(pk − 1) ; Si k > 1 alors E [r ] ⊂ E (Fpk ). 37 / 46 Construction des couplages Données An de calculer un couplage, nous avons besoin de : Soit E une courbe elliptique sur un corps K ⊃ Fp , a et b ∈ Fp : E (K) := (x , y ) ∈ K × K, y = x + ax + b ∪ {P∞ }. 2 3 un nombre premier divisant card(E (Fp )), ainsi que l'ensemble : E [r ] = P ∈ E (Fp ), [r ]P = P∞ . r Le degré de plongement k : le plus petit entier tel que r |(pk − 1) ; Si k > 1 alors E [r ] ⊂ E (Fpk ). La fonction de Miller notée fr ,P qui admet : le point P comme zéro d'ordre r le point [r ]P comme pôle. 37 / 46 Construction des couplages Données Soient E : y = x + ax + b une courbe elliptique dénie sur Fp et r un facteur premier du cardinal de E (Fp ). 2 3 An d'éviter que toute la r -torsion soit dans E (Fp ), nous demandons de plus que r ne divise pas le cardinal de E (Fp ), noté #E (Fp ). Cette condition est facilement réalisable en pratique. Nous savons que les points de r -torsion de la courbe elliptique vérient que E [r ] ⊂ E (Fpk ), où k est le degré de plongement de la courbe relativement au facteur r. 2 Nous noterons G = E (Fp )[r ], G ⊂ E (Fpk )[r ] et G = µ ∈ Fpk tel que µr = 1 dans Fpk , il s'agit du sous-groupe des racines r -ième de l'unité. 1 2 3 38 / 46 Construction des couplages Le couplage de Weil Soit P ∈ E (Fp )[r ], Q ∈ E (Fpk )/rE (Fpk ) et k le degré de plongement de la courbe relativement à r . W :G ×G e → G3 , f (Q ) (P , Q ) → (−1)r frr ,,PQ (P ) 1 2 39 / 46 Construction des couplages Le couplage de Tate Soit P ∈ E (Fp )[r ], Q ∈ E (Fpk )/rE (Fpk ) et k le degré de plongement de la courbe relativement à r . 40 / 46 Construction des couplages Le couplage de Tate Soit P ∈ E (Fp )[r ], Q ∈ E (Fpk )/rE (Fpk ) et k le degré de plongement de la courbe relativement à r . Le couplage de Tate est l'application : ∗ T : E (Fp )[r ] × E (Fpk )/rE (Fpk ) → Fpk e pk −1 (P , Q ) → fr ,P (Q ) r 40 / 46 L'égalité de Miller La fonction fr ,P Le calcul des couplages nécessite la construction d'une fonction rationnelle fr ,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é : i +j ,P = fi ,P × fj ,P × f l[ i ]P ,[j ]P i + j ]P v[ Cette égalité nous permet de construire une suite de fonction admettant le point [i ]P comme pôle pour i allant de 1 à r . 41 / 46 L'égalité de Miller Exemple Nous voulons calculer f ,P en utilisant sa décomposition binaire : 5 = (101) 5 2 et un algorithme de doublement et addition : 42 / 46 L'égalité de Miller Exemple Nous voulons calculer f ,P en utilisant sa décomposition binaire : 5 = (101) 5 2 et un algorithme de doublement et addition : Nous partons de i = 1, Le deuxième bit de 5 est 0 : i := 2 × i ⇒ i = 2 42 / 46 L'égalité de Miller Exemple Nous voulons calculer f ,P en utilisant sa décomposition binaire : 5 = (101) 5 2 et un algorithme de doublement et addition : Nous partons de i = 1, Le deuxième bit de 5 est 0 : i := 2 × i ⇒ i = 2 Le troisième bit de 5 est 1 : i := 2 × i ⇒ i = 4 i := i + 1 ⇒ i = 5 Sur ce modèle, nous allons calculer f ,P en utilisant l'égalité de Miller et la décomposition binaire de 5. 5 42 / 46 L'égalité de Miller Exemple Soit f ,P qui vaut 1 par construction des fonctions fi ,P et i = 1. 1 i := 2i (i = 2) lP ,P P = f ,P × f ,P × v[2]P lP ,P ,P = v[2]P f2, 1 1 f2 43 / 46 L'égalité de Miller Exemple Soit f ,P qui vaut 1 par construction des fonctions fi ,P et i = 1. i := 2i (i = 4) i := 2i (i = 2) 1 f2, f2, l P ,P P = f1,P × f1,P × v[2]P lP ,P P = v[2]P l[2]P ,[2]P P = f ,P × f ,P × v[4]P l[2]P ,[2]P ,P = f ,P × v[4]P f4, 2 f4 2 i 2 2 := i + 1 (i = 5) f5, l[4]P ,P P = f ,P × v[5]P 4 43 / 46 L'égalité de Miller Exemple Soit f ,P qui vaut 1 par construction des fonctions fi ,P et i = 1. i := 2i (i = 4) i := 2i (i = 2) 1 f2, f2, l[2]P ,[2]P P = f ,P × f ,P × v[4]P l[2]P ,[2]P ,P = f ,P × v[4]P l P ,P P = f1,P × f1,P × v[2]P lP ,P P = v[2]P f4, 2 f4 2 i f5, P= P ,P v[ ]P l 2 2 P ,[ ]P × v[ ]P l[2] 2 4 2 := i + 1 (i = 5) f5, 2 l[4]P ,P P = f ,P × v[5]P 4 ! × P ,P v[ ]P l[4] 5 43 / 46 Calcul des couplages L'algorithme de Miller renvoie fr ,P (Q ) Data: = (rN . . . r0 )2 , P ∈ G1 ⊂ E (Fp )[r ] Result: [r ]P T ← P for i = N − 1 to 0 do T ← [2]T r if ri = 1 then T ←T +P end end return T = [r ]P 44 / 46 Calcul des couplages L'algorithme de Miller renvoie fr ,P (Q ) Data: r = (rN . . . r0 )2 , P ∈ G1 ⊂ E (Fp )[r ] et Q ∈ G2 ⊂ E (Fp k )[r ] Result: fr ,P (Q ) ∈ G3 ⊂ F∗pk T ← P , f1 ← 1, f2 ← 1 for i = N − 1 to 0 do T ← [2]T if ri = 1 then T ←T +P end end return ff12 45 / 46 Calcul des couplages L'algorithme de Miller renvoie fr ,P (Q ) Data: r = (rN . . . r0 )2 , P ∈ G1 ⊂ E (Fp )[r ] et Q ∈ G2 ⊂ E (Fp k )[r ] Result: fr ,P (Q ) ∈ G3 ⊂ F∗pk T ← P , f1 ← 1, f2 ← 1 for i = N − 1 to 0 do T ← [2]T 2 f1 ←− f1 × ld (Q ) 2 f2 ←− f2 × vd (Q ) if ri = 1 then T ← T + P end end return ff12 45 / 46 Calcul des couplages L'algorithme de Miller renvoie fr ,P (Q ) Data: r = (rN . . . r0 )2 , P ∈ G1 ⊂ E (Fp )[r ] et Q ∈ G2 ⊂ E (Fp k )[r ] Result: fr ,P (Q ) ∈ G3 ⊂ F∗pk T ← P , f1 ← 1, f2 ← 1 for i = N − 1 to 0 do T ← [2]T 2 f1 ←− f1 × ld (Q ) 2 f2 ←− f2 × vd (Q ) if ri = 1 then T ← T + P f1 ←− f1 × la (Q ) f2 ←− f2 × va (Q ) end end return ff12 45 / 46 Calcul des couplages L'algorithme de Miller renvoie fr ,P (Q ) Data: r = (rN . . . r0 )2 , P ∈ G1 ⊂ E (Fp )[r ] et Q ∈ G2 ⊂ E (Fp k )[r ] Result: fr ,P (Q ) ∈ G3 ⊂ F∗pk T ← P , f1 ← 1, f2 ← 1 for i = N − 1 to 0 do T ← [2]T 2 f1 ←− f1 × ld (Q ) 2 f2 ←− f2 × vd (Q ) if ri = 1 then T ← T + P f1 ←− f1 × la (Q ) f2 ←− f2 × va (Q ) end end return ff12 45 / 46 Calcul des couplages 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 k Nombre minimal de bits de p 1 024 3 072 7 680 15 360 Table: Niveau de sécurité 46 / 46 Suite des festivités Les couplages dans tout leur état Dans la suite, nous allons commencer à entrer dans le vif du sujet Dénition mathématiques des couplages (Fait !) Exemple et calcul de couplages (Fait !) Optimisation des couplages Mathématiques et Arithmétique Attaques par canaux cachés : SPA, attaque par faute, DPA Application au couplage Perspective de la recherche à base de couplage. 47 / 46