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

Documents pareils