Академический Документы
Профессиональный Документы
Культура Документы
P
ord
P
( f )P
Tous les diviseurs de ce sous-groupe sont de degr nul : les coefcients de tout diviseur
P
P
P qui drive, par lapplication
div ci-dessus, dune fonction dnie sur la courbe vrient 0 =
P
P
notons bien que, la courbe tant lisse, cette somme
a un nombre ni de termes non-nuls.
Quotientant le sous-groupe Div
0
F
q
(C) des diviseurs de degr nul dnis sur F
q
par celui des diviseurs principaux (i.e. qui
drivent dune fonction), on obtient un groupe ablien ni appel Jacobienne de C que lon note Jac
F
q
(C).
On distingue plusieurs cas selon le genre g de la courbe.
Gatan BISSON Mmoire de magistre 6/77
En genre 1, les courbes sont dites elliptiques ; elles ont une quation afne de la forme suivante.
E : Y
2
+a
1
XY +a
3
Y = X
3
+a
2
X
2
+a
4
X +a
6
Dans ce cas (pour plus de dtails, voir [14]), la Jacobienne est tout simplement isomorphe la courbe dont elle drive.
Par une construction gomtrique bien connue (qui est rappele la page suivante), on peut transcrire la loi de groupe de
la Jacobienne en termes de coordonnes de points rationnels. Cette gomtrie admet des quations simples qui permettent
ainsi de calculer trs efcacement cette loi de groupe.
A
B
A+B
En genre suprieur (i.e. 2 et plus), les choses ne sont plus aussi simples : la Jacobienne est un objet bien distinct de la
courbe dont elle provient.
Plus exactement, la Jacobienne dune courbe C est une varit ablienne de dimension g ; on peut donc considrer ses
points dnis sur le corps de base F
q
(ce qui est le cas dintrt en cryptographie classique car, bien videmment, les objets
considrs sont nis) ou sur toute extension de ce corps. Dans le second cas, on obtient un groupe plus gros dont les points
dnis sur F
q
forment un sous-groupe.
Toutefois, on sait tout aussi bien calculer dans les Jacobiennes de courbes de genre 2 ou plus que dans celles des courbes
elliptiques en utilisant la reprsentation de Mumford pour ses points : lalgorithme de Cantor sinspire pour cela de lal-
gorithme de Gauss (qui concerne la rduction des formes quadratiques). Bref, on dispose, indpendamment du genre de la
courbe considre, de moyens algorithmiques raisonnablement efcaces pour calculer dans sa Jacobienne (relativement, bien
sr, au cardinal de cette dernire).
1.2 Torsion
tant donn un entier 2, notons [] lapplication qui consiste additionner un diviseur n fois lui-mme. On dispose
ainsi de son noyau que lon note Jac
F
q
(C)[] ; cest le sous-groupe form des points de la Jacobienne dnis sur F
q
dont
lordre divise . Ce groupe est videmment ni.
En fait, mme lorsquon considre les points dnis sur une clture algbrique du corps de base plutt que sur F
q
lui-
mme, il est toujours ni. Ces groupes sont dailleurs classis comme il suit dans le cas o est premier avec la caractristique
du corps de base.
Jac
F
q
(C)[] (Z/Z)
2g
Notons aussi le rsultat donn par la suite exacte ci-dessous qui est lgalit entre les cardinaux des groupes Jac
F
q
(C)[]
et Jac
F
q
(C)/Jac
F
q
(C) . Toutefois, il faut bien garder en tte que ces groupes sont deux objets bien distincts et, en gnral,
non isomorphes (par exemple, il suft pour cela que la Jacobienne admet un point de
2
-torsion, ce qui arrive dans certains
cas particuliers).
0 Jac
F
q
(C)[] Jac
F
q
(C) Jac
F
q
(C) 0
1.3 Couplages
Sur ces points de -torsion agit une application bilinaire, non-dgnre et alterne qui se dnit de faon naturelle : le
couplage de Weil, not e
. Son domaine est celui des couples de points de -torsion et il est valeur dans la clture algbrique
du corps de base.
e
:
_
Jac
F
q
(C)[] Jac
F
q
(C)[] F
q
(P, Q)
f
P
(Q)
f
Q
(P)
Gatan BISSON Mmoire de magistre 7/77
Dans ce qui prcde, P tant un point de -torsion, (PO) est un diviseur principal qui drive donc dune fonction que
lon a note f
P
. Cette fonction peut sappliquer Q (quitte prendre un diviseur quivalent support disjoint avec f
P
) trs
naturellement par lextension qui suit.
f
_
P
P
_
:=
P
f (P)
P
Par linarit, il est facile de voir que limage du couplage est exclusivement forme de racines -me de lunit. Ainsi,
ce couplage peut tre corestreint la plus petite extension de F
q
contenant les racines -me de lunit ; cette extension
est bien entendu nie : il sagit de F
q
k o k est le plus petit entier positif non nul vriant la proprit q
k
1 mod .
Sagissant de cryptographie, lorsquune courbe ainsi que la valeur de lentier sont xs, k est communment appel le
degr dimmersion .
Remarquons que, lorsque est premier, il est vain dvaluer un couplage en des points de -torsion de la Jacobienne
dnis dans un corps strictement plus petit que F
q
k . En effet, ce corps ne peut avoir de racines -me de lunit non triviale.
Le couplage doit donc tre valu en se basant sur F
q
k et, incidemment, lorsque k est grand, larithmtique effective du corps
F
q
k ne sera pas assez rapide pour permettre une valuation pratique du couplage.
Gardons donc lesprit quun couplage ne peut svaluer en temps raisonnable que lorsque le degr dimmersion nest
pas trop grand.
Du point de vue algorithmique, le couplage de Weil est trs intressant car on sait lvaluer en temps polynomial :
tant donn deux points de -torsion, P et Q dans Jac(C) dnis sur F
q
k , lalgorithme de Miller calcule e
(P, Q) en temps
polynomial en k, log(q), g et log(). Aussi, aucun algorithme efcace nest actuellement connu pour linversion du couplage
de Weil (voir plus loin).
1.4 Algorithme de Miller
La difcult relative lvaluation du couplage de Weil rside uniquement dans le calcul de la fonction f
P
. Rappelons que
cest une fonction dont drive le diviseur principal P.
Lide de MILLER est de construire cette fonction petit petit, en saidant dune suite de fonctions, ( f
i
), vriant la
proprit suivante (O est un point linni de la courbe).
div f
i
= iP[i] P(i 1)O
Bien videmment, comme P est un point de -torsion, f
q
, labsence dalgorithme trivial permettant de
faire de mme a fait de cette famille de groupes une solution de choix en cryptographie.
Pourtant, dans les annes 1990, la mise au point de lalgorithme dit de calcul dindex a permis dattaquer le problme
du logarithme discret dans les groupes multiplicatifs des corps nis, et ce avec une complexit sous-exponentielle. Ainsi,
difcult gale du calcul du logarithme discret, il faut un groupe de taille bien suprieure celle quaurait un groupe
gnrique.
Toutefois, pour les sous-groupes cycliques (dordre premier) des Jacobiennes de courbes hyperelliptiques de petit genre,
les meilleurs algorithmes connus restent les algorithmes gnriques mentionns plus haut. Cest dailleurs le premier avantage
quant lutilisation de courbes en cryptographie : le mme niveau de scurit est atteint avec des paramtres de taille
nettement infrieure.
2.2 Les couplages : vision pessimiste
La premire apparition des couplages en cryptographie est lattaque MOV. Il sagit dexploiter la bilinarit dun cou-
plage, et en particulier la relation suivante qui en dcoule, pour ramener le problme du logarithme discret de la Jacobienne
dune courbe dans le groupe multiplicatif dun corps ni.
e
(mP, Q) = e
(P, Q)
m
De ce point de vue, le corps dans lequel ce problme est rduit, savoir F
q
k
, doit lui aussi tre rsistant aux attaques ; il
faut donc quil soit sufsamment grand, ce qui se mesure par rapport la complexit des meilleurs algorithmes de calcul du
logarithme discret connus, dans ce cas sous-exponentielle.
Ainsi, pendant longtemps, on sest content, pour obtenir une valeur de q
k
sufsamment grande, de faire en sorte que
les degrs dimmersion considrs soient trs grands. En fait, il y a peu faire pour cela ; en effet, les couplages avec de petits
degrs dimmersion sont rares.
2.3 Les couplages : vision optimiste
Trs rcemment, on a eu lide dintgrer les couplages une nouvelle famille de protocoles cryptographiques. Les riches
proprits des couplages permettent en effet nombre dapplications trs prometteuses en cryptographie asymtrique comme
par exemple (pour nen citer quune, la premire historiquement) lchange de clef tripartie en une tape mis au point par
JOUX [11].
Incidemment, cela donne un second attrait la cryptographie base de courbes : les couplages permettent de faire des
choses quon ne sait pas faire en cryptographie asymtrique classique (i.e. base de corps nis).
Toutefois, pour que cela puisse tre mis en pratique, il faut rsoudre bon nombre de questions algorithmiques lies
lexistence, lvaluation et linversion de couplages. Ce sont l les trois thmes qui gouverneront la recherche mene dans
cette thse.
3 Construction de courbes adquates
3.1 Enjeux et objectifs
La mise en pratique des systmes cryptographiques base de couplages requiert des courbes C ayant de bonnes propri-
ts : tout dabord, le problme du logarithme discret doit tre difcile dans la Jacobienne. Pour cela, le genre de C doit tre
petit et le cardinal de sa Jacobienne doit avoir un grand facteur premier (en ltat actuel des connaissances et des puissances
de calcul, plus grand que 2
160
).
Il faut ensuite que le degr dimmersion, k, soit adapt. En premier lieu, parce que, comme vu plus haut, un couplage
permet un attaquant de rduire le problme du logarithme discret de Jac(C) dans le groupe multiplicatif de F
q
k , il faut que
q
k
soit sufsamment grand pour que ce problme soit algorithmiquement insoluble dans F
q
k o nous disposons du calcul
dindex (en pratique, q
k
> 2
1024
).
Enn, il ne faut pas que k soit trop grand non plus si lon veut que le couplage puisse tre calcul efcacement (la
complexit de lalgorithme de Miller est linaire en k). De telles courbes sont rares [1] et il faut donc mettre en oeuvre des
techniques spciales pour les construire. On qualiera ces courbes de bien couples .
Gatan BISSON Mmoire de magistre 9/77
3.2 Techniques luvre
Historiquement, les premiers exemples de courbes bien couples sont des courbes supersingulires. Malheureusement,
elles noffrent quun nombre ni de choix pour le degr dimmersion. De plus, ayant une structure trs particulire, ces
courbes sont considres comme potentiellement sujettes dventuelles attaques exploitant cette particularit ; il est donc
de bon ton de les viter pour les applications cryptographiques.
Plusieurs procds ont donc t mises au point pour construire des courbes ordinaires bien couples.
La plupart de ces procds concerne uniquement les courbes elliptiques [7] mais, rcemment, dautres ont t proposs
pour les courbes de genre 2 [10, 6].
3.2.1 Jeux de paramtres
Tout dabord, il faut dterminer les paramtres dont on a besoin de xer les proprits. Cela inclut les paramtres relatifs
au sous-groupe dordre premier, son couplage ainsi que des paramtres assurant quune courbe pourra tre construite. En
gnral, ces derniers paramtres proviennent de la thorie de la multiplication complexe (qui est utilise voir ci-dessous
pour gnrer lquation explicite de la courbe) dans un corps quadratique imaginaire de petit nombre de classes.
Il faut dans un premier temps calculer un jeu de valeurs pour ces paramtres consistant en le sens o une courbe
ralisant ces valeurs existe. Ceci se fait en crivant un systme dquations garantissant cette consistance et en calculant les
paramtres de faon satisfaire ce systme.
3.2.2 Multiplication complexe
Dans un second temps, on utilise ces derniers paramtres pour construire lquation de Weierstrass de la courbe qui
permet de calculer explicitement dans la Jacobienne de celle-ci.
Pour les courbes de genre 1, le discriminant suft : partir de ce dernier, on peut trouver la valeur de linvariant j de la
courbe elliptique et ainsi son quation explicite.
Pour les courbes de genre suprieure, il faut introduire dautres invariants ; en effet, ce nest plus de corps quadratiques
quil sagit mais dextensions de degr 4 du corps des rationnels. Par exemple, il faut, en genre 2, trois invariants en lieu et
place de lunique invariant j du cas elliptique et la thorie qui entre en jeu est plus complexe.
Cest cette thorie qui xe une partie des quations qui sont considrer plus haut.
3.3 Cas elliptique
Par exemple, dans le cas des courbes elliptiques, on xe comme paramtres :
q, le cardinal du corps de base ;
t, la trace de lendomorphisme de Frobenius ;
r, lordre du sous-groupe ;
k, son degr dimmersion ;
D, le discriminant de lordre de multiplication complexe.
Dans ce jeu de valeurs entires, q et r se doivent dtre des premiers, t peut-tre quelconque mais, par contre, D et k
doivent tre positifs.
La consistance de ces valeurs est assure par les conditions suivantes :
r | q+1t (il existe bien un sous-groupe dordre r) ;
r |
k
(t 1) (k est bien de degr dimmersion) ;
(y Z,) t
2
+Dy
2
= 4q (D est bien le discriminant de lordre CM).
Un thorme de WATERHOUSE [15] nous assure que, ds que t = 0 et |t| 2
: Jac
F
q
k
(C)[] Jac
F
q
k
(C)[]
exponentiation nale
..
F
q
k
xx
q1
l
F
q
k
. .
application bien dnie
4.2 Optimisations spciales
Une seconde approche est, tant donn un couplage quelconque, de prcalculer des formules explicites pour son va-
luation. Cela se fait de faons trs similaire celles qui sont employes pour optimise les formules de la loi daddition des
courbes elliptiques [8].
Enn, on peut aussi optimiser le calcul dun couplage particulier dans le cadre dun protocole particulier. Notamment,
pour une certaine classe dapplications, lun des deux points du couplage en question est x pour toute une srie dvalua-
tions et il est donc (dans certains cas) possible de prcalculer les quations concernes intervenant dans les algorithmes pour
cette valeur prcise.
Beaucoup darticles discutent de lvaluation efcace des couplages. Toutefois, ce sujet reste trs vaste et trs actif. Des
avances sont toujours venir, notamment dans le domaine des implmentations matrielles pour lesquelles les algorithmes
doivent tre remanis (car lefcacit nest alors plus mesure par la seuls complexit de lalgorithme) et adapts aux supports
qui sont concerns.
5 Linversion du couplage
Comme mentionn ci-dessus, la scurit dun systme cryptographique bas sur un couplage dpend non seulement de la
difcult du problme du logarithme discret dans la Jacobienne ainsi que dans le corps dimmersion mais aussi de la difcult
dinverser le couplage dun point de vue algorithmique.
5.1 Dnition du problme
Il sagit, tant donn un point et une racine de lunit, de trouver un second point dont le couple avec le premier donne
comme image par le couplage la racine voulue, soit de calculer linverse de la fonction suivante.
e
P
: Q e
(P, Q)
Le problme du logarithme discret a fait lobjet dintenses recherches mais ce nest pas encore le cas du problme dinver-
sion du couplage qui semble plus difcile dapproche [9].
5.2 Liens avec des problmes plus tudis
Un certain nombre dautres problmes difciles peuvent tre considrs comme, notamment, le problme de Dife-
Hellman (que ce soit dans sa version algorithmique ou dcisive). Les relations entre ces diffrents problmes sont assez
dlicates tablir et il reste des choses faire ce sujet.
Lexistence dun algorithme efcace pour linversion du couplage aurait des retombes au del de la cryptographie base
de couplages. Notamment, cela impliquerait la rsolution du problme de Dife-Hellman algorithmique dans certains corps
nis ce qui serait une avance majeure. Ainsi, mme sil semble irraliste de trouver un algorithme polynomial pour rsoudre
ce problme, son tude est vitale.
Gatan BISSON Mmoire de magistre 11/77
Rfrences
[1] R. BALASUBRAMANIAN and Neal KOBLITZ. The improbability that an elliptic curve has subexponential discrete log
problem under the Menezes-Okamoto-Vanstone algorithm. Journal of Cryptology, 11(2) :141145, 1998.
[2] Ian F. BLAKE, Gadiel SEROUSSI, and Nigel P. SMART. Elliptic curves in cryptography. Cambridge University Press, 1999.
[3] Ian F. BLAKE, Gadiel SEROUSSI, Nigel P. SMART, and John W. S. CASSELS. Advances in elliptic curve cryptography.
Cambridge University Press, 2005.
[4] Dan BONEH and Matt FRANKLIN. Identity-based encryption from the Weil pairing. SIAM Journal of Computing,
32(3) :586615, 2003.
[5] Henri COHEN and Gerhard FREY. Handbook of elliptic and hyperelliptic curve cryptography. CRC Press, 2005.
[6] David FREEMAN. Constructing pairing-friendly genus 2 curves with ordinary jacobians. Cryptology ePrint Archive,
Report 2007/057, 2007.
[7] David FREEMAN, Michael SCOTT, and Edlyn TESKE. A taxonomy of pairing-friendly elliptic curves. Cryptology ePrint
Archive, Report 2006/372, 2006.
[8] Gerhard FREY and Tanja LANGE. Fast bilinear maps from the Tate-Lichtenbaum pairing on hyperelliptic curves. In
Proceedings of the 7
th
International Symposium on Algorithmic Number Theory, volume 4076, pages 466479. Springer
LNCS, 2006.
[9] Steven D. GALBRAITH, Florian HESS, and Frederik VERCAUTEREN. Aspects of pairing inversion. Cryptology ePrint
Archive, Report 2007/256, 2007.
[10] Laura HITT. Families of genus 2 curves with small embedding degree. Cryptology ePrint Archive, Report 2007/001,
2007.
[11] Antoine JOUX. A one round protocol for tripartite Dife-Hellman. In Proceedings of the 4
th
International Symposium
on Algorithmic Number Theory, volume 1838, pages 385394. Springer LNCS, 2000.
[12] Alfred MENEZES, Tatsuaki OKAMOTO, and Scott VANSTONE. Reducing elliptic curve logarithms in a nite eld. IEEE
Transactions on Information Theory, 39(5) :16391646, 1993.
[13] Ryuichi SAKAI, Kiyoshi OHGISHI, and Masao KASAHARA. Cryptosystems based on pairing. In Proceedings of the
Symposium on Cryptography and Information Security, page ref. C20, 2000.
[14] Joseph SILVERMAN. The arithmetic of elliptic curves. Springer, 1985.
[15] William C. WATERHOUSE. Abelian varieties over nite elds. Annales scientiques de lcole Normale Suprieure,
2(4) :521560, 1969.