HAL Id: tel-00655714
https://tel.archives-ouvertes.fr/tel-00655714
Submitted on 1 Jan 2012
HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.
Vanessa Vitse
To cite this version:
Vanessa Vitse. Attaques algébriques du problème du logarithme discret sur courbes elliptiques. Cryp- tographie et sécurité [cs.CR]. Université de Versailles-Saint Quentin en Yvelines, 2011. Français.
�tel-00655714�
Ecole Doctorale STV ´ Laboratoire PRiSM
TH` ESE
pr´ esent´ ee en vue de l’obtention du grade de
Docteur de l’Universit´ e Versailles Saint-Quentin en Yvelines
Sp´ ecialit´ e :
Informatique
par
Vanessa VITSE
Attaques alg´ ebriques du probl` eme du logarithme discret sur courbes elliptiques
Soutenue le jeudi 20 octobre 2011 devant le jury compos´ e de :
M. P. Elbaz-Vincent professeur, universit´ e Joseph Fourier pr´ esident
M. A. Enge directeur de recherche, INRIA Bordeaux-Sud-Ouest examinateur
M. P. Gaudry directeur de recherche, CNRS et universit´ e Nancy rapporteur
M. L. Goubin professeur, universit´ e Versailles Saint-Quentin co-directeur
M. A. Joux professeur, DGA et universit´ e Versailles Saint-Quentin directeur
M. G. Lecerf charg´ e de recherche, CNRS et ´ Ecole Polytechnique examinateur
M. A. Lenstra professeur, ´ Ecole Polytechnique F´ ed´ erale de Lausanne rapporteur
M. R. Lercier professeur, DGA et universit´ e de Rennes examinateur
Mes premiers remerciements s’adressent tout naturellement ` a Antoine Joux, qui a ind´ eniable- ment su me transmettre son goˆ ut pour la recherche et me donner l’´ elan dont j’avais besoin pour d´ ecouvrir (enfin !) toutes les richesses du milieu. Je le remercie donc pour les tr` es bons sujets qu’il m’a confi´ es, mais aussi pour ses incroyables intuitions qu’il partage toujours avec grande g´ en´ erosit´ e et qui ont ´ et´ e une source d’inspiration inestimable durant ces trois ann´ ees de th` ese. Ses pr´ ecieux conseils en programmation m’ont permis d’aborder sans effroi des calculs difficiles et aujourd’hui encore, je reste impressionn´ ee par l’aisance et la rapidit´ e avec laquelle il surmonte les difficult´ es li´ ees ` a l’exercice. Je remercie ´ egalement avec grand plaisir Louis Goubin pour m’avoir encadr´ ee et co-encadr´ ee depuis mon stage de Master. C’est d’abord grˆ ace ` a lui que je me suis orient´ ee en cryptographie, la qualit´ e de ses cours et la clart´ e de ses explications m’ayant imm´ ediatement convaincue d’int´ egrer son ´ equipe. Sans son appui et sa confiance, il ne m’aurait certainement pas
´
et´ e possible d’aborder cette th` ese dans d’aussi bonnes conditions tout en conservant mon statut de PRAG.
Je suis tr` es reconnaissante ` a Pierrick Gaudry et Arjen Lenstra d’avoir accept´ e de rapporter cette th` ese. L’´ etendue de leurs travaux dans le domaine m’inspirent la plus grande admiration, et je suis aujourd’hui tr` es fi` ere qu’ils m’aient fait l’honneur de relire ce manuscrit. Je tiens ` a remercier particuli` erement Pierrick pour l’int´ erˆ et constant qu’il a port´ e ` a mes travaux, ainsi que l’ensemble de l’´ equipe CARAMEL pour les invitations chaleureuses (!) ` a Nancy. Un grand merci ` a Philippe Elbaz-Vincent, Andreas Enge, Gr´ egoire Lecerf et Reynald Lercier d’avoir accept´ e de participer ` a ce jury de th` ese. Je profite de l’occasion pour remercier encore une fois Reynald de m’avoir concoct´ e durant mon m´ emoire de Master un package SEA adapt´ e ` a mes besoins ; celui-ci me rend encore bien des services lorsque Magma peine ` a me trouver des bons exemples de courbes.
Mes remerciements vont ´ egalement ` a Emmanuel Thom´ e, Dimitar Jetchev, Laurent Imbert, An- dreas Enge, Elisa Gorla, J´ er´ emie Detrey, Eleonora Guerrini, Thomas Sirvent, Romain Lebreton et l’´ equipe du LIP6 qui m’ont invit´ ee aux workshops, ´ ecoles d’´ et´ e, conf´ erences et diff´ erents s´ eminaires qu’ils ont organis´ es, me motivant ainsi ` a finaliser mes travaux. Non loin de ces ´ equipes, je souhaite remercier particuli` erement Damien Robert, Jean-Gabriel Kammerer, J´ er´ emy Berthomieu et Maike Maissierer d’avoir relu attentivement articles ou parties de cette th` ese ; merci pour leurs questions et remarques pertinentes, et pour les conversations enrichissantes que nous avons eues.
Parmi la “jeunesse versaillaise”, j’aimerais saluer sp´ ecialement Sorina Ionica, J´ erˆ ome Plˆ ut, Mi- chael Quisquater et Nicolas Gama pour les moments plus ou moins s´ erieux que nous avons pass´ es ` a discuter de polynˆ omes de Hilbert, pose de parquets, rel` evements p-adiques, faire-part de mariage, s´ eminaire d’´ equipe, desserts ` a l’azote liquide... Ils participent fortement ` a la bonne ambiance de ce laboratoire, ` a l’instar des c´ el` ebres cryptogirls d´ esormais dispers´ ees dans d’autres lieux.
Enfin, une mention sp´ eciale ` a Ga¨ etan Bisson, Nicolas Estibals et Damien Robert, les crypto- logues voileux qui m’ont embarqu´ ee dans leur gal` ere charentaise. C’est lors de ce s´ ejour et de la conf´ erence qui a suivi que j’ai appris ` a faire de la recherche tout en ayant le mal de mer... une sensation bien retrouv´ ee pendant les quatre mois qui ont suivi !
Il m’aurait ´ et´ e bien entendu impossible de r´ ealiser cette th` ese en seulement trois ans tout en
effectuant mon (demi-)service de PRAG si mes coll` egues de l’IUT n’avaient pas contribu´ e ` a mon
projet. Je tiens donc ` a remercier sinc` erement St´ ephane Delaplace, Fr´ ed´ eric Plumet ainsi qu’Etienne
Huot pour avoir accept´ e de m’attribuer chaque ann´ ee l’all´ egement de service maximal auquel je
pouvais pr´ etendre. Laurent Dalmas, Pierre Doyen et St´ ephan Soulayrol ont support´ e sans (trop !) se
plaindre mes contraintes hebdomadaires ainsi que les nombreux d´ eplacements en conf´ erence, merci
Je souhaite enfin t´ emoigner toute ma gratitude ` a ma famille, notamment mon p` ere qui participe
toujours de pr` es ou de loin ` a tous mes projets sans se lasser de mes changements de carri` ere. Les
derni` eres lignes de ces remerciements seront consacr´ ees ` a Gr´ egoire : c’est grˆ ace ` a son soutien et ses
encouragements quotidiens que j’ai pu entreprendre cette tˆ ache aussi lourde, il est certain que sans
lui cette th` ese n’aurait jamais pu voir le jour.
Introduction vii
I Algorithmique du calcul des bases de Gr¨ obner 1
1 Bases de Gr¨ obner et r´ esolution de syst` emes polynomiaux 3
1.1 D´ efinitions et propri´ et´ es . . . . 4
1.1.1 Ordres monomiaux et divisions de polynˆ omes . . . . 4
1.1.2 Id´ eaux monomiaux et initiaux . . . . 7
1.1.3 Bases de Gr¨ obner . . . . 8
1.1.4 Id´ eaux homog` enes . . . . 9
1.1.5 Id´ eaux de dimension 0 . . . . 11
1.2 Technique de r´ esolution des syst` emes polynomiaux sur corps finis . . . . 12
1.2.1 Elimination et “shape lemma” ´ . . . . 12
1.2.2 Recherche de racines de polynˆ omes univari´ es sur corps finis . . . . 13
1.3 Degr´ e de r´ egularit´ e . . . . 15
1.3.1 Polynˆ ome de Hilbert d’un id´ eal . . . . 15
1.3.2 Degr´ e de r´ egularit´ e d’un id´ eal . . . . 16
2 Algorithmes classiques de calcul de bases de Gr¨ obner 19 2.1 Buchberger . . . . 20
2.1.1 Caract´ erisation par les syzygies . . . . 20
2.1.2 Algorithme de Buchberger, version simple . . . . 21
2.1.3 Le probl` eme des r´ eductions ` a z´ ero . . . . 22
2.1.4 Algorithme de Buchberger avec crit` eres . . . . 23
2.2 Lazard . . . . 25
2.2.1 Matrices de Macaulay . . . . 25
2.2.2 Degr´ e de r´ egularit´ e et complexit´ e . . . . 28
2.3 Algorithme F4 . . . . 30
2.3.1 Principes . . . . 30
2.3.2 Pseudo-code . . . . 33
2.3.3 Choix d’implantation . . . . 34
2.4 Algorithme F5 . . . . 36
2.4.1 Polynˆ omes sign´ es et crit` ere F5 . . . . 37
2.4.2 Description de l’algorithme . . . . 38
2.4.3 Analyse et complexit´ e . . . . 43
2.4.4 Vers une implantation efficace de F5 . . . . 44
2.5 Changement d’ordres . . . . 47
2.5.1 Le cas de la dimension 0 : FGLM . . . . 47
2.5.2 Analyse et complexit´ e . . . . 49
3 Un algorithme adapt´ e ` a la r´ esolution de nombreux syst` emes similaires 51 3.1 Syst` emes param´ etr´ es . . . . 51
3.2 La variante de F4 . . . . 52
3.2.1 Description de l’algorithme . . . . 53
3.2.2 Comportement g´ en´ erique et probabilit´ e de r´ eussite . . . . 56
3.2.3 Changement de caract´ eristique . . . . 59
3.2.4 Tests de correction . . . . 60
3.2.5 Cas d’un pr´ ecalcul incorrect . . . . 61
3.2.6 Complexit´ e . . . . 61
3.3 Applications . . . . 62
3.3.1 Calcul d’indices . . . . 62
3.3.2 Approche hybride . . . . 63
3.3.3 Probl` eme MinRank . . . . 65
3.3.4 Syst` emes Katsura . . . . 66
II Probl` eme du logarithme discret sur courbes alg´ ebriques d´ efinies sur des extensions 67 4 La probl´ ematique du logarithme discret 69 4.1 Importance du logarithme discret en cryptographie . . . . 70
4.1.1 Un probl` eme difficile ? . . . . 70
4.1.2 Echange de clef de Diffie-Hellman . . . . ´ 71
4.1.3 Chiffrement et signature ElGamal . . . . 71
4.1.4 Autres protocoles bas´ es sur le logarithme discret . . . . 72
4.2 Attaques g´ en´ eriques . . . . 73
4.2.1 R´ eduction de Pohlig-Hellman . . . . 73
4.2.2 “Pas-de-b´ eb´ e pas-de-g´ eant” . . . . 74
4.2.3 La m´ ethode rho de Pollard . . . . 74
4.2.4 Attaques g´ en´ eriques et complexit´ e . . . . 76
4.3 Calcul d’indices . . . . 77
4.3.1 Description g´ en´ erale . . . . 77
4.3.2 Variations “large primes” . . . . 80
4.4 Probl` emes non standards . . . . 81
4.4.1 Diffie-Hellman statique assist´ e d’un oracle . . . . 81
4.4.2 Autres probl` emes . . . . 82
5 Courbes alg´ ebriques 83 5.1 Pr´ eliminaires . . . . 83
5.1.1 Courbes . . . . 84
5.1.2 Diviseurs, genre . . . . 87
5.1.3 Groupe de Picard et jacobienne . . . . 88
5.1.4 Courbes elliptiques . . . . 89
5.1.5 Courbes hyperelliptiques . . . . 90
5.2 Arithm´ etique des courbes elliptiques et hyperelliptiques . . . . 91
5.2.1 Genre 1 . . . . 91
5.2.2 Genre sup´ erieur . . . . 93
5.3 Attaques sp´ ecifiques du logarithme discret . . . . 94
5.3.1 Transfert par couplage . . . . 95
5.3.2 Courbes anomales . . . . 96
5.4 Calcul d’indices en genre g > 2 . . . . 97
5.4.1 Genre grand . . . . 97
5.4.2 Genre petit . . . . 98
5.5 Calcul d’indices en petit degr´ e . . . . 99
6 Transfert du logarithme discret par descente de Weil 101 6.1 Restriction de Weil et recouvrement . . . 101
6.1.1 D´ efinition et propri´ et´ es . . . 101
6.1.2 Transfert du logarithme . . . 103
6.2 Technique GHS . . . 105
6.2.1 Cadre g´ en´ eral . . . 105
6.2.2 Caract´ eristique 2 . . . 108
6.2.3 Caract´ eristique impaire . . . 112
6.2.4 Marche d’isog´ enies . . . 114
6.3 Le cas des extensions cubiques . . . 114
6.3.1 Courbes vuln´ erables ` a la m´ ethode GHS . . . 114
6.3.2 Quotients bi-elliptiques . . . 118
7 Attaques par d´ ecomposition 121
7.1 Polynˆ omes de sommation de Semaev . . . 122
7.1.1 D´ efinition, propri´ et´ es . . . 122
7.1.2 Calculs des polynˆ omes de sommations sym´ etris´ es . . . 123
7.2 La m´ ethode de Gaudry et Diem . . . 127
7.2.1 Description g´ en´ erale de l’attaque . . . 127
7.2.2 Cas particulier des courbes elliptiques . . . 129
7.2.3 L’approche de Nagao en genre g > 1 . . . 132
7.2.4 Comparaison avec l’attaque GHS . . . 136
7.3 Contributions . . . 136
7.3.1 Variante n − 1 . . . 137
7.3.2 Analyse et comparaison avec la m´ ethode de Gaudry et Diem . . . 138
7.3.3 Application au DLP sur F
q5. . . 141
7.3.4 Application au probl` eme SDHP sur E(F
q5) . . . 142
7.3.5 Variante de l’approche de Nagao en genre g > 1 . . . 145
8 Attaque par recouvrement et d´ ecomposition 149 8.1 Description et analyse . . . 149
8.2 Applications et comparaisons . . . 150
8.2.1 Extensions sextiques . . . 151
8.2.2 Extensions quartiques . . . 155
8.3 Un exemple de calcul . . . 156 A Classification des courbes hyperelliptiques de genre 3 bi-elliptiques 159
Notations 167
Index 169
Bibliographie 173
C’est dans les ann´ ees 1970 qu’´ emerge pour la premi` ere fois le concept de cryptographie ` a clef publique, permettant de s’affranchir du d´ elicat probl` eme de la distribution de clefs. L’article fonda- teur de Diffie et Hellman [DH76], bas´ e sur des id´ ees de Merkle, introduit la notion de fonction ` a sens unique qui est au cœur de ce nouveau paradigme cryptographique. Avec le d´ eveloppement conco- mitant de la puissance de calcul des ordinateurs, c’est naturellement du cˆ ot´ e des math´ ematiques que les cryptologues se sont tourn´ es pour trouver de telles fonctions. Deux principaux candidats ont ´ et´ e retenus ` a l’´ epoque : la fonction exponentielle modulaire, dont la r´ eciproque est appel´ ee logarithme discret, qui est ` a la base de l’´ echange de clef Diffie-Hellman, du cryptosyst` eme ElGamal et des sch´ emas de signature qui en d´ erivent [DH76, ElG85] ; et la multiplication de deux nombres premiers, sur laquelle repose le tr` es r´ epandu cryptosyst` eme RSA [RSA78].
Confront´ es aux progr` es des algorithmes de calcul du logarithme discret dans le groupe multipli- catif d’un corps fini, Koblitz et Miller r´ ealisent ind´ ependamment que les cryptosyst` emes bas´ es sur cette primitive peuvent en fait s’instancier sur tout type de groupe, et proposent d’utiliser le groupe des points rationnels d’une courbe elliptique, ou plus g´ en´ eralement de la jacobienne d’une courbe alg´ ebrique, d´ efinie sur un corps fini [Kob87, Mil86a]. Au moment o` u les cryptologues commencent
`
a s’y int´ eresser, la g´ eom´ etrie alg´ ebrique vient de connaˆıtre plusieurs d´ ecennies de d´ eveloppement consid´ erable. Si l’´ etude des courbes elliptiques remonte au XIX` eme si` ecle avec les travaux d’Abel et Weierstrass notamment, et que les propri´ et´ es des corps finis sont bien comprises d` es le d´ ebut du XX` eme si` ecle, c’est principalement ` a partir des ann´ ees 1950 que la g´ eom´ etrie alg´ ebrique mo- derne prend son envol ` a partir des fondements pos´ es par Serre et Grothendieck, culminant avec la d´ emonstration compl` ete des conjectures de Weil par Deligne en 1973. Cependant, peu de g´ eom` etres alg´ ebristes se doutaient ` a l’´ epoque que ce domaine puisse avoir une quelconque application en de- hors des math´ ematiques ; en particulier, peu de m´ ethodes de calcul effectif existaient. Les ann´ ees suivantes ont donc vu l’´ emergence d’une nouvelle discipline, la th´ eorie algorithmique des nombres, et la publication d’importants algorithmes permettant l’utilisation concr` ete de la cryptographie bas´ ee sur courbes. On peut citer notamment Cantor pour la loi de groupe sur les jacobiennes de courbes hyperelliptiques [Can87], Schoof, Elkies, Atkin, Mestre et Satoh pour le comptage des points rationnels d’une courbe elliptique [Sch85, Sch95, Sat00], Atkin et Morain pour la multipli- cation complexe [AM93], et Miller pour les couplages [Mil04].
Parall` element, les cryptanalystes s’efforcent depuis bientˆ ot trente ans de d´ evelopper des attaques
permettant d’´ evaluer la s´ ecurit´ e des syst` emes bas´ es sur le probl` eme du logarithme discret (DLP) sur
vari´ et´ es jacobiennes. Jusqu’` a pr´ esent, toutes les attaques produites se regroupent en deux familles :
les m´ ethodes de transfert, et les m´ ethodes de calcul d’indices imitant les techniques utilis´ ees avec
succ` es sur les corps finis. Ainsi pour des familles de courbes tr` es sp´ ecifiques, il est possible de
transf´ erer le DLP sur un groupe plus faible. Dans cette cat´ egorie d’attaques se trouvent la m´ ethode
de transfert par couplage de Menezes-Okamoto-Vanstone et Frey-R¨ uck [MOV93, FR94] montrant
la vuln´ erabilit´ e des courbes supersinguli` eres initialement propos´ ees pour la simplicit´ e du calcul de
leur cardinalit´ e, l’attaque des courbes anomales [SA98, Sem98, Sma99], ainsi que les techniques
li´ ees ` a la descente de Weil [Fre98, GHS02b, Die03]. Les m´ ethodes de calcul d’indices, quant ` a elles,
s’appliquent aux vari´ et´ es jacobiennes de courbes de genre g ≥ 3 [ADH94, Gau00, GTTD07, Die06],
ou d´ efinies sur des extensions de petit degr´ e de corps finis [Gau08, Nag10, Die11] ; dans ce deuxi` eme
cas, on pr´ ef´ erera parler de d´ ecompositions plutˆ ot que de calcul d’indices. Au final, la majorit´ e des
courbes elliptiques et hyperelliptiques de genre 2 semble r´ esister ` a toutes ces attaques. L’objectif
principal de cette th` ese est d’am´ eliorer les techniques existantes pour ´ elargir le nombre de courbes
vuln´ erables.
Une difficult´ e soulev´ ee par les m´ ethodes de d´ ecompositions concerne la r´ esolution de syst` emes polynomiaux multivari´ es. Elles font ainsi partie du domaine de la cryptanalyse alg´ ebrique, qui consiste ` a mod´ eliser un cryptosyst` eme sous la forme d’´ equations polynomiales, r´ eduisant la s´ ecurit´ e de celui-ci ` a la difficult´ e de la r´ esolution du syst` eme associ´ e. Ici encore, les cryptologues h´ eritent d’un important bagage math´ ematique. La th´ eorie de l’´ elimination, que l’on peut faire remonter ` a B´ ezout et Gauss, a ´ et´ e principalement d´ evelopp´ ee dans la deuxi` eme moiti´ e du XIX` eme si` ecle par des math´ ematiciens comme Sylvester et Cayley avant de subir une ´ eclipse au d´ ebut du XX` eme si` ecle, ` a l’exception toutefois des travaux de Macaulay et Gr¨ obner. L’int´ erˆ et pour les m´ ethodes effectives s’est r´ eactiv´ e avec les possibilit´ es de calculs grandissantes des ordinateurs, et les bases de Gr¨ obner introduites par Buchberger en 1965 se sont impos´ ees comme un outil incontournable en calcul formel [Buc65]. Leur apparition en cryptologie arrive au moment o` u sont propos´ es les premiers sch´ emas utilisant l’´ evaluation de syst` emes polynomiaux multivari´ es comme fonction ` a sens unique [MI88, Pat96], et leur emploi pour la r´ esolution du challenge HFE [FJ03] marque le premier grand succ` es de la cryptanalyse alg´ ebrique, faisant entrer d´ efinitivement les bases de Gr¨ obner dans l’arsenal du cryptologue. Bien que des progr` es importants aient ´ et´ e enregistr´ es ces derni` eres d´ ecennies [Buc85, Laz83, GM88, FGLM93] avec notamment les algorithmes F4 et F5 de Faug` ere [Fau99, Fau02], le calcul des bases de Gr¨ obner reste un probl` eme en g´ en´ eral difficile et un domaine de recherche ouvert. C’est dans ce contexte que l’on propose dans cette th` ese des m´ ethodes adapt´ ees ` a la r´ esolution des syst` emes polynomiaux qui interviennent dans les attaques par d´ ecompositions.
Organisation de la th` ese et r´ esultats
Ce m´ emoire se divise en deux parties. La premi` ere partie de cette th` ese, plus orient´ ee vers le calcul formel, r´ esume les principaux outils utilis´ es par le cryptanalyste alg´ ebrique, notamment les algorithmes principaux de calcul de bases de Gr¨ obner. Un nouvel algorithme d´ edi´ e ` a la r´ esolution de nombreux syst` emes polynomiaux “similaires”, et ayant fait l’objet de la publication [JV11b], y est pr´ esent´ e. La deuxi` eme partie s’articule autour du probl` eme du logarithme discret sur courbes alg´ ebriques en cryptographie. On s’int´ eresse sp´ ecifiquement au groupe d´ efini par l’ensemble des points rationnels de la jacobienne d’une courbe alg´ ebrique d´ efinie sur un corps fini, et on liste les quelques attaques connues sur ce type de courbes, avec les m´ ethodes de calcul d’indices et de transfert du DLP. Au centre de cette th` ese sont alors d´ etaill´ ees les attaques sur courbes ellip- tiques d´ efinies sur des extensions de corps finis : apr` es une analyse compl` ete des techniques GHS et des m´ ethodes de d´ ecomposition initialement introduites par Gaudry et Diem, on propose des variantes de ces m´ ethodes permettant de fragiliser le DLP, ainsi que des probl` emes reli´ es, pour des courbes elliptiques d´ efinies sur une gamme plus large d’extensions de corps finis. Ces r´ esultats ont fait l’objet d’un deuxi` eme article [JV10], d’un expos´ e invit´ e [Vit10] ainsi que d’une collabora- tion [GJV10]. Enfin, on pr´ esente une nouvelle approche combinant les attaques par recouvrement avec les m´ ethodes de d´ ecompositions : cette attaque permet entre autres de calculer compl` etement le logarithme discret sur courbes elliptiques d´ efinies sur des extensions sextiques de taille jamais atteinte auparavant. Ce dernier r´ esultat fait l’objet d’une pr´ e-publication [JV11a] et d’un deuxi` eme expos´ e invit´ e [Vit11].
Plus pr´ ecis´ ement, le chapitre 1 est d´ edi´ e aux pr´ erequis de la r´ esolution de syst` emes polynomiaux
sur corps finis. On commence par rappeler les propri´ et´ es fondamentales des bases de Gr¨ obner et
les r´ esultats principaux de la th´ eorie de l’´ elimination pour les id´ eaux de dimension 0. On donne
alors une m´ ethode explicite pour r´ esoudre les syst` emes polynomiaux sur corps finis admettant un
nombre fini de solutions ainsi que les outils utilis´ es pour l’estimation de la complexit´ e des calculs
riquement, se regroupent en deux familles : la premi` ere se d´ eveloppe autour des id´ ees de Buchberger pr´ esent´ ees initialement dans sa th` ese, alors que la seconde remonte ` a la th´ eorie de l’´ elimination et des r´ esultants et s’appuie sur des r´ esultats de Lazard bas´ es sur des calculs d’´ elimination gaussienne de matrices de Macaulay. Le probl` eme des r´ eductions ` a z´ ero ´ etant fondamental dans ce type de calculs, on d´ etaille les deux crit` eres d´ ej` a donn´ es par Buchberger permettant d’´ eliminer a priori un maximum de ces r´ eductions inutiles, ainsi que leur mise en place dans une version de l’algorithme de Buchberger propos´ ee par Gebauer et M¨ oller ; on donne en particulier une preuve rigoureuse de la correction de cet algorithme avec crit` eres. On fait ensuite une description d´ etaill´ ee des algorithmes F4 et F5 de Faug` ere, qui s’inscrivent dans la lign´ ee de ces id´ ees. Ils sont consid´ er´ es actuellement comme les plus efficaces pour le calcul de bases de Gr¨ obner, avec notamment l’implantation de F4 en Magma qui reste une r´ ef´ erence majeure dans le domaine. La programmation pratique de ces deux algorithmes, tr` es peu d´ etaill´ ee dans la litt´ erature, pose un certain nombre de challenges. On pr´ esente les solutions adopt´ ees dans nos implantations qui utilisent entre autres les instructions SIMD pour l’´ elimination gaussienne, ainsi qu’une optimisation de la proc´ edure de simplification utilis´ ee par F4. Une reformulation plus simple de l’algorithme F5, comprenant une strat´ egie de s´ election plus performante, est ´ egalement propos´ ee. On mentionne les difficult´ es restantes li´ ees ` a l’implantation de F5 en sugg´ erant des voies d’am´ eliorations possibles. Apr` es une analyse de com- plexit´ e, ce chapitre se termine par une pr´ esentation de l’algorithme FGLM permettant d’effectuer un changement d’ordre en dimension 0, et d’acc´ el´ erer les calculs de bases de Gr¨ obner pour l’ordre lexicographique.
Le chapitre 3 est enti` erement d´ edi´ e ` a l’algorithme F4Remake con¸cu pour la r´ esolution de nom- breux syst` emes polynomiaux issus d’une mˆ eme famille de syst` emes param´ etr´ es. Ce type de syst` emes apparaˆıt naturellement en cryptanalyse alg´ ebrique, comme en t´ emoignent les nombreux exemples d’applications donn´ es dans ce chapitre. On analyse en d´ etail ce nouvel algorithme probabiliste bas´ e sur le calcul de “traces” de F4, en donnant les probabilit´ es de r´ eussite sous des hypoth` eses r´ ealistes en pratique. On illustre ses performances aussi bien sur des probl` emes concrets issus de la cryptanalyse alg´ ebrique que sur des tests de r´ ef´ erence, mettant ainsi en ´ evidence des performances meilleures que celles de F4 et F5 dans ce contexte.
Les chapitres suivants concernent les attaques du probl` eme du logarithme discret sur courbes alg´ ebriques. Le chapitre 4 se veut introductif et pr´ esente les principaux protocoles cryptographiques bas´ es sur ce probl` eme et ses variantes, ainsi que les algorithmes g´ en´ eriques applicables sur n’importe quel groupe et qui serviront de points de comparaison pour toutes les autres attaques propos´ ees dans la suite. On y r´ esume ´ egalement le principe du calcul d’indices, qui est la m´ ethode ` a l’origine des attaques les plus efficaces connues du DLP sur les groupes multiplicatifs de corps finis aussi bien que sur les jacobiennes de courbes alg´ ebriques.
Le chapitre 5 r´ esume rapidement les pr´ erequis essentiels de g´ eom´ etrie alg´ ebrique permettant d’appr´ ehender les m´ ethodes pr´ esent´ ees dans les chapitres suivants : on d´ etaille notamment la struc- ture des courbes elliptiques et vari´ et´ es jacobiennes de courbes hyperelliptiques d´ efinies sur des corps finis, ainsi que l’arithm´ etique existante sur ce type de courbes. Les attaques sp´ ecifiques ` a ces groupes et bas´ ees sur des m´ ethodes de transfert sont ensuite list´ ees, montrant que les courbes (hyper-)elliptiques de genre 1 ou 2 restent les plus sˆ ures.
On se concentre alors dans les chapitres 6, 7 et 8 sur ces courbes lorsqu’elles sont d´ efinies sur
des extensions de corps finis. On commence dans le chapitre 6 par un ´ etat de l’art des m´ ethodes de
transfert utilisant la descente de Weil, initialement propos´ ee par Frey et ` a l’origine des techniques
GHS. Des exemples de calculs explicites de recouvrements en caract´ eristique paire et impaire sont
´
egalement donn´ es, principalement pour des extensions cubiques.
Dans le chapitre suivant sont pr´ esent´ ees les pr´ emices d’une g´ en´ eralisation de la m´ ethode de calcul d’indices au contexte des courbes elliptiques, avec la premi` ere tentative de Semaev et ses polynˆ omes de sommation. Ces polynˆ omes constituant un outil important pour la recherche de relations dans les calculs d’indices pr´ esent´ es ensuite, on propose deux nouvelles m´ ethodes permettant de les obtenir plus efficacement. On explique alors comment Gaudry et Diem ont pu concevoir ` a partir des id´ ees de Semaev et des techniques de restriction de Weil, la premi` ere m´ ethode de calcul d’indices sur courbe elliptique d´ efinie sur une extension d’un corps fini de petit degr´ e. Plus pr´ ecis´ ement, la complexit´ e de leur algorithme sur E(F
qn) est en ˜ O(q
2−2/n) ` a n fix´ e et q → ∞, mais avec une constante cach´ ee en n qui croˆıt de fa¸con sur-exponentielle en 2
O(n2), rendant impraticable la r´ esolution d` es que n ≥ 5. L’approche de Nagao est alors d´ etaill´ ee : elle permet de g´ en´ eraliser les outils introduits par Semaev pour la recherche de relations au cas des courbes de genre sup´ erieur. Afin d’´ elargir la plage des corps finis sur lesquels les courbes sont plus vuln´ erables aux attaques par d´ ecomposition, on propose une premi` ere variante, appel´ ee “n − 1”, de la m´ ethode de Gaudry et Diem, aboutissant au r´ esultat suivant :
Th´ eor` eme. Soit E une courbe elliptique d´ efinie sur F
qnet G un sous-groupe du groupe des points rationnels de la courbe. Lorsque les hypoth` eses 7.3.2 et 7.3.4 sont v´ erifi´ ees, il existe un algorithme permettant de r´ esoudre le DLP d´ efini sur G avec une complexit´ e en
O ˜
(n − 1)!
2
(n−1)(n−2)e
nn
−1/2 ωq
2. (1)
L’exposant ω intervenant dans le th´ eor` eme est tel que la complexit´ e de la multiplication de deux matrices de taille n est en O(n
ω) op´ erations. On montre ainsi que, sous des hypoth` eses standards, cette approche est asymptotiquement meilleure que les attaques g´ en´ eriques lorsque n reste inf´ erieur
`
a un multiple donn´ e de log
2q, et est plus performante que celle de Gaudry et Diem lorsque n est plus grand qu’un multiple donn´ e de p
3log
2q.
log
2q n
1 2 34 5 67 89 10 1112 13 1415
16
Θ(log
2q)
Θ( p
3log
2q) [Pollard] [Variante n − 1]
[Gaudry-Diem]
Comparaison entre les m´ ethodes de Pollard-rho, Gaudry and Diem et variante n − 1.
Une autre utilisation de ces m´ ethodes de d´ ecompositions est ´ egalement donn´ ee dans ce chapitre. On propose en effet un algorithme de r´ esolution du probl` eme Diffie-Hellman statique (SDHP) assist´ e d’un oracle sur E( F
qn) ; cet algorithme permet apr` es q/2 appels ` a l’oracle de calculer une instance arbitraire de SDHP en un temps raisonnable. Ainsi, il devient possible, sous ces hypoth` eses d’acc` es
`
a un oracle, de mener une attaque compl` ete de SDHP sur une courbe standard de 155 bits en moins
de 2 semaines, moyennant un acc` es ` a 1 000 processeurs de type Intel Xeon ` a 2.93 GHz. On termine
enfin le chapitre 7 en proposant une autre variante de l’approche de Nagao. Celle-ci permet en
Dans le dernier chapitre de cette th` ese, on propose une nouvelle attaque du DLP sp´ ecifique aux
courbes elliptiques d´ efinies sur des extensions de degr´ e compos´ e dont on compare l’efficacit´ e ` a celle
des techniques existantes. L’id´ ee consiste ` a combiner les m´ ethodes de recouvrement pr´ esent´ ees en
chapitre 6 pour transf´ erer le DLP sur la jacobienne d’une courbe C d´ efinie sur une extension
interm´ ediaire, avec les m´ ethodes de d´ ecompositions pour attaquer le DLP sur la courbe ainsi
obtenue. Cette technique est particuli` erement efficace sur les courbes d´ efinies sur les extensions
sextiques, et permet de r´ ealiser une attaque compl` ete du DLP d’une courbe de 132 bits a priori
r´ esistante ` a toute autre attaque connue en ` a peine 30 h de temps de calcul r´ eel sur moins 200 coeurs
(soit environ 3 700 h·CPU). On donne les d´ etails de l’implantation faite en fin de chapitre.
Algorithmique du calcul des bases de
Gr¨ obner
Bases de Gr¨ obner et r´ esolution de syst` emes polynomiaux
Les bases de Gr¨ obner constituent un outil essentiel pour les calculs faisant intervenir des id´ eaux d’anneaux de polynˆ omes ` a plusieurs variables, notamment pour la r´ esolution de syst` emes poly- nomiaux. Elles permettent entre autres de g´ en´ eraliser ` a l’anneau K [X
1, . . . , X
n] des op´ erations comme la division euclidienne et l’algorithme d’Euclide ´ etendu qui n’existent que sur l’anneau des polynˆ omes en une variable, ou encore l’´ elimination gaussienne qui ne s’applique qu’aux syst` emes po- lynomiaux lin´ eaires en plusieurs variables. En particulier, les bases de Gr¨ obner sont indispensables pour la r´ esolution de probl` emes classiques comme le test d’appartenance d’un polynˆ ome ` a un id´ eal I (ou probl` eme “Ideal Membership”), les calculs de formes normales dans l’anneau des polynˆ omes
`
a plusieurs variables quotient´ e par I , l’´ etude des solutions d’un syst` eme polynomial, l’´ elimination, etc. Cependant l’analyse de la complexit´ e des calculs de bases de Gr¨ obner reste un sujet d´ elicat. Le probl` eme “Ideal Membership” faisant partie de la classe des probl` emes EXPSPACE complets, les bornes sup´ erieures de la complexit´ e sont au moins exponentielles ; d’ailleurs, il existe des exemples particuliers pour lesquels la complexit´ e du calcul est doublement exponentielle en le nombre de variables des polynˆ omes engendrant l’id´ eal [MM84]. On verra n´ eanmoins qu’il existe des familles d’id´ eaux pour lesquels les calculs sont plus accessibles.
Dans ce chapitre, on pr´ esente les d´ efinitions et principales propri´ et´ es des bases de Gr¨ obner utiles
pour la r´ esolution de syst` emes polynomiaux. On commence par rappeler dans la premi` ere section,
la notion d’ordre monomial admissible en vue de pr´ esenter l’algorithme classique de division de
polynˆ omes ` a plusieurs variables. On ´ etudie ensuite les id´ eaux monomiaux, plus faciles ` a appr´ ehender
que les id´ eaux polynomiaux, ainsi que leur repr´ esentation sous forme d’escalier, qui permet de
d´ eterminer facilement une base de l’anneau quotient K[X
1, . . . , X
n]/I . On montre alors comment
les bases de Gr¨ obner permettent de ramener l’´ etude des id´ eaux de polynˆ omes ` a celle des id´ eaux
monomiaux via la notion d’id´ eal initial. Les cas particuliers des calculs de bases de Gr¨ obner pour
les id´ eaux homog` enes et de dimension 0 sont ensuite d´ etaill´ es. La section suivante est d´ edi´ ee aux
techniques de r´ esolution des syst` emes polynomiaux : on commence par rappeler les principaux
r´ esultats de la th´ eorie de l’´ elimination pour les id´ eaux de dimension 0, puis on donne une m´ ethode
explicite pour r´ esoudre les syst` emes polynomiaux sur corps finis admettant un nombre fini de
solutions. Enfin, on pr´ esente dans la derni` ere section les principaux outils pour l’estimation de la
complexit´ e des calculs de base de Gr¨ obner dans le cas homog` ene puis affine. Dans tout le chapitre,
K d´ esigne un corps quelconque. La plupart des r´ esultats seront donn´ es sans d´ emonstration. Le
lecteur pourra se reporter ` a [CLO07] pour plus de d´ etails.
1.1 D´ efinitions et propri´ et´ es
1.1.1 Ordres monomiaux et divisions de polynˆ omes
D´ efinition 1.1.1. Un ordre monomial admissible 4 sur K [X
1, . . . , X
n] est une relation d’ordre sur l’ensemble des monˆ omes de K [X
1, . . . , X
n] qui est
(i) totale (deux monˆ omes peuvent toujours ˆ etre compar´ es)
(ii) compatible avec la multiplication de K [X
1, . . . , X
n] : soient m
1et m
2deux monˆ omes tels que m
14 m
2, alors m
1m
34 m
2m
3pour tout monˆ ome m
3(iii) bien ordonn´ ee : un ensemble non vide de monˆ omes admet toujours un plus petit ´ el´ ement pour l’ordre 4 .
Remarque 1.1.2. Si 4 est un ordre monomial total v´ erifiant la condition (ii), alors la condi- tion (iii) est ´ equivalente ` a dire que tout monˆ ome m v´ erifie 1 4 m.
Avant de donner des exemples d’ordre monomiaux, on introduit quelques notations : pour tout multi-degr´ e α = (α
1, . . . , α
n) ∈ N
n, on d´ efinit
X
α= X
1α1· · · X
nαnet |α| = α
1+ · · · + α
n.
Les principaux ordres admissibles que l’on consid` ere dans la suite sont l’ordre lexicographique, bien utile pour la r´ esolution de syst` emes polynomiaux sur corps finis, l’ordre lexicographique gradu´ e renvers´ e pour lequel les calculs de bases de Gr¨ obner sont souvent les plus accessibles, ainsi que l’ordre lexicographique ` a poids qui permet parfois de r´ e´ equilibrer les degr´ es de fa¸ con ` a rendre les syst` emes homog` enes ou plus faciles ` a r´ esoudre.
Ordres admissibles
1. Ordre lexicographique (lex) (ou ordre du dictionnaire) :
X
α≺
lexX
βsi le premier coefficient non nul en partant de la gauche dans α−β est strictement n´ egatif.
2. Ordre lexicographique gradu´ e (glex) : X
α≺
glexX
βsi |α| < |β| ou
|α| = |β| et X
α≺
lexX
β. 3. Ordre lexicographique gradu´ e renvers´ e (grevlex) :
X
α≺
grevlexX
βsi |α| < |β| ou
|α| = |β| et le premier coefficient non nul en partant de la droite dans α − β est strictement positif
.
4. Ordre d’´ eliminination (elim) : Le k-i` eme ordre d’´ elimination ≺
elimkest d´ efini par X
α≺
elimkX
βsi (α
1+ · · · + α
k) < (β
1+ · · · + β
k) ou
(α
1+ · · · + α
k) = (β
1+ · · · + β
k) et X
α≺
grevlexX
β.
5. Ordre grevlex ` a poids (wgrevlex) :
On attribue aux variables X
1, . . . , X
nles poids respectifs ω
1, . . . , ω
net on note ω · α = (ω
1α
1, . . . , ω
nα
n).
X
α≺
wgrevlexX
βsi |ω · α| < |ω · β| ou
|ω · α| = |ω · β| et le premier coefficient non nul en partant de la droite de ω · α − ω · β est strictement positif
.
En particulier, pour les quatre premiers ordres on a X
n≺ X
n−1≺ · · · ≺ X
1. Une propri´ et´ e int´ eressante du k-i` eme ordre d’´ elimination est que tout monˆ ome contenant l’une des variables X
1, . . . , X
kest sup´ erieur pour ≺
elimk` a tout monˆ ome ne contenant aucune de ces variables.
D´ efinition 1.1.3. Un ordre ≺ est gradu´ e par le degr´ e si |α| < |β| implique X
α≺ X
β. Les ordres 2 et 3 sont des exemples d’ordres gradu´ es par le degr´ e.
Exemple 1.1.4. On consid` ere les monˆ omes m
1= X
1X
3, m
2= X
22et m
3= X
34, leurs multi-degr´ es respectifs sont α = (1, 0, 1), β = (0, 2, 0) et γ = (0, 0, 4) et on a
· m
3≺
lexm
2≺
lexm
1;
· m
1≺
grevlexm
2≺
grevlexm
3;
· m
1≺
wgrevlexm
3≺
wgrevlexm
2pour les poids ω = (2, 2, 1).
Cette notion d’ordre sur les monˆ omes ` a plusieurs variables permet de g´ en´ eraliser les d´ efinitions de terme de tˆ ete et de coefficient dominant naturellement d´ efinis par le degr´ e pour les polynˆ omes en une variable.
Dans la suite, on ne consid` ere plus que des ordres monomiaux admissibles. Soit ≺ un ordre monomial d´ efini sur l’ensemble des monˆ omes de K [X
1, . . . , X
n].
D´ efinition 1.1.5. Soit f = P
α
c
αX
αun polynˆ ome non nul de K [X
1, . . . , X
n]. On note γ = max{α ∈ N
n: c
α6= 0} le multi-degr´ e du plus grand monˆ ome de f pour l’ordre ≺.
(i) Le monˆ ome de tˆ ete de f est d´ efini par LM(f) = X
γ. (ii) Le coefficient dominant de f est d´ efini par LC(f ) = c
γ.
(iii) Le terme de tˆ ete de f est d´ efini par LT (f ) = LC(f ) · LM(f ) = c
γX
γ.
La queue du polynˆ ome f fait r´ ef´ erence au polynˆ ome obtenu en supprimant dans f le terme de tˆ ete.
Ces notions, qui d´ ependent clairement de l’ordre choisi, se comportent comme attendu vis-` a-vis de la somme et du produit.
Division de polynˆ omes ` a plusieurs variables
Etant donn´ ´ e un ordre monomial admissible ≺ sur K [X
1, . . . , X
n], il devient maintenant possible de cr´ eer pour les polynˆ omes ` a plusieurs variables un analogue de la division euclidienne en une variable. Comme l’anneau K[X
1, . . . , X
n] n’est plus principal, il est naturel de consid´ erer la divi- sion d’un polynˆ ome f non par rapport ` a un polynˆ ome, mais par rapport ` a une liste ordonn´ ee de polynˆ omes {g
1, . . . , g
s}. L’objectif est alors d’´ ecrire f sous la forme :
f = q
1g
1+ · · · + q
sg
s+ r avec
( LM (q
ig
i) 4 LM(f ),
r = 0 ou [∀m monˆ ome de r, ∀i ∈ J 1; s K , LM(g
i) - m]. (1.1)
Cette division s’obtient facilement en utilisant l’algorithme 1. La terminaison de cet algorithme
est assur´ ee, la suite des monˆ omes de tˆ ete de f ´ etant strictement d´ ecroissante et l’ordre ≺ ´ etant
admissible.
Algorithme 1: Algorithme de division dans K [X
1, . . . , X
n].
Entr´ ees : f polynˆ ome ` a diviser, G = {g
1, . . . , g
s} famille de polynˆ omes, ≺ ordre admissible Sortie : r le reste et {q
1, . . . , q
s} les quotients tels que d´ efinis dans (1.1)
r ← 0, q
i← 0 pour i = 1, . . . , s tant que f 6= 0 faire
i ← 1
tant que i ≤ s faire si LM (g
i)| LM(f) alors
f ← f −
LT(gLT(f)i)
g
i, q
i← q
i+
LTLT(g(f)i)