th eorie algorithmique des nombres pour la … · nous savons fabriquer les param etres n...

26
Th´ eorie Algorithmique des Nombres pour la Cryptologie (TANC) Algorithmic number theory for cryptology F. Morain & P. Gaudry Version 2.01 - 12 Avril 2002 Pr´ esentation rapide : le projet TANC a pour but de promouvoir l’´ etude, la programmation et l’utilisation de cryptosyst` emes asym´ etriques robustes et erifiables bas´ es sur la th´ eorie algorithmique des nombres. Les id´ ees amusantes tir´ ees de l’arithm´ etique des nombres ont donn´ e naissance ` a des primitives cryptographiques robustes, qui sont maintenant prˆ etes ` etre utilis´ ees dans de nombreux contextes o` u la s´ ecurit´ e des transactions ou des donn´ ees est n´ ecessaire. Au-del` a des besoins de confidentialit´ e pr´ esents dans les r´ eseaux de toute nature, le march´ e est prˆ et ` a s’ouvrir ` a la signature ´ electronique. La cryptologie du troisi` eme mill´ enaire sera math´ ematique ou ne sera pas. Elle utilisera de plus en plus de math´ ematiques non triviales, et l’investissement que nous avons fait dans de multiples branches sera de plus en plus rentable. Et ceci d’autant plus que de nombreux probl` emes de s´ ecurit´ e sur les r´ eseaux peuvent ˆ etre r´ esolus ` a l’aide des r´ esultats r´ ecents (les tunnels chiffrant permettent de prot´ eger le transfert des paquets IP, les Identity based cryptosystems peuvent servir ` a la recon- naissance des routeurs voisins d’un routeur, etc.). Nous comptons bien profiter de l’avance acquise dans ce domaine pour ˆ etre ` a mˆ eme de jouer notre carte dans les transferts de technologie ` a venir vers les applications. La signature ´ electronique va commencer ` etre d´ eploy´ ee ` a grande ´ echelle (les d´ ecrets d’appli- cation de la loi de mars 2000 sont parus en mars 2001). Que se passera-t-il en cas de contestation devant un juge? Que faire si celui-ci exige une preuve de bonne construction ? Nous pr´ etendons que nous sommes ` a mˆ eme de fabriquer des cryptosyst` emes robustes accompagn´ es de certificats (` a la mode des probl` emes NP) v´ erifiables simplement. Nous savons fabriquer les param` etres n´ ecessaires ` a la mise en œuvre de RSA, tout comme nous savons le faire dans le cas des courbes elliptiques. Nous sommes connus comme parcourant toute la chaˆ ıne entre les th´ eor` emes et les programmes qui ont vocation de battre des records. Pour passer ` a la production industrielle de cryptosyst` emes erifiables, il faut passer d’une logique de l’exploit ` a une logique de la routine fiable. Aller dans la lune c’est bien, faire Paris-Bordeaux en TGV toute l’ann´ ee en 3 heures est plus difficile, mais plus rentable. Pour r´ ealiser cet objectif, notre ´ equipe encore r´ eduite doit changer d’´ echelle, s’appuyant sur notre r´ eputation de bons artisans. Non seulement des cerveaux suppl´ ementaires sont n´ ecessaires pour mettre au point de nouveaux algorithmes, mais il faut aussi des bras muscl´ es de programmeurs pour les implanter et les faire vivre.

Upload: lamthuy

Post on 15-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Theorie Algorithmique des Nombres pour la Cryptologie (TANC)

Algorithmic number theory for cryptology

F. Morain & P. Gaudry

Version 2.01 - 12 Avril 2002

Presentation rapide : le projet TANC a pour but de promouvoir l’etude, la programmation etl’utilisation de cryptosystemes asymetriques robustes et verifiables bases sur la theorie algorithmiquedes nombres.

Les idees amusantes tirees de l’arithmetique des nombres ont donne naissance a des primitivescryptographiques robustes, qui sont maintenant pretes a etre utilisees dans de nombreux contextesou la securite des transactions ou des donnees est necessaire. Au-dela des besoins de confidentialitepresents dans les reseaux de toute nature, le marche est pret a s’ouvrir a la signature electronique.

La cryptologie du troisieme millenaire sera mathematique ou ne sera pas. Elle utilisera de plusen plus de mathematiques non triviales, et l’investissement que nous avons fait dans de multiplesbranches sera de plus en plus rentable. Et ceci d’autant plus que de nombreux problemes de securitesur les reseaux peuvent etre resolus a l’aide des resultats recents (les tunnels chiffrant permettentde proteger le transfert des paquets IP, les Identity based cryptosystems peuvent servir a la recon-naissance des routeurs voisins d’un routeur, etc.). Nous comptons bien profiter de l’avance acquisedans ce domaine pour etre a meme de jouer notre carte dans les transferts de technologie a venirvers les applications.

La signature electronique va commencer a etre deployee a grande echelle (les decrets d’appli-cation de la loi de mars 2000 sont parus en mars 2001). Que se passera-t-il en cas de contestationdevant un juge ? Que faire si celui-ci exige une preuve de bonne construction ? Nous pretendons quenous sommes a meme de fabriquer des cryptosystemes robustes accompagnes de certificats (a lamode des problemes NP) verifiables simplement. Nous savons fabriquer les parametres necessairesa la mise en œuvre de RSA, tout comme nous savons le faire dans le cas des courbes elliptiques.

Nous sommes connus comme parcourant toute la chaıne entre les theoremes et les programmesqui ont vocation de battre des records. Pour passer a la production industrielle de cryptosystemesverifiables, il faut passer d’une logique de l’exploit a une logique de la routine fiable. Aller dans lalune c’est bien, faire Paris-Bordeaux en TGV toute l’annee en 3 heures est plus difficile, mais plusrentable. Pour realiser cet objectif, notre equipe encore reduite doit changer d’echelle, s’appuyantsur notre reputation de bons artisans. Non seulement des cerveaux supplementaires sont necessairespour mettre au point de nouveaux algorithmes, mais il faut aussi des bras muscles de programmeurspour les implanter et les faire vivre.

Page 2: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Table des matieres

1 Composition de l’equipe 3

2 Contexte de la proposition 3

2.1 Bref apercu de la cryptologie moderne . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 Notre champ d’actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2.1 Groupes et cryptologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.2.2 Les courbes algebriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2.3 La seconde vie des courbes algebriques . . . . . . . . . . . . . . . . . . . . . . 9

3 Actions de recherche 9

3.1 Theorie algorithmique arithmetique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.1.1 Nombres premiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.1.2 Factorisation d’entiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.1.3 Calcul de logarithmes discrets dans un corps fini . . . . . . . . . . . . . . . . 11

3.2 Multiplication complexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.3 Courbes algebriques sur les corps finis . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.3.1 Calcul des lois de groupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.3.2 Calcul de la cardinalite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.3 Calcul de l’anneau d’endomorphismes . . . . . . . . . . . . . . . . . . . . . . 153.3.4 Resolution du probleme du logarithme discret . . . . . . . . . . . . . . . . . . 16

3.4 Construction de cryptosystemes robustes . . . . . . . . . . . . . . . . . . . . . . . . . 173.5 Realisations logicielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.5.1 Le programme ECPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.5.2 Futurs logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4 Notre place dans la communaute 19

4.1 Theorie algorithmique des nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2 Cryptologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3 Arithmetique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.4 Les congres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

5 Cooperations 20

5.1 Cooperations avec des projets de l’INRIA . . . . . . . . . . . . . . . . . . . . . . . . 205.1.1 CODES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205.1.2 SPACES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205.1.3 ALGO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

5.2 Cooperation avec le groupe Magma . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.3 Cooperation avec GAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225.4 Autres cooperations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225.5 Actions concertees incitatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6 Enseignement 23

7 Publications des membres du projet 23

2

Page 3: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

1 Composition de l’equipe

L’equipe Cryptologie du LIX existe en tant que telle depuis le 1er janvier 2001, apres avoirete longtemps abritee par l’equipe Algo. Elle compte actuellement deux permanents, dont unfraıchement recrute comme charge de recherche au CNRS.

– Responsable scientifique

– Francois Morain (FM), Ingenieur en Chef de l’Armement, Professeur associe en informa-tique a l’Ecole polytechnique, LIX.

– Responsable permanent

– Pierrick Gaudry (PG), charge de recherche CNRS.– Doctorants

– Emmanuel Thome (ET), ENS, Allocataire Moniteur, 2e annee.– Nicolas Gurel (NG), Allocataire Moniteur, 2e annee.

– Postdoctorants et ATER

– Mireille Fouquet (MF), ATER, Universite Paris 7.– Andreas Enge (AE), boursier du Deutscher Akademischer AustauschDienst (DAAD).

– Stagiaires pour l’annee en cours : Daniele Raffo (DEA IFA Marne la vallee, sur lesaspects cryptographiques de Netscape) ; Johann Barbier (ESM–St Cyr, sur le decryptementautomatique des substitutions monoalphabetiques) ; Regis Dupont (X-Telecom, DEA ALGO,couplage de Weil en cryptologie) ; Thomas Houtmann (ENS-Cachan, DEA ALGO, algorithmede Mestre pour la construction de courbes hyperelliptiques).

2 Contexte de la proposition

2.1 Bref apercu de la cryptologie moderne

Apres 2000 ans d’obscurite et d’obscurantisme, la cryptologie se developpe maintenant en tantque science a part entiere. Des l’emergence des reseaux entre ordinateurs au debut des annees 50,le Department of Defense americain a lance un appel d’offre pour un systeme de chiffrement desdonnees, qui a abouti a la normalisation du systeme de chiffrement par blocs DES. En parallele, etpar reaction a cette approche ancestrale de la confidentialite (plus je touille les bits, plus c’est sur),des universitaires Americains ont repense la cryptologie pour l’adapter aux problemes naissants(nombre de clefs, signature numerique). Pour renforcer l’idee de rupture avec le passe, le nom decryptologie a clefs publiques fut donne a cette nouvelle facon de voir les choses, par opposition ala cryptologie a clefs secretes. Il est plus exact de remplacer “a clefs secretes” par symetrique (lameme clef sert a chiffrer et a dechiffrer, donc elle doit etre tenue secrete) ; de meme “clefs publiques”est avantageusement remplace par asymetrique (la clef de dechiffrement est differente de celle dechiffrement, l’une ne peut se deduire facilement de l’autre, donc la clef de chiffrement peut etrerendue publique).

Alors que la cryptologie symetrique est tres bien adaptee a de grandes classes de problemes(reseau proprietaire dans lequel tous les intervenants sont controlables), la cryptologie asymetriqueest la plus adaptee au monde moderne ouvert des reseaux, comme Internet. Disons-le tout desuite : la cryptologie n’a pas pour ambition de sauver le monde et de resoudre tous les problemesde securite lies a l’utilisation des reseaux. La cryptologie sait resoudre quelques problemes defacon assez satisfaisante dans la pratique (authentification des donnees, confidentialite, signature

3

Page 4: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

numerique), mais elle bute souvent in fine sur des aspects de la vie reelle difficiles a modeliser(authentification des intervenants, confiance).

Comment classifier les differents domaines de la cryptologie contemporaine ? Rappelons pourcommencer que la cryptologie est la combinaison de deux grandes branches, celle de la construction(appelee cryptographie) et celle de l’attaque (cryptanalyse). De nombreux chercheurs proposent dessystemes, peu sont capables de casser les systemes des autres. Il n’existe d’ailleurs pas beaucoupde methodes generiques pour attaquer un systeme de chiffrement. Dans le monde symetrique,des techniques recentes (cryptanalyse lineaire, differentielle et leurs derivees) donnent quelquesindications sur des failles eventuelles, mais on est tres loin d’avoir des modeles, ou des preuves desecurite.

Le monde asymetrique presente une caracteristique tres importante : comme on doit trouver desalgorithmes avec deux clefs differentes, il faut aussi que ces algorithmes aient la propriete qu’unedes clefs doit etre difficile a trouver a partir de l’autre. On voit ici clairement que cette cryptologiedoit se nourrir de theoremes issus de la theorie de la complexite pour pouvoir atteindre cet objectif.Il n’est d’ailleurs pas innocent que les deux domaines soient nes a peu pres en meme temps etcontinuent a s’alimenter l’un l’autre : citons comme exemple la theorie du zeroknowledge et sesrapports avec les systemes de preuve interactive.

Dit en peu de mots, les problemes difficiles devraient naturellement donner naissance a descryptosystemes dont on pourrait donner une preuve de securite. Localiser les problemes difficilesest chose relativement aisee : il y en a en theorie des nombres (factorisation d’entiers, logarithmediscret) – meme si on ne dispose pas de problemes NP-complets par exemple ; en theorie des codes ;en theorie des reseaux entiers ; des systemes polynomiaux ; dans le monde non commutatif (problemede conjugaison dans les groupes de tresses), etc. Avoir un probleme difficile sous la main ne suffitpas. Il faut encore rajouter une fonction trappe pour que le message chiffre puisse etre dechiffrepar le destinataire legitime facilement. On connaıt de nombreux cas ou rajouter une trappe suffit aaffaiblir considerablement l’instance du probleme en question, ce qui le rend cassable (c’est ce quiest arrive encore recemment a tous les systemes bases de pres ou de loin sur les reseaux entiers).

Pendant 20 ans, on s’est contente de resultats partiels sur la securite des systemes de chiffrement :RSA est cassable si la factorisation d’entiers est facile, le protocole d’echange de clefs de Diffie-Hellman est en danger si resoudre le probleme du logarithme discret est aise, etc. Depuis peu, ona trouve une reciproque plausible a ce dernier probleme, alors qu’il semble que casser RSA seraitplus facile que factoriser le module public. Au dela de cet aspect, appele securite elementaire d’unsysteme, des chercheurs ont tente depuis 10 ans de classifier les attaques possibles d’un systeme,ainsi que les niveaux de securite pouvant etre atteints. On parle ainsi d’attaque a texte clair choisi(chosen plaintext attack – CPA), d’attaque a texte chiffre adaptative (chosen ciphertext attack –CCA). Les buts a atteindre sont la securite semantique (ou indistingabilite – IND, il est impossiblede dire quel message a ete chiffre parmi deux), la non-malleabilite (NM ; a partir de deux messageschiffres, on ne peut en construire un troisieme). Le niveau le plus fort est le niveau IND-CCA.Notons que peu de systemes atteignent ce niveau de securite, et que ceux qui les atteignent ontun cout encore important. La communaute n’est pas encore d’accord sur ces modeles, mais lesprogres sont mesurables et constants. Ajoutons qu’une preuve de securite est rassurante, meme siles implantations subsequentes recelent des failles liees aux details dont le diable est si friand.

Que faire d’une primitive de chiffrement ou de signature, quand on l’a fabriquee et sa securiteprouvee peu ou prou ? Elle est generalement utilisee dans un protocole plus ou moins complexe,

4

Page 5: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

dont la preuve doit etre trouvee dans d’autres modeles avec d’autres techniques, ces protocoles etanteux-memes partie prenante dans des produits ou des applications plus complexes, dont la securitedoit etre assuree, mais dont ce n’est pas necessairement la seule finalite (penser au commerceelectronique dont la securite n’est qu’un seul des aspects).

2.2 Notre champ d’actions

Nous nous situons resolument au debut de la chaıne decrite ci-dessus : nous nous interessonsaux problemes sur lesquels reposent les cryptosystemes modernes, a leur nature bien souventmathematique, a la construction efficace et robuste des objets utilises. Nous participons donc al’elaboration des primitives, a l’etude de leur securite elementaire, mais pas aux preuves de securiteen tant que telles (il s’agit d’ailleurs de preuves de meta-algorithmes, comme OAEP), pas plusqu’aux protocoles ni a leurs preuves. Nous apprehendons toute la chaıne decrite et n’ignorons pasce qu’il se passe dans les autres morceaux. Il est clair que plus nous serons nombreux (pour le mo-ment, deux permanents – un senior, un junior – ne sauraient couvrir a eux seuls tous les domaines),plus nous aurons envie d’elargir notre spectre.

Nous ne pretendons pas couvrir toute l’interface mathematiques-cryptologie. En particulier,nous ne nous interessons pas aux problemes lies aux codes correcteurs, ni plus largement a la theoriede l’information – domaine tres bien couvert par le projet Codes dont nous sommes proches parles modes de pensee et les objectifs, mais pas les moyens d’approche.

Notre domaine de predilection est la theorie algorithmique des nombres et ses rapports avecles systemes de chiffrement ou de signature asymetriques. RSA a des liens avec la factorisation desentiers, le systeme ElGamal avec la difficulte du probleme du logarithme discret dans des groupesfinis et notre but est d’etudier et de suivre (ou preceder) les progres dans la construction ou bienl’attaque de ces systemes, qui sont les plus anciens et ceux a avoir resiste depuis leur introductionil y a 25 ou 15 ans.

La phase de construction et d’etude des systemes actuels de cryptographie ne peut se faire sansutiliser des mathematiques de plus en plus complexes. Il est loin le bon temps de la cryptologiede papa ou on pouvait se contenter de multiplier entre eux des entiers modulo un troisieme. Lacryptologie du troisieme millenaire ne peut se concevoir sans un bagage plus etendu dans diversesparties des mathematiques (courbes algebriques, nombres p-adiques, theorie de Galois, etc.).

Ces investissements ne sont pas rentabilises si on n’essaie pas d’implanter efficacement les algo-rithmes qui les utilisent. Aussi utilisons-nous couramment les logiciels du marche comme Maple,remplace progressivement mais surement par Magma, Pari. Quand aucun de ces logiciels ne nousconvient, nous n’hesitons pas a ecrire nous-memes des programmes plus efficaces en C, en utilisantles librairies multiprecision comme GMP, ajoutant eventuellement un peu d’assembleur quand lebesoin s’en fait sentir (utilisation des registres MMX dans des cas ultra-precis comme la multiplica-tion de polynomes a coefficients binaires). Nos besoins sont souvent tres specifiques (factorisation degrands polynomes dans des grands corps finis, recherche de petits facteurs de nombres gigantesquespour ne prendre que deux exemples) et nous devons developper des methodes specifiques pour cela.

A quoi ressemble une cryptanalyse moderne ? C’est une activite qui demande 1 % d’inspirationet 99 % de transpiration. Tres generalement, cela entraıne une grande consommation de ressources,que ce soit en temps et/ou en espace. Depuis longtemps, les calculs distribues font partie de notrearsenal. Nous avons l’habitude d’utiliser des reseaux de stations de travail sur plusieurs sites pouraller au bout de nos records, avec tous les problemes de gestion au jour le jour que cela peut causer.

5

Page 6: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Nos machines tournent generalement pendant des mois et doivent parfois traiter des giga-octetsde donnees tres rapidement (cf. infra l’exemple du calcul de logarithme discret d’ET avec sa pro-grammation multi-thread). Parmi les records atteints de cette facon, citons les records de primaliteetablis grace a une distribution des calculs des les annees 1990 [22], le calcul de la cardinalite d’unecourbe elliptique sur un corps fini [5, 15], la participation au cassage de RSA-155 [29], l’implan-tation efficace de l’algorithme de PG [18] ou le tres recent record de calcul de logarithme discretrealise par ET [40].

2.2.1 Groupes et cryptologie

Le premier groupe a avoir ete introduit en cryptographie est celui des entiers modulaires Z/NZ

et son groupe multiplicatif (Z/NZ)∗. C’est avec ce groupe que RSA a ete defini. Vinrent ensuite lescorps finis (le plus simple correspond a un Z/pZ avec p premier, le plus utilise ensuite etant sansdoute F2n tant il se prete a une implementation hardware). Ce sont des groupes faciles a aborderet a utiliser (par exemple (Z/pZ)∗ est cyclique de cardinal p− 1), connus depuis au moins le debutdu XIXe siecle.

Le premier protocole a clefs publiques, le systeme d’echanges de clefs de Diffie et Hellman, utilise(Z/pZ)∗ dans lequel tout element s’ecrit comme la puissance d’un element generateur g. Alice etBob voulant etablir une clef secrete commune a travers un reseau ouvert peu sur echangent desquantites ga mod p et gb mod p, ce qui leur permet d’aboutir a la valeur partagee gab mod p. Lasecurite de ce protocole repose sur le fait que le mechant Charlie ne peut calculer cette valeur enayant seulement vu passer ga mod p et gb mod p. Plus formellement, on suppose le probleme DH

difficile : etant donnes p, g, ga, gb, calculer gab. Le probleme du logarithme discret (LD) est quant alui le suivant : etant donnes p, g, ga, retrouver a. Il est clair que si LD est facile, DH l’est egalement.La reciproque est presque vraie, comme en attestent des travaux de Maurer et Wolf.

On pourrait se contenter d’utiliser (Z/pZ)∗ dans les applications. Il se trouve que les meilleursalgorithmes connus pour resoudre LD ont une complexite sous-exponentielle (plus precisementexp(c(log p)1/3(log log p)2/3)). Les meilleures implantations permettent de casser LD pour p del’ordre de 120 chiffres decimaux (400 bits). La taille requise pour une securite correcte est 1024 bits.On a bien sur rapidement propose d’utiliser des corps finis plus generaux, comme par exemple F2n .Malheureusement, Coppersmith a donne un algorithme de complexite O(exp(c ′n1/3(log n)2/3)) pourresoudre LD. D’ou l’idee de trouver des groupes pour lesquels LD serait plus difficile a resoudre.Cette investigation va d’ailleurs dans le sens de la bio-diversite, ou encore de l’application d’unprincipe bien connu en cryptographie operationnelle : toujours avoir un cryptosysteme de reserveen cas de probleme.

Le probleme LD a ete etudie d’un point de vue abstrait, dans lequel on suppose simplement qu’ona affaire a un groupe fini G et qu’on sait simplement representer les elements et calculer la loi degroupe. On sait par exemple que si #G est friable (c’est-a-dire qu’il se factorise en produit de petitsfacteurs premiers), alors LD dans G se ramene a LD dans des sous-groupes d’ordre premier divisant#G (algorithme de Pohlig-Hellman). Il a ete montre par Nechaev et Shoup que si on ne s’autoriseque des calculs generiques dans un groupe G de cardinal premier (on n’a droit qu’a des operationsde groupe), une borne inferieure pour LD est O(

√#G). Cette borne est d’ailleurs atteinte grace a

l’algorithme de Shanks (deterministe, de complexite spatiale et temporelle O(√

#G)) ou celui dePollard (probabiliste, de complexite spatiale O(1)). Nous appelons groupe de Nechaev un groupepour lequel on saurait prouver que LD ne peut y etre resolu qu’avec un algorithme de complexiteO(

√#G). Il n’est d’ailleurs pas clair que de tels groupes existent. S’ils existent, la securite de LD

6

Page 7: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

est facile a assurer des lors que #G ≈ 2200 : a securite egale, ces 200 bits valent 1024 bits de securitedes corps finis.

Quels sont les autres groupes qui ont ete proposes ? Avant de repondre, il faut s’interroger sur lesproprietes desirees pour un groupe dans le contexte LD. Il est suffisant de s’interesser aux groupesfinis (apres tout, ca finira sur un ordinateur qui est fini par essence). Il nous faut etre capable derepresenter efficacement les elements du groupe, tout comme il faut calculer rapidement (en tempspolynomial) la loi de groupe ; il faut encore avoir un moyen efficace de calculer l’ordre du groupe,pour nous assurer que l’attaque de Pohlig-Hellman fera chou-blanc. Les candidats naturels sont lesgroupes de classes de corps de nombres, ou encore les jacobiennes de courbes algebriques.

Dans les deux cas, on doit representer les elements d’un groupe quotient, ce qui demande uncertain doigte. Dans le cas des corps de nombres, calculer l’ordre du groupe de classes est difficile,on ne connaıt que des algorithmes sous-exponentiels qui realisent cette tache. Le probleme LD peuty etre resolu avec la meme complexite, ce qui jette des doutes sur leur utilisation pratique reelle.

2.2.2 Les courbes algebriques

Dans cette partie, nous passons en revue les differents problemes que nous devons regler pourutiliser les courbes algebriques en cryptologie : construction, representation des elements, calcul dela loi de groupe, calcul de la cardinalite, resistance du probleme LD.

Les courbes algebriques sont classifiees selon leur genre : les courbes de genre 0 sont les coniques,celles de genre 1 sont les courbes elliptiques et a partir du genre 2 les choses se compliquent. Si l’onconsidere une courbe de genre g sur un corps fini a q elements, alors sa jacobienne est un groupe decardinal environ qg. S’il existe un algorithme efficace pour calculer dans la jacobienne d’une courbe,celle-ci peut a priori etre utilisee en cryptographie, puisqu’elle forme un groupe abelien fini danslequel le probleme du logarithme discret paraıt difficile.

Courbes elliptiques : Le cas le plus accessible et le plus etudie depuis 1986 (suite aux articles deMiller et Koblitz dans la foulee de travaux de H. W. Lenstra, Jr.) est celui des courbes elliptiques,d’equation y2 = x3 + ax + b dont les coefficients appartiennent a un corps fini. On peut y definirune loi de groupe1 calculable rapidement, et calculer leur cardinalite commence a etre facile (cf.infra) ce qui en fait un substitut a (Z/pZ)∗ dans le protocole de Diffie-Hellman. Comme aucunalgorithme rapide n’est connu pour resoudre LD (sauf sur des courbes tres particulieres), elles sontdes candidates revees pour etre des groupes de Nechaev.

On doit aussi aux courbes elliptiques une nouvelle vision de la factorisation des entiers, ainsiqu’un algorithme de preuve de primalite parmi les plus efficaces actuellement sur le marche.

Autres courbes : En 1986, Adleman et Huang montrent que Primalite est dans RP a l’aide decourbes hyperelliptiques de genre 2, d’equation y2 = x5 + · · ·. En 1989, Koblitz a propose d’utiliserles jacobiennes de courbes hyperelliptiques comme groupes pour la cryptographie. L’espoir naquitainsi d’obtenir des cryptosystemes tres rapides en considerant des courbes de genre suffisammentgrand pour que le corps fini sur lequel on travaille soit en deca de la limite simple precision /multiprecision. Par exemple une taille de clef de 160 bits peut etre obtenue avec une courbe degenre 10 sur F216 ce qui necessite une arithmetique de base sur 16 bits (les PC de l’epoque).L’applicabilite de ce projet s’est vue remise en cause en 1994 par la decouverte par Adleman, De

1En genre 1, une courbe elliptique est sa propre jacobienne.

7

Page 8: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Marrais et Huang d’une attaque heuristiquement sous-exponentielle du logarithme discret sur lescourbes hyperelliptiques de genre “grand”. La validite de ce type d’attaque a ete ensuite prouveed’un point de vue theorique (AE, Muller–Stein–Thiel), ainsi que pratique (travaux de these dePG). La conclusion de ces etudes est qu’a partir du genre 4, il est necessaire d’augmenter la taillede clef par rapport a un systeme ideal (groupe de Nechaev). Dorenavant, on se restreint donc ades courbes de genre au plus 3. Une motivation reste l’obtention de systemes ne necessitant pasde multiprecision (possible en genre 3 sur des architectures 64 bits) ; mais il est aussi importantd’etudier des systemes pouvant se substituer aux courbes elliptiques en cas de probleme.

Il reste donc a cataloguer toutes les courbes de genre au plus 3 pour lesquelles un usage cryp-tographique est envisageable, ainsi qu’a developper et optimiser les algorithmes correspondants.L’arithmetique des courbes hyperelliptiques est assez proche de celle des courbes elliptiques si bienqu’elles furent etudiees en premier. Dans un deuxieme temps, les travaux d’Arita et de Galbraith–Paulus–Smart ont ouvert la voie a l’etude de courbes plus generales : superelliptiques et Cab. Memes’il reste du travail a faire sur l’optimisation des lois de groupes, l’objection principale a la mise enœuvre de ces systemes est le calcul de la cardinalite.

Breve histoire du calcul de la cardinalite : Comment calcule-t-on rapidement le cardinald’une courbe elliptique, puisqu’aucune formule close n’existe pour cela ?

Bien que Schoof ait donne en 1985 un algorithme deterministe de complexite polynomiale pourcela, il apparaissait presque impossible de le faire marcher en pratique, car il met en jeu despolynomes de degre tres eleve (au moins 104). Il a fallu attendre les premieres ameliorations d’Atkina la fin des annees 80, puis celles d’Elkies dans le meme temps pour qu’on puisse songer a s’atteler ala tache. Tres vite, FM a pu implanter ces algorithmes et battre les records du domaine, en grandecaracteristique du moins (FM detient le record a 500 chiffres decimaux depuis 1995). Restait unobstacle de taille : les ameliorations d’Atkin et Elkies ne pouvaient marcher en caracteristique 2.

Il a fallu attendre la these de Couveignes en 1994 pour avoir le premier algorithme rapide decalcul dans Fpn avec p petit et la premiere implantation de FM pour y voir clair. Ses travaux ontete repris par son premier eleve (officieux), R. Lercier, et leur ont donne le premier record du mondedans la matiere. Lercier a donne un algorithme plus rapide pour p = 2 dans sa these et “conclu”cette phase de l’histoire avec n = 1663. Tous ces travaux, realises dans l’orbite de FM au LIXrepresentent ce qui se faisait de mieux jusqu’en 1997 (date de la these de Lercier).

Le sujet semblait avoir ete epuise, mais il a vite repris vie en 1999 avec les travaux de Satoh, quiintroduisit les methodes p-adiques (en particulier le relevement canonique d’une courbe elliptique)dans le calcul de la cardinalite. Alors que les methodes a la Schoof–Elkies–Atkin ont une complexiteheuristique (avec de la multiplication rapide) en O(n4+ε), l’algorithme annonce par Satoh atteintune complexite theorique deterministe prouvee en O(n3+ε). Le coup d’envoi de la mise en pratiquede cet algorithme a ete donne au LIX par MF et PG en collaboration avec Harley, avec la publication[9] d’une extension au cas de p = 2 qui n’etait pas traite dans l’article de Satoh bien qu’ayant le plusd’interet pratique (cette extension a ete effectuee independamment par Skjernaa). Des experiencespratiques ont permis d’une part de pulveriser les precedents records (passant de 2000 a 8000 bits)et d’autre part de gagner un ordre de grandeur sur les temps de calcul pour les tailles utiles encryptographie. De nombreuses ameliorations ont suivi, en partie au LIX, et le sujet n’est pas encorecompletement clos.

Pour les autres courbes, il existe des algorithmes theoriques (par Pila et Huang–Ierardi) inspiresde l’algorithme de Schoof et qui remplissent cette fonction en temps polynomial, mais malgre les

8

Page 9: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

tentatives recentes de mise en pratique (travaux de PG en collaboration avec Harley) les tailles cryp-tographiques restent hors d’atteinte. Un nouvel espoir s’est forme avec l’apparition des methodesp-adiques. D’une part des extensions de l’algorithme de Satoh au genre 2, mais aussi des methodesn’utilisant pas le relevement canonique (algorithme de Kedlaya generalise par PG et NG, puis parVercauteren et Denef, algorithme de Lauder-Wan) bouleversent la donne et permettent de traiterde gros exemples lorsque la caracteristique du corps est petite.

Retour a LD : Pour finir, l’arithmetique des courbes hyperelliptiques a eu un “effet de bord”inattendu sur la cryptographie elliptique. En 1998, Frey a eu l’idee d’utiliser la restriction (oudescente) de Weil afin de transferer un probleme de logarithme discret sur une courbe elliptiqueen un probleme sur une courbe hyperelliptique definie sur un corps fini plus petit. On peut alorsesperer casser le systeme plus rapidement en utilisant notamment l’algorithme developpe par PG.Meme si cette attaque ne fonctionne que dans des cas bien particuliers, il est desormais acquis quecertains systemes elliptiques sont bien plus faibles que ce qui etait auparavant suppose [13]. Etl’etude des courbes non-elliptiques en a ete d’autant plus relancee.

2.2.3 La seconde vie des courbes algebriques

La premiere vie des courbes algebriques est l’utilisation d’un nouveau groupe a la place desanciens. Apres quinze annees de travail (et de lobbying), les courbes elliptiques ont bien penetrele domaine, a tel point que leur utilisation est normalisee a l’IEEE (norme P1363), ou bien dansIPSec. La seconde vie debute quand on commence a utiliser les proprietes intrinseques des courbes.Le premier exemple frappant a ete celui des travaux de Maurer qui ont donne des arguments serieuxprouvant l’equivalence entre LD et DH a l’aide d’une courbe elliptique particuliere servant dans unoracle.

Un deuxieme exemple est l’utilisation des couplages (de Weil ou de Tate), qui s’etaient dejaaveres etre des outils fondamentaux dans la comprehension des proprietes des points de torsion descourbes sur les corps finis. En temoigne la reduction MOV qui a pratiquement annihile tout interetdans l’utilisation des courbes supersingulieres. Tout recemment, et dans la foulee de travaux menesen particulier par A. Joux, D. Boneh, de nouvelles applications novatrices dans la cryptographiesont apparues. Il s’agit ici de fabriquer des signatures courtes, ou bien encore de mettre au pointdes algorithmes de chiffrement a clefs publiques basees sur l’identite (Identity based cryptosystems).Ces resultats semblent indiquer qu’une nouvelle voie d’application est en train de s’ouvrir.

3 Actions de recherche

3.1 Theorie algorithmique arithmetique

C’est la un des fonds de commerce de l’equipe. Le premier domaine aborde ci-dessous est lebebe de FM, les deux autres des activites de veille importante.

3.1.1 Nombres premiers

Participants : FM.

9

Page 10: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Etat de l’art : Les nombres premiers sont a la base de la cryptographie arithmetique (RSA,ElGamal). En cryptologie, il faut penser fabriquer des nombres premiers de 512 ou 1024 bits.

Il existe trois facons de construire des nombres premiers pour la cryptologie : les tests decomposition ; les algorithmes de preuve de primalite pour des cas particuliers ; les methodes depreuve de primalite pour tous les nombres. Les tests de composition (Fermat, Dubois-Selfridge-Miller-Rabin) permettent de detecter tres rapidement les nombres composes, mais peuvent laisserpasser sans les reperer (quoiqu’avec faible probabilite) des nombres composes.

Des tests partiels de primalite existent, ils sont bases sur des reciproques du theoreme de Fermat :par exemple, N est premier si et seulement si (Z/NZ)∗ est cyclique de cardinal N − 1, ce que l’onpeut tester facilement si N − 1 est facile a factoriser. Construire un nombre premier p peut se fairea partir d’un nombre F de factorisation connue et en esperant que p = F + 1 soit premier.

Les algorithmes de preuve de primalite permettent desormais de prouver la primalite de nombresde plusieurs milliers de chiffres decimaux, c’est-a-dire d’un ordre de grandeur plus grand quenecessaire. Sur le marche existent deux algorithmes, celui des sommes de Jacobi (Cohen et Lens-tra), dont le temps de calcul est quasi-polynomial, mais qui ne fournit pas de certificat verifiableen temps polynomial ; et celui du a Atkin et ameliore par FM, utilisant les courbes elliptiques amultiplication complexe, et dont ECPP est une implantation. Dans ce dernier cas, un certificat estfourni, le temps de calcul n’est pas prouve rigoureusement, mais cela n’empeche que le programmesoit tres rapide.

On dit souvent que les algorithmes de preuve tous-usages sont compliques a mettre en œuvreet couteux en temps. Le premier argument est en partie vrai, le second non. Prouver la primalited’un entier de 512 bits requiert quelques secondes sur un PC normal avec le programme ECPP deFM.

Objectifs : Comme on peut s’en douter, rien n’est possible en arithmetique, ou pour les certificatsgeneralises dont nous parlerons plus loin, sans une base ferme, a savoir la preuve de primalite. Nousdevons donc garder le leadership dans le domaine. Cela passera entre autres par l’evolution duprogramme ECPP, conduisant a le vendre eventuellement si c’est possible. Nous devons egalementfaire du lobbying pour encourager les cryptographes a prouver leurs nombres premiers, pour prevenirles inevitables problemes qui finiront par arriver.

3.1.2 Factorisation d’entiers

Participant : FM.La factorisation des entiers represente le moyen definitif de casser RSA, meme si la securite

de RSA ne lui semble pas equivalente (travaux de Boneh et Venkatesan presentes a EURO-

CRYPT’98). Il importe d’effectuer une veille technologique dans ce domaine, ce qui est possiblegrace a l’appartenance de FM au groupe informel CABAL qui a casse RSA-155 [29]. FM a d’ailleurstravaille sur la factorisation d’entiers a base de courbes elliptiques [3].

Les calculs a effectuer pour factoriser un entier sont massifs, mais distribuables a grande echelle.Une part importante du travail est plutot consacree a la surveillance des machines qu’a trouverde nouveaux algorithmes, et de nombreux problemes techniques doivent etre resolus (stockage desdonnees, transfert, filtrage, etc.).

10

Page 11: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

3.1.3 Calcul de logarithmes discrets dans un corps fini

Participant : ET.Les corps finis sont les groupes les plus faciles a utiliser en cryptographie. La difficulte de la

resolution du probleme du logarithme discret doit donc etre mesuree regulierement, pour tenircompte des avancees aussi bien algorithmiques que technologiques. En outre, on peut ramener lecalcul du logarithme discret sur les courbes elliptiques sur un corps fini a celui de logarithme discretsur une extension du corps de base. Il faut la aussi etre en mesure de donner des bornes de securiteverifiees sur le terrain.

Dans cet esprit, ET a acheve en fevrier 2002 un calcul de logarithmes discrets dans F2607 ,etablissant la un nouveau record mondial dans ce domaine. Le precedent record de calcul de loga-rithmes discrets dans un corps de caracteristique 2 etait un calcul sur le corps F2521 en septembre2001 par Joux et Lercier (a l’aide du function field sieve d’Adleman). Precedemment, en 1993, Gor-don et McCurley etaient parvenus grace a l’algorithme de Coppersmith, a calculer des logarithmesdans F2401 , et ont partiellement acheve un calcul sur F2503 . ET a utilise ce meme algorithme, en yapportant les modifications necessaires a un nouveau record.

L’algorithme de Coppersmith se decompose en trois phases bien distinctes. Dans la premierephase, on accumule des relations lineaires entre les logarithmes d’un petit ensemble d’elements dugroupe multiplicatif du corps. Cet ensemble d’elements est appele la base de facteurs, dans notrecas un ensemble de 766 150 elements (soit beaucoup moins que les 2607 elements du corps).

La deuxieme phase de l’algorithme consiste a resoudre le systeme lineaire (qui est toujourscreux) forme par les relations collectees, ce qui nous donne les logarithmes de tous les elements dela base de facteurs.

La troisieme phase est le calcul, a partir de la connaissance des logarithmes des elements de labase de facteurs, du logarithme discret d’un element donne du groupe multiplicatif du corps.

Le calcul a proprement parler sur F2607 a debute au printemps 2000, a partir du programmequ’ET avait developpe jusqu’alors (depuis son stage de DEA). Pour trouver le nombre de relationsnecessaires, il a fallu effectuer une recherche dans un espace de taille 251, qu’ET a pu decomposeren 219 recherches dans des plages de 232 (soit 4 gigaoctets). Ces recherches peuvent etre distribueeset elles ont ete reparties sur un grand nombre de PCs sur plusieurs sites (salles d’enseignement del’Ecole polytechnique, certains ordinateurs du LIX et du centre de calcul MEDICIS). Le total desmachines utilisees avoisine la centaine, dont seulement une vingtaine fonctionnait a plein temps.Le temps mis pour ces calculs peut etre estime a 7 mois sur 100 PC a 600 MHz. En fait, a causede l’utilisation intermittente de certaines des machines, un an de calcul a ete necessaire (fin descalculs au debut du mois d’avril 2001).

ET disposait ainsi d’une matrice creuse de taille 1 033 593 × 766 150, dont il fallait trouver unelement du noyau. Apres une premiere reduction visant a diminuer la taille de la matrice tout enconservant son caractere creux, la matrice n’avait plus qu’une taille 484 603 × 484 603, de densiteplus importante (107 au lieu de 64).

Pour trouver un vecteur du noyau de cette matrice, ET a choisi d’utiliser l’algorithme de Wie-demann par blocs, qui presente l’avantage de rendre possible une distribution moderee des travaux.Le travail pour cet algorithme se divise en trois etapes, la premiere et la troisieme pouvant etrereparties sur plusieurs machines sans communication entre les machines. La premiere etape del’algorithme revient a calculer les coefficients d’une serie entiere de matrices jusqu’a une precisiondonnee. ET a realise une implementation “multithread”, ce qui lui a permis de pouvoir utiliser

11

Page 12: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

a bon escient plusieurs processeurs (dans le cas present, 4) pouvant acceder a la meme memoirecentrale.

La deuxieme phase de l’algorithme de Wiedemann par blocs est completement sequentielle.L’algorithme propose pour effectuer cette tache dans la description originelle de l’algorithme estquadratique. ET a propose une amelioration de cet algorithme (de type FFT, voir [39]), le rendantquasi-lineaire, ce qui a permis de realiser le calcul en 2 jours au lieu des 98 initialement prevus.

Quand on se lance dans une telle expedition, il faut s’attendre a d’inevitables deboires et ilfaut un moral d’acier pour resoudre les problemes qui ne cessent de jaillir. La premiere phase a eteenfin achevee fin janvier 2002. Debut fevrier, le centre de calcul IDRIS a Orsay a ouvert l’acces ason cluster de calculateurs alpha quadri-processeurs. Ces machines, reliees par un reseau gigabit,et disposant chacune de quatre processeurs, ont constitue un environnement de calcul bien adaptequi a pu etre utilise a plein. En deux semaines (une de formalites administratives et une de calcul),la troisieme phase de l’algorithme etait terminee. Le vecteur du noyau a ete obtenu mi-fevrier 2002.Ensuite, le calcul de logarithmes individuels a pris seulement quelques heures.

Forts de cette experience qui hisse le laboratoire dans le petit groupe des leaders mondiaux dusujet, nous pouvons desormais effectuer une veille technologique et reagir rapidement aux innova-tions futures.

3.2 Multiplication complexe

Participants : FM, AE, ET.

Etat de l’art : la theorie de la multiplication complexe est riche et ancienne, developpee desla fin du XIXe siecle, d’abord pour les courbes elliptiques, puis generalisee aux varietes abeliennesquelconques par Shimura. Leur grand interet tient au fait que toute courbe elliptique definie surun corps fini provient en fait d’une courbe a multiplication complexe sur C (travaux de Deuring).A titre d’exemple, la courbe d’equation Y 2 = X3 + X definie sur un corps fini Fp se releve en unecourbe a multiplication complexe par Z[i], ce qui implique entre autres que son cardinal est soitq + 1, soit q + 1 − t avec t un entier relatif tel que 4q = t2 + 4u2.

On concoit que ce genre de courbe presente un interet en cryptographie, puisqu’il est facile decalculer son cardinal, point delicat si la courbe est quelconque. Dans la pratique, on construit enfait une courbe ED associee a un corps quadratique K = Q(

√−D), et on la reduit dans Fq pour q

tel que 4q = t2 + Du2. Ce type de construction est au cœur de l’algorithme ECPP, mais peut aussiservir a construire des courbes pour la cryptographie, a condition de prendre certaines precautions.

Les courbes elliptiques a multiplication complexe sont definies par des nombres algebriques.La construction de ED se fait en fait a travers le calcul du polynome minimal de son invariantmodulaire, qui est un polynome a coefficients entiers. L’algorithme le plus rapide pour effectuerles calculs passe par une evaluation complexe flottante des differentes racines du polynome, etce avec une grande precision, car les coefficients de ce polynome sont generalement gigantesques.Un des themes de recherche de FM depuis longtemps est de trouver des alternatives a l’invariantmodulaire, de facon a obtenir des objets plus petits et donc plus faciles a manipuler (directement ouavec des precalculs qui encombrent les disques). FM a ainsi developpe l’utilisation de ces nouveauxinvariants, notes wN . AE a apporte avec lui une nouvelle sorte d’invariants developpe en communavec R. Schertz. L’union des deux familles represente actuellement ce qu’on fait de mieux dans le

12

Page 13: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

domaine. Plusieurs articles sont en preparation sur ce theme, dont un deja accepte a ANTS-5 [49].Ces invariants sont incorpores dans la version de travail d’ECPP.

L’utilisation de ces invariants dans ECPP necessite la resolution d’une equation polynomiale degrand degre (100, 200 ou meme 1000 dans un contexte cryptographique) dans un corps fini. Malgredes optimisations dans l’algorithme de Cantor-Zassenhaus, c’est une operation tres couteuse. Celaa conduit FM et G. Hanrot a travailler sur la resolution de ce type d’equations par radicaux enutilisant la theorie de Galois. On remplace ainsi la resolution d’une equation de degre 128 par 7equations de degre 2. Leurs travaux sont decrits dans [38].

Objectifs : nous pratiquons la multiplication complexe sur les courbes elliptiques depuis fortlongtemps. Nous aimerions pouvoir faire de la multiplication complexe effective aussi aisement surles courbes hyperelliptiques que sur les courbes elliptiques. La theorie existe (invariants d’Igusa,fonctions theta, formules modulaires de Siegel, etc.), mais la pratique n’est pas autant maıtrisee quenous le souhaiterions. Nous aurons besoin d’investir un peu plus dans l’etude des corps de nombresCM, ce qui nous amenera a interagir avec les specialistes de la theorie algebrique algorithmique. Letravail de these de ET consiste a tester certaines idees en genre 2 (relevement a la Satoh, etc.). C’estun sujet a creuser et qui a l’avantage de fournir une construction de courbes pour la cryptographie.

3.3 Courbes algebriques sur les corps finis

3.3.1 Calcul des lois de groupe

Participants : AE, NG.

Etat de l’art : contrairement aux corps finis, dont les lois de groupe sont simples (calculs surles entiers modulaires ou les polynomes), calculer dans une jacobienne de courbes est plus delicat.On sait depuis longtemps comment calculer la loi de groupe sur une courbe elliptique (loi ditetangente-et-corde). Sur les courbes plus generales, il faut d’abord trouver une bonne representationdes elements, puis des algorithmes de calcul efficace avec ceux-ci. En genre g, on travaille sur lajacobienne, qui est de dimension g. La ou l’on avait des scalaires pour representer les coordonneesdes points, on se retrouve avec des polynomes. Il est alors necessaire de faire appel a des outilsd’algebre commutative effective comme les bases de Grobner ou les formes normales de Hermite.

Chaque grande famille de courbes necessite une approche particuliere, et il paraıt pour l’instantdifficile de trouver une approche unifiee de ces calculs. Des travaux sur les courbes superelliptiqueset Cab ont donne des algorithmes generiques, peu efficaces. AE et NG collaborent actuellement avecFaugere et Basiri (LIP 6) sur l’arithmetique des courbes superelliptiques cubiques. Ils ont ameliorede facon significative les algorithmes existants et ont trouve et implante de nouveaux algorithmes.Leur approche, basee sur les bases de Grobner, semble se generaliser a d’autres courbes cubiques.

Objectifs : a terme, nous aimerions disposer d’une boıte a outils qui nous permettrait de realiserde facon efficace la loi de groupe de toutes les courbes susceptibles de trouver des applications cryp-tographiques. Le catalogue complet de ces courbes est essentiellement connu. Pour les differentesclasses de courbes qui le constituent on souhaite trouver de meilleures strategies que les methodesgeneriques. Il faut d’abord trouver une representation de leur jacobienne, ce qui est loin d’etreevident : la jacobienne etant un groupe quotient, on n’aura jamais de representation unique deleurs elements. Ce probleme pourrait se resoudre par des methodes de theorie algorithmique des

13

Page 14: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

nombres ou encore du calcul formel. Viennent ensuite le deploiement et l’implantation d’algorithmesefficaces pour realiser la loi de groupe sur la base de la representation trouvee. AE et NG ont noteque, dans le cas des courbes superelliptiques cubiques, 99,99 % des operations de groupe sont ef-fectues sur des elements d’une forme speciale. Une nouvelle approche consisterait donc a isoler cescas speciaux, mais typiques, et a developper des algorithmes qui ne saurait traiter que ces cas, maiscela de facon plus efficace qu’un algorithme general.

3.3.2 Calcul de la cardinalite

Participants : FM, PG, MF, NG.

Etat de l’art : nous distinguerons le cas des courbes elliptiques de celui des courbes plusgenerales. En effet, pour les courbes elliptiques le probleme connaıt deja des solutions satisfai-santes et la recherche actuelle vise a ameliorer les contraintes en temps et en espace pour desutilisations dans divers environnements. Inversement, le cas des courbes quelconques est loin d’etretraite de maniere satisfaisante et beaucoup reste a faire. Ensuite il convient de distinguer le cas dela grande caracteristique du cas de la caracteristique 2. Pour ce dernier cas, les methodes p-adiquesfacilitent grandement les choses.

Pour les courbes elliptiques en grande caracteristique, l’algorithme de choix reste actuellementcelui de Schoof–Elkies–Atkin. Le principe est de calculer le cardinal modulo de nombreux petitsnombres premiers ` et de recoller les resultats grace au theoreme Chinois. Le calcul modulo ` passepar l’etude du sous-groupe de `-torsion dont de nombreuses proprietes sont trahies par l’equationmodulaire d’ordre `. Les implantations permettent de traiter une courbe de taille cryptographiqueen quelques dizaines de secondes sur une machine actuelle.

En caracteristique 2, le calcul de cardinalite se fait desormais par des methodes p-adiques a laSatoh. Le principe est de relever la courbe sur un anneau 2-adique de maniere canonique, c’est-a-dire en conservant la structure de l’anneau d’endomorphismes et par la meme, de l’information surla cardinalite. Les algorithmes de ce type fonctionnent en trois etapes : dans une premiere phase onreleve un invariant de la courbe elliptique a etudier ; a partir de cet invariant on calcule une quantitequi decrit le comportement du “petit Frobenius” sur la courbe relevee ; pour finir on calcule la norme(2-adique) de cette quantite, ce qui fournit une approximation de la trace de la courbe initiale. Si l’ontravaille a une precision 2-adique suffisante, l’approximation determine completement la cardinalite.La deuxieme etape a une complexite d’un ordre de grandeur moindre par rapport aux deux autres.La premiere version de cet algorithme en caracteristique 2 a ete proposee independamment parMF, PG et Harley et par Skjernaa, avec une complexite en temps et en espace de O(n3+ε) pourune courbe sur F2n . Des ameliorations se sont succedees et les differentes alternatives sur le marcheactuellement incluent l’algorithme de Vercauteren et al. qui reduit la complexite spatiale lors dela premiere phase a O(n2), la methode AGM inventee par Mestre et developpee par Harley etPG qui presente les memes avantages tout en faisant completement disparaıtre la deuxieme phaseet en ameliorant les constantes, et dernierement la methode de Satoh–Skjernaa–Taguchi (SST)qui ameliore la complexite theorique de la premiere et de la troisieme phase, au prix de quelquesprecalculs.

Pour les courbes non-elliptiques en grande caracteristique, des algorithmes en temps polynomiala la Schoof existent (Pila, Huang–Ierardi) mais ils restent pour le moment theoriques : les seuils apartir desquels ils sont plus efficaces que les algorithmes exponentiels sont au-dela des capacites de

14

Page 15: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

calcul actuelles. Toutefois le cas du genre 2 est le plus avance. Les travaux de PG et Harley [31]ont montre que les methodes a la Schoof pouvaient effectivement ameliorer les temps de calculs enpratique. Des ameliorations recentes tentent de combler les lacunes pour pouvoir traiter des taillescryptographiques. Citons les travaux de Matsuo et al. (a paraıtre dans ANTS 5) et ceux de PG etSchost sur les equations modulaires (en preparation).

En caracteristique 2, les algorithmes p-adiques ont permis d’aller plus loin. Tout d’abord l’al-gorithme AGM s’etend aux courbes de genre 2 et fonctionne tres bien en pratique (plus lentementd’un facteur 3 environ par rapport a une courbe elliptique de meme taille). Par ailleurs, Kedlayaa introduit une nouvelle approche, basee non plus sur le relevement canonique, mais sur la co-homologie de Monsky-Washnitzer. Son algorithme fonctionne pour les courbes hyperelliptiques encaracteristique differente de 2. PG et NG ont ensuite implante cet algorithme et l’ont etendu auxcourbes superelliptiques, montrant ainsi que les tailles cryptographiques sont atteignables pour cetteclasse de courbes. Vercauteren et Denef ont annonce (pour ANTS 5) une adaptation de l’algorithmepour traiter le cas hyperelliptique en caracteristique 2. La encore des implantations prototypes ontdemontre la faisabilite en vraie grandeur. Citons pour finir les travaux de Lauder et Wan qui enrendant effective la preuve de Dwork de la rationalite de la fonction Zeta ont fourni un algorithmepolynomial qu’ils ont ensuite adapte au cas particulier des courbes hyperelliptiques.

Objectifs : pour les courbes elliptiques, il s’agit encore et toujours de diminuer les ressourcesnecessaires au calcul. Plus l’usage des courbes elliptiques se repand, et plus il existe des besoinsspecifiques : on raisonne a l’inverse de la loi de Moore puisque l’on sera amene a terme a faire tourneren environnement varie (et parfois tres contraint) des algorithmes developpes sur des stations detravail recentes. Soulignons que cela implique non seulement des implantations tres soignees, maisaussi de nouvelles idees pour mettre en œuvre les algorithmes existants. Il paraıt par exemplesouhaitable d’ameliorer la recherche de la valeur propre dans l’algorithme SEA, ou de fusionner lesmethodes SST et AGM en caracteristique 2.

Dans le cas non-elliptique, en grande caracteristique, une direction de recherche est l’extensiondes methodes Elkies–Atkin aux courbes de genre 2 (voire plus). Cela passe par une meilleurecomprehension des equations et des formes modulaires en genre superieur. Les premiers calculseffectues par PG et Schost en appellent d’autres, meme si on se trouve en permanence en limitede technologie et que les outils traditionnels doivent etre adaptes a chaque nouvelle situation. Encaracteristique 2, il y a desormais une grande variete d’algorithmes qui demandent a etre testes,etendus et ameliores afin de les comparer et de determiner quel sera le meilleur choix en pratique.Il serait par exemple tres souhaitable de diminuer l’espace memoire requis par l’algorithme deKedlaya.

3.3.3 Calcul de l’anneau d’endomorphismes

Participants : MF, FM.

Etat de l’art : une courbe elliptique sur un corps fini a un anneau d’endomorphismes qui ca-racterise completement cette courbe. Il permet entre autres de differencier les courbes ordinairesdes courbes supersingulieres, et les proprietes de ces dernieres decoulent du fait que l’anneau estnon commutatif (cela a conduit recemment a les utiliser pour des algorithmes bases sur le couplagede Weil).

15

Page 16: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Des qu’il a ete possible de calculer efficacement la cardinalite d’une courbe elliptique sur uncorps fini, il est devenu possible de penser a determiner de maniere algorithmique son anneaud’endomorphismes de facon explicite. L’interet est de pouvoir determiner par quel corps la courbea multiplication complexe et ainsi de calculer le groupe de classes associe. Bien que personne n’aittrouve d’attaques basees sur ce groupe de classes, il est crucial de savoir le calculer, ce qui completela carte d’identite de la courbe. D. Kohel a ainsi donne dans sa these des algorithmes qui calculentcet anneau en utilisant des courbes modulaires (objets deja presents dans SEA).

MF a prolonge dans sa these les travaux de D. Kohel, en degageant une structure agreable pourles classes d’isogenies de courbes elliptiques, structure appelee volcan d’isogenies. Elle a fourni lesalgorithmes permettant de naviguer a volonte dans cette structure. Ce genre de calculs a d’ailleurspermis d’ameliorer des attaques de logarithmes discrets sur certaines courbes (travaux de Galbraith,Heß, Smart).

Objectifs : il semble bien que l’on doive s’attendre a des attaques sur certaines courbes algebriquesgenerales dont l’anneau d’endomorphisme serait un peu trop special. Etre capable de caracteriserles courbes supersingulieres facilement est un enjeu important. Rien n’existe au-dela du genre 1, etil y a tout a faire dans cette direction, le nombre de possibilites pour un anneau augmentant sen-siblement avec le genre. Le premier point a resoudre sera celui du calcul des equations modulairesen genre superieur. On se trouvera alors confronte a d’autres problemes de theorie algebrique desnombres, car les corps de multiplication complexe ne seront alors plus de simples corps quadratiquesimaginaires. Une interaction avec des specialistes de ce domaine sera necessaire.

3.3.4 Resolution du probleme du logarithme discret

Participants : PG, AE.

Etat de l’art : Le probleme du logarithme discret est la clef de voute des protocoles crypto-graphiques a base de courbes. Il est indispensable d’eviter certains cas particuliers pour lesquelsil existe des algorithmes de resolution efficaces. Bien evidemment, comme pour tout groupe, il estnecessaire d’avoir une cardinalite ayant un grand facteur premier. Il convient aussi de se mettrea l’abri des attaques par couplage de Weil/Tate. Celles-ci consistent en une reduction (MOV) po-lynomiale a un probleme de logarithme discret sur un corps fini. En general, le probleme auquelon aboutit se situe dans une extension tellement grande que la complexite globale est bien pirequ’une attaque naıve. Il existe toutefois des courbes pour lesquelles le probleme est transfere dansun corps fini suffisamment petit pour pouvoir etre attaque. Ces cas, facilement reperables, doiventetre evites. Dans le meme ordre d’idees, les sous-groupes d’ordre non premier a la caracteristiquesont fragilises par une reduction (Smart, Satoh & Araki, Semaev) vers un probleme dans le groupeadditif du corps de base. Si l’on considere une courbe elliptique qui n’est sujette a aucune de cesattaques, il reste les algorithmes generiques inherents a tout systeme a base de logarithme discret.Des defis ont ete proposes par la compagnie Certicom afin de mesurer les possibilites actuellespar cette approche. R. Harley est detenteur du record2 avec une courbe sur un corps de taille 109bits, qu’il a obtenu en lancant un appel a contribution a tous les internautes. Ce calcul a prisplusieurs mois sur des milliers de machines, ce qui confirme les estimations theoriques et confortel’idee qu’une clef de 160 bits est completement inattaquable aujourd’hui.

2Voir http ://cristal.inria.fr/~harley/ecdl7/

16

Page 17: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Dans un autre registre, le probleme du logarithme discret sur les courbes devient sous-exponentiellorsque le genre g devient grand par rapport a la taille du corps de base. Durant sa these, PG aadapte ce type d’attaque au cas ou le genre est relativement petit. Consequemment, il est desormaisadmis que l’on ne peut utiliser des cryptosystemes a base de courbes de genre au moins 4 sans devoiraugmenter la taille de la clef par rapport a un systeme elliptique. Pour les courbes de genre suffi-samment grand, AE et PG ont developpe un cadre generique pour les attaques sous-exponentiellesqui fournit un algorithme qui est actuellement le meilleur algorithme prouve.

Ces methodes utilisent une notion de friabilite qui apparaıt naturellement dans les jacobiennesde courbes. La finesse de cette notion de friabilite est liee au genre de la courbe, et dans le casextreme des courbes elliptiques, elle est completement degeneree. A contrario, lorsque le genre estgrand, on retrouve un comportement proche de celui des corps finis.

Recemment une nouvelle attaque a vu le jour a l’initiative de Frey. Celle-ci, appelee “descentede Weil” ramene un probleme de log discret elliptique a un probleme hyperelliptique de genre grandmais sur un corps fini petit. En utilisant ensuite l’algorithme de PG ou celui d’AE et PG, on peutesperer casser le systeme initial. Une collaboration de PG, Heß et Smart a ainsi revele de nouvellescourbes elliptiques faibles.

Objectifs : l’attaque par descente de Weil n’a probablement pas encore donne tous ses fruits.Ameliorer les methodes d’attaque des courbes de genre grand revet une grande importance dansce contexte.

Trouver une meilleure notion de friabilite est vraisemblablement equivalent a casser les courbeselliptiques, ce qui est actuellement hors d’atteinte. Toutefois, meme avec la definition actuelle, toutn’a pas encore ete dit.

Dans un premier temps, nous envisageons de rechercher des familles de courbes de genre grandsusceptibles d’etre attaquees rapidement. Bien entendu, l’ideal est d’obtenir des familles les pluslarges possibles et des algorithmes ayant une complexite la meilleure possible. Notons que dans cecontexte on peut se contenter de complexites soumises a des heuristiques raisonnables. En effet, unalgorithme dont l’analyse est soumise a l’hypothese de Riemann (par exemple) n’ira pas plus vitesi jamais quelqu’un finit par prouver celle-ci.

La deuxieme etape est l’exploitation de ces familles : il s’agira de trouver des courbes elliptiquespour lesquelles la restriction de Weil contiendra de telles courbes. Il est vraisemblable que nousferons appel a des competences exterieures (des specialistes de geometrie algebrique effective, parexemple) pour s’attaquer a cette question.

3.4 Construction de cryptosystemes robustes

Participants : toute l’equipe.

Etat de l’art : construire un RSA robuste est un exercice relativement aise, que ce soit avec desnombres premiers certifies ou non. Nous savons le faire rapidement avec des preuves.

Construire un cryptosysteme a base de courbes elliptiques commence a etre maıtrise, en partiegrace a nos efforts. Nous savons calculer rapidement le nombre de points, verifier que la reductionMOV ne s’applique pas, que le logarithme discret n’est pas trop facile. Deux approches sont pos-sibles : utiliser la theorie de la multiplication complexe comme decrit plus haut, ou bien choisir unecourbe au hasard, calculer sa cardinalite et verifier si elle est robuste.

17

Page 18: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Une des idees fortes dans cette seconde approche est l’usage de la methode dite early-abort miseau point par Lercier sur une idee de FM : on jette le plus tot possible une courbe elliptique dont lecardinal a un petit facteur premier. Bien que developpee dans le contexte de SEA, elle peut encoreetre utilisee avec les nouvelles methodes p-adiques.

Objectifs : nous devons aller plus loin dans la construction. Non contents de tamiser pour trouverune bonne courbe, il nous faut donner une preuve de la valeur de la cardinalite, de sa factorisation,du discriminant du corps quadratique associe, de son nombre de classes et de la factorisation decelui-ci. Tout cela demandera une implantation soignee de tous les algorithmes utilises (factorisationd’entiers, algorithmes de calcul de formes normales de Hermite et Smith pour la structure du groupede classes, etc.), ainsi que des preuves de validite des resultats obtenus. Chaque factorisation devraetre certifiee, au sens des certificats a la Pratt. Tout cela conduira a l’etablissement d’une veritablecarte d’identite pour une courbe elliptique.

Nous souhaitons etablir une telle carte pour les autres courbes egalement.

3.5 Realisations logicielles

Il est clair au vu de ce qui precede que nous ne saurions vivre sans logiciels, les notres et ceuxdont nous avons besoin pour les elaborer. Nous pensons que nos programmes doivent etre valorisessur le plan industriel. Il nous faut des bras pour cela – deux permanents ne peuvent pas tout faire.Tenir a bout de bras un programme comme ECPP (cf. ci-dessous) ou les tentatives de maintenircompetitif un programme de calcul de cardinalite, ont montre les limites de l’epure.

Faire vivre un programme pour la communaute est certes une tache noble, mais dans notredomaine, nous pourrions esperer mieux. Il nous faut un coup de main pour la valorisation de nosprototypes (habillage des programmes, recherche de partenaires), activite dont nous avons dejapu constater par le passe qu’elle n’etait pas aisee, et sans doute pas un travail que les chercheurspeuvent (ou doivent) faire eux-memes.

3.5.1 Le programme ECPP

Le programme ECPP existe depuis 1991 (en C, la version developpee dans la these de FM etanten LeLisp), date a laquelle la version 3.1.4 a ete distribuee a partir de l’INRIA (ftp anonyme).De nombreux utilisateurs ont pu l’experimenter, d’autant plus que les sources C avaient ete mises adisposition avec la bibliotheque BigNum (developpee en particulier par J. Vuillemin avant et apresson depart chez DEC). Une version intermediaire a ete donnee au groupe de J. Cannon, qui l’aincorporee dans le logiciel Magma, en echange de licences gratuites d’utilisation et de mise a jourdu logiciel.

Deux versions ont ete distribuees plus tard, et la version mise sur la page web de FM est la6.4.5, alors que la version de travail est la 11.0.5 et comporte de nouveaux changements, tanttheoriques que pratiques. Un PC normal met quelques secondes a prouver la primalite d’un nombrede 512 bits (150 chiffres decimaux suffisent pour faire du RSA a 1024 bits).

Maintenir ECPP est un bon exercice de genie logiciel. En 10 ans, la vitesse des ordinateurs atellement progresse que des utilisateurs survoltes essaient le programme sur des nombres beaucoupplus grands que ceux pour lesquels le programme avait ete concu au depart. Cela a conduit atravailler sur des ameliorations de certains endroits du code qui n’avaient jamais pose problemejusque la. Un passage de BigNum a GMP est le trait le plus marquant de la nouvelle version,

18

Page 19: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

qui permet de traiter des nombres de pres de 3000 chiffres decimaux (un des nombres certifiesrecemment, 991942+942991, a 2948 chiffres decimaux et a demande 411 heures de calcul sur PentiumIII, 450 MHz).

Les sources ne sont plus donnees a quiconque, seuls des binaires strippes le sont. Il est difficiled’estimer le nombre de personnes qui utilisent ECPP sans le dire pour faire de la cryptographie.

3.5.2 Futurs logiciels

Elaboration de cartes d’identite : la carte d’identite presentee a la section precedente ne peutbien sur se concevoir sans les logiciels qui vont avec, que ce soit pour la fabrication ou la verification.

Calcul de cardinalite de courbes elliptiques en caracteristique 2 : PG a acquis uneexpertise dans les calculs de cardinalite par les methodes p-adiques. Il dispose actuellement demorceaux de codes pour calculer les cardinalites de courbes elliptiques en caracteristique 2 de taillecryptographique en des temps tout a fait competitifs. L’algorithme est une variante de l’algorithmede Satoh–Skjernaa–Taguchi ameliore par PG pour tirer parti des idees de l’algorithme AGM. Celapourrait deboucher sur un logiciel autonome que l’on pourrait integrer a un package plus consequentde construction de courbes elliptiques sures.

4 Notre place dans la communaute

4.1 Theorie algorithmique des nombres

Il n’existe pas beaucoup de theoriciens algorithmiques des nombres en France, a l’exceptionnotable du laboratoire A2X de Bordeaux, qui developpe Pari (sous la direction d’H. Cohen). Cegroupe est clairement la reference en theorie algorithmique algebrique des nombres, H. Cohen ayantecrit deux bibles du domaine. J.-M. Couveignes monte depuis peu une equipe a Toulouse.

Des chercheurs isoles completent le tableau (A. Joux au DCSSI, R. Lercier au CELAR). Nousavons pas mal coopere avec ces derniers il y a quelques annees (articles en commun FM-JMC,FM-AJ, Lercier a ete le premier thesard de FM), les liens s’etant quelque peu distendus depuis.

A l’etranger, on compte egalement peu d’equipes, a part celle de M. Pohst a Berlin, celle deH. Zimmer a Saarbrucken, ou celle de J. Buchmann a Darmstadt. On trouve quelques chercheursisoles en Angleterre (Cremona).

En ce qui concerne plus precisement la cryptologie des courbes, nos concurrents sont princi-palement l’equipe de G. Frey a Essen (IEM), et l’equipe de N. Smart a Bristol. Nous entretenonsdes rapports reguliers avec eux (echange de visites, jurys de these, etc.). Plus quelques personnesisolees (Galbraith, Satoh).

A l’occasion d’une operation conjointe CNRS – Universite d’Urbana Champaign, nous avonscommence une collaboration avec l’equipe de N. Boston, qui travaille sur des sujets voisins desnotres. Cela nous a deja permis d’echanger des etudiants pour des sejours plus ou moins longs (PGa l’ete 2001, M. Bauer pour 15 jours au LIX).

4.2 Cryptologie

Nous participons regulierement aux seminaires de cryptologie de la region parisienne (seminairedu GRECC a l’Ecole normale superieure, seminaire CCA a l’ENSTA).

19

Page 20: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Nous participons avec l’equipe du GRECC a la filiere CRYPTO du DEA-ALGO. Dans le passe,nous avons eu des interets communs (these de Couveignes, un peu de factorisation d’entiers). Nouschassons pour le moment sur des terrains differents.

4.3 Arithmetique

FM a fait sa these moitie a l’INRIA, moitie a Lyon ou se trouvait son directeur de these,J.-L. Nicolas, un arithmeticien interesse par les calculs sur ordinateur, et avec lequel il a garded’excellents contacts. FM est ainsi bien introduit dans la communaute des arithmeticiens francais.Il nous arrive de faire des exposes devant des auditoires varies, par exemple le seminaire de theorieanalytique des nombres de Paris (H. Daboussi), ou encore les Journees arithmetiques, lesjournees Euclide de Paris 7 (D. Le Brigand).

4.4 Les congres

Les grandes conferences de cryptologie sont CRYPTO, EUROCRYPT, ASIACRYPT, au-dessus de conferences plus specialisees dans divers domaines. Les actes sont systematiquementpublies comme Lecture Notes in Computer Science. Il existe deux journaux, Journal of Cryptologyet Design, codes and cryptography, qui sont peu volumineux. On trouve egalement des articles plusaboutis dans SIAM Journal of Computing ou bien IEEE Transactions on Information Theory.

Nous avons regulierement des articles acceptes dans la seule conference internationale de theoriealgorithme des nombres, ANTS (pour Algorithmic Number Theory Symposium) dont c’est la 5eedition cette annee (actes egalement parus dans les Lecture Notes in Computer Science ; FM ad’ailleurs ete membre du comite de programme de ANTS-II). Nous avons ete invites aux congresECC (elliptic curves and cryptography), congres emergeant dans notre axe principal. Nous frequentonsegalement les conferences Finite Fields ou les Journees arithmetiques.

5 Cooperations

5.1 Cooperations avec des projets de l’INRIA

5.1.1 CODES

Nous avons deja parle du projet Codes, que nous considerons comme une equipe frere (sœur ?),et avec qui nous avons deja collabore par le passe (ARC courbes – un groupe de travail a d’ailleursete monte sur ce theme) et qui serait pour nous un partenaire indispensable pour des actionsconjointes pour le transfert de savoir, de technologie et tout simplement d’idees.

Un rapprochement est en cours depuis plusieurs annees (participations croisees a des jurys dethese ou d’habilitation).

5.1.2 SPACES

G. Hanrot est chercheur associe a notre equipe. Outre sa collaboration a l’enseignement (TPpour FM en majeure 2, cours de DEA avec PG et FM), il co-encadre avec FM la these de NG. FMet GH ont ecrit un article ensemble sur la resolution des equations polynomiales par radicaux. NGest egalement un des participants a l’ACI Polycrypt dirigee par GH, et dont les autres acteurssont membres du projet SPACES ainsi que du projet CODES.

20

Page 21: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

Nous sommes de gros consommateurs de calculs en multiprecision. FM fut le premier utilisateurde BigNum en son temps et desormais nous sommes ravis de recuperer les programmes ecrits parP. Zimmermann dans GMP. Une collaboration est en train de demarrer entre AE et ce dernier,sur une implantation efficace des nombres complexes au-dessus de la librairie mpfr developpee parP. Zimmermann et G. Hanrot au-dessus de GMP.

5.1.3 ALGO

Ayant fait une partie de sa these au projet ALGO, FM a garde des contacts avec les membresde ce projet, et partage toujours des interets lies notamment au calcul formel en general et Maple

en particulier. Notons que certains des algorithmes que nous utilisons couramment ont ete analysespar les techniques developpees dans ce projet, que ce soit la methode RHO de Pollard, ou bien lecomportement moyen des algorithmes de factorisation de polynomes sur les corps finis, ou encoreles chaınes d’addition-soustraction [1].

5.2 Cooperation avec le groupe Magma

Magma est un logiciel de calcul algebrique developpe a l’Universite de Sydney par le groupede J. Cannon. Il fut cree a partir du logiciel Cayley, specialise dans la theorie des groupes. En1994, lors de la publication de la premiere version, peu de fonctionnalites etaient presentes. Sonchamp d’action s’est progressivement elargi et les utilisateurs sont de plus en plus nombreux dansdes domaines allant des codes correcteurs d’erreurs a la geometrie algebrique en passant par latheorie algebrique des nombres. Son statut legal est inhabituel, puisqu’il n’est ni libre ou gra-tuit ou open-source, ni commercial. L’argent des licences vendues revient a l’Universite qui enechange paye du personnel technique pour aider a maintenir le code (d’un point de vue strictementfinancier, l’operation est deficitaire pour l’Universite). Sous la pression de la communaute d’utilisa-teurs, Magma se dirige lentement vers la publication des sources, sans envisager actuellement uneevolution complete vers le logiciel libre sous licence GPL ou assimilee.

Il y a quelques annees, nous avons commence a utiliser Magma a la place de Maple et latransition est maintenant presque achevee. Magma presente l’avantage de permettre la manipu-lation simple d’objets algebriques complexes. Par exemple, il est aise de calculer dans une courbeelliptique definie sur un corps de fonctions d’une courbe hyperelliptique a coefficients dans un corpsde nombres, et ce en gardant une efficacite raisonnable. Les algorithmes choisis sont en general“etat de l’art” et leur implantation peut s’averer redoutablement efficace. Dans certains domaines(algebre lineaire exacte, bases de Grobner), Magma est le plus rapide des logiciels ou librairiesdisponibles3.

La cooperation a debute avec l’integration d’ECPP dans Magma a partir de la version 2.20(avril 1997). L’hiver 2001, PG a passe 3 mois a Sydney afin de fournir une implantation de calcul decardinalite de courbes de genre 2 sur un corps fini (environ 5000 lignes ecrites en langage Magma),integre a partir de la version 2.8 (juillet 2001). L’algorithme employe est celui developpe dans lathese de PG, etendant l’algorithme de Schoof. Bien que cela permette d’atteindre des tailles plusgrandes que par les algorithmes classiques (Shanks, Pollard), les tailles cryptographiques restentpour le moment hors de portee. Dernierement, ET a passe 1 mois a Sydney pour integrer sonprogramme de calcul de logarithmes discrets dans les corps finis de caracteristique 2, qui sera ainsiinclus dans la prochaine version (6000 lignes de programme, dont 1000 pour l’interfacage). Outre

3Si l’on excepte le programme de Faugeres qui n’est pas distribue.

21

Page 22: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

les frais de voyage et de sejour pris en charge par Magma, nous avons ainsi obtenu des licencesd’utilisation gratuite. Ces licences incluent les mises a jour et corrections de bugs.

Cette cooperation nous permet de donner de la visibilite a nos programmes en les integrant aun logiciel largement diffuse. C’est particulierement vrai en ce qui concerne des algorithmes dontl’interet est principalement academique (il n’y a pas, a notre connaissance de marche pour vendreun calcul de log discret ou de cardinalite de courbes de genre 2). Le statut legal des sources deMagma ne nous empeche pas de valoriser differemment des versions posterieures des logiciels si unedemande industrielle apparaıt. Par exemple, les possibilites pour ECPP restent ouvertes si demainune norme impose des certificats de primalite dans les generations de cle.

Nous comptons donc maintenir cette cooperation.

5.3 Cooperation avec GAGE

Les cooperations avec GAGE sont le resultat d’une proximite geographique : les discussions depause-cafe ont progressivement evolue vers des travaux communs plus formels. Le GAGE inclut uneequipe de specialistes de la resolution de systemes polynomiaux, lesquels apparaissent assez souventlors de l’etude de l’arithmetique des courbes. Dans des situations ou les programmes generalistesne donnent pas de reponse satisfaisante, il est donc naturel pour nous de faire appel au savoir-fairede nos voisins. E. Schost s’est montre particulierement interesse par nos problemes. Il a investisuffisamment dans l’arithmetique des courbes afin de pouvoir mieux attaquer les problemes encomprenant “en aval”. Une co-publication a ete obtenue [37], et un autre travail est en cours.E. Schost a actuellement un poste de Maıtre de Conferences en Informatique a l’Ecole polytechnique,ce qui a pour effet de perenniser cette cooperation.

5.4 Autres cooperations

Nous avons deja mentionne les rapports entretenus avec le projet SPACES. Une autre collabo-ration est en cours entre AE, NG et J.-C. Faugere et A. Basiri (LIP 6), concernant le calcul efficacedes lois de groupes sur les courbes superelliptiques.

Un visiteur frequent est Preda Mihailescu, actuellement en poste a Paderborn. Ses interetsmultiples vont de la primalite (un des rivaux de FM) a la conjecture de Catalan en passant par lescourbes elliptiques, la multiplication complexe, etc.

L’equipe du LIX fait partie du groupe C2 (Codage et cryptographie) qui organise des journeesjeunes chercheurs sur ces themes tous les ans.

5.5 Actions concertees incitatives

L’equipe a obtenu deux ACI Cryptologie ; la premiere, CRYPTOCOURBES (janvier 2001a decembre 2002) a pour but de classifier les courbes algebriques utilisables en cryptologie, ce quirecoupe un des axes de travail majeurs de l’equipe. La seconde (qui vient tout juste d’etre accepteeet devrait couvrir 2003-2004 et permettra de travailler avec X. Roblot de l’Universite de LyonI), Crypto p-adique, approfondit une des directions debroussaillee dans la premiere, a savoirl’utilisation des nombres p-adiques en cryptologie, et notamment sur les courbes algebriques. Cettederniere ACI recouvre notamment la these de NG.

22

Page 23: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

6 Enseignement

FM enseigne depuis 10 ans a l’Ecole polytechnique, il a gravi tous les echelons pour aboutirmaintenant a un poste de professeur associe. Il enseigne la cryptologie depuis 1996 (d’abord dansla Majeure 1, puis dans la Majeure 2 depuis 2 ans) ; un poly a ete specialement ecrit pour ce cours.FM enseigne un cours de theorie algorithmique des nombres depuis 1991 dans le DEA IMA puisALGO. FM donne egalement un cours de cryptologie dans le DEA IFA de Marne-la-vallee depuis 3ans. Tous ces cours ont attire un nombre respectable d’etudiants, dont certains ont choisi de faireleur these au LIX sous sa direction.

7 Publications des membres du projet

Articles

[1] Morain, F., and Olivos, J. Speeding up the computations on an elliptic curve using addition-subtraction chains. RAIRO Inform. Theor. Appl. 24, 6 (1990), 531–543.

[2] Atkin, A. O. L., and Morain, F. Elliptic curves and primality proving. Math. Comp. 61, 203 (July1993), 29–68.

[3] Atkin, A. O. L., and Morain, F. Finding suitable curves for the elliptic curve method of factoriza-tion. Math. Comp. 60, 201 (Jan. 1993), 399–405.

[4] Joux, A., and Morain, F. Sur les sommes de caracteres liees aux courbes elliptiques a multiplicationcomplexe. J. Number Theory 55, 1 (Nov. 1995), 108–128.

[5] Morain, F. Calcul du nombre de points sur une courbe elliptique dans un corps fini : aspects algo-rithmiques. J. Theor. Nombres Bordeaux 7 (1995), 255–282.

[6] Guillaume, D., and Morain, F. Building pseudoprimes with a large number of prime factors. Appl.Algebra Engrg. Comm. Comput. 7, 4 (1996), 263–277.

[7] Leprevost, F., and Morain, F. Revetements de courbes elliptiques a multiplication complexe pardes courbes hyperelliptiques et sommes de caracteres. J. Number Theory 64 (1997), 165–182.

[8] Morain, F. Classes d’isomorphismes des courbes elliptiques supersingulieres en caracteristique ≥ 3.Utilitas Math. 52 (Dec. 1997), 241–253.

[9] Fouquet, M., Gaudry, P., and Harley, R. An extension of Satoh’s algorithm and its implemen-tation. J. Ramanujan Math. Soc. 15 (2000), 281–318.

[10] Lercier, R., and Morain, F. Computing isogenies between elliptic curves over Fpn using Couvei-gnes’s algorithm. Math. Comp. 69, 229 (Jan. 2000), 351–370.

[11] Enge, A. The extended Euclidian algorithm on polynomials, and the computational efficiency ofhyperelliptic cryptosystems. Des. Codes Cryptogr. 23, 1 (2001), 53–74.

[12] Enge, A., and Gaudry, P. A general framework for subexponential discrete logarithm algorithms.Acta Arith. CII, 1 (2002), 83–103.

[13] Gaudry, P., Hess, F., and Smart, N. Constructive and destructive facets of Weil descent on ellipticcurves. J. of Cryptology 15 (2002), 19–46.

[14] Thome, E. Subquadratic computation of vector generating polynomials and improvement of the blockWiedemann algorithm. J. Symbolic Comput. vv, nn (July 2002), xxx–yyy. to appear.

Theses

[15] Lercier, R. Algorithmique des courbes elliptiques dans les corps finis. These, Ecole polytechnique,June 1997.

23

Page 24: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

[16] Morain, F. Courbes elliptiques, arithmetique et corps finis. Memoire d’habilitation, Universite Paris6, 1997.

[17] Enge, A. Hyperelliptic Cryptosystems : Efficiency and Subexponential Attacks. PhD thesis, UniversitatAugsburg, 2000.

[18] Gaudry, P. Algorithmique des courbes hyperelliptiques et applications a la cryptologie. These, Ecolepolytechnique, Dec. 2000.

[19] Fouquet, M. Anneau d’endomorphismes et cardinalite des courbes elliptiques :aspects algorithmiques. These, Ecole polytechnique, Dec. 2001. Available athttp ://www.lix.polytechnique.fr/Labo/Mireille.Fouquet/.

Livres

[20] Enge, A. Elliptic Curves and Their Applications to Cryptography — An Introduction. Kluwer Acade-mic Publishers, 1999.

Conferences

[21] Morain, F. Building cyclic elliptic curves modulo large primes. In Advances in Cryptology – EU-ROCRYPT ’91 (1991), D. Davies, Ed., vol. 547 of Lecture Notes in Comput. Sci., Springer–Verlag,pp. 328–336. Proceedings of the Workshop on the Theory and Application of Cryptographic Tech-niques, Brighton, United Kingdom, April 8–11, 1991.

[22] Morain, F. Distributed primality proving and the primality of (23539+1)/3. In Advances in Cryptology– EUROCRYPT ’90 (1991), I. B. Damgard, Ed., vol. 473 of Lecture Notes in Comput. Sci., Springer–Verlag, pp. 110–123. Proceedings of the Workshop on the Theory and Application of CryptographicTechniques, Aarhus, Denmark, May 21–24, 1990.

[23] Couveignes, J.-M., and Morain, F. Schoof’s algorithm and isogeny cycles. In ANTS-I (1994),L. Adleman and M.-D. Huang, Eds., vol. 877 of Lecture Notes in Comput. Sci., Springer-Verlag, pp. 43–58. 1st Algorithmic Number Theory Symposium - Cornell University, May 6-9, 1994.

[24] Lercier, R., and Morain, F. Counting the number of points on elliptic curves over finite fields :strategies and performances. In Advances in Cryptology – EUROCRYPT ’95 (1995), L. C. Guillou andJ.-J. Quisquater, Eds., vol. 921 of Lecture Notes in Comput. Sci., pp. 79–94. International Conference onthe Theory and Application of Cryptographic Techniques, Saint-Malo, France, May 1995, Proceedings.

[25] Lercier, R., and Morain, F. Algorithms for computing isogenies between elliptic curves. In Com-putational Perspectives on Number Theory : Proceedings of a Conference in Honor of A. O. L. Atkin(1998), D. A. Buell and J. T. Teitelbaum, Eds., vol. 7 of AMS/IP Studies in Advanced Mathematics,American Mathematical Society, International Press, pp. 77–96.

[26] Morain, F. Primality proving using elliptic curves : an update. In Algorithmic Number Theory(1998), J. P. Buhler, Ed., vol. 1423 of Lecture Notes in Comput. Sci., Springer-Verlag, pp. 111–127.Third International Symposium, ANTS-III, Portland, Oregon, june 1998, Proceedings.

[27] Duursma, I., Gaudry, P., and Morain, F. Speeding up the discrete log computation on curveswith automorphisms. In Advances in Cryptology – ASIACRYPT ’99 (1999), K. Y. Lam, E. Okamoto,and C. Xing, Eds., vol. 1716 of Lecture Notes in Comput. Sci., Springer-Verlag, pp. 103–121. Interna-tional Conference on the Theory and Applications of Cryptology and Information Security, Singapore,November 1999, Proceedings.

[28] Bueler, B., Enge, A., and Fukuda, K. Exact volume computation for polytopes : A practicalstudy. In Polytopes — Combinatorics and Computation (Basel, 2000), G. Kalai and G. M. Ziegler,Eds., vol. 29 of DMV Seminar, Birkhauser Verlag, pp. 131–154.

[29] Cavallar, S., Dodson, B., Lenstra, A. K., Lioen, W., Montgomery, P. L., Murphy, B., te

Riele, H., Aardal, K., Gilchrist, J., Guillerm, G., Leyland, P., Marchand, J., Morain,

24

Page 25: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

F., Muffett, A., Putnam, C., Putnam, C., and Zimmermann, P. Factorization of a 512-bit RSAmodulus. In Advances in Cryptology – EUROCRYPT 2000 (2000), B. Preneel, Ed., vol. 1807 of LectureNotes in Comput. Sci., Springer-Verlag, pp. 1–18.

[30] Gaudry, P. An algorithm for solving the discrete log problem on hyperelliptic curves. In Advances inCryptology – EUROCRYPT 2000 (2000), B. Preneel, Ed., vol. 1807 of Lecture Notes in Comput. Sci.,Springer–Verlag, pp. 19–34.

[31] Gaudry, P., and Harley, R. Counting points on hyperelliptic curves over finite fields. In ANTS-IV(2000), W. Bosma, Ed., vol. 1838 of Lecture Notes in Comput. Sci., Springer–Verlag, pp. 313–332.

[32] Enge, A. A general framework for subexponential discrete logarithm algorithms in groups of unknownorder. In Finite Geometries (Dordrecht, 2001), A. Blokhuis, J. W. P. Hirschfeld, D. Jungnickel, andJ. A. Thas, Eds., vol. 3 of Developments in Mathematics, Kluwer Academic Publishers, pp. 133–146.

[33] Enge, A. How to distinguish hyperelliptic curves in even characteristic. In Public-Key Cryptographyand Computational Number Theory (Berlin, 2001), K. Alster, J. Urbanowicz, and H. C. Williams, Eds.,De Gruyter, pp. 49–58.

[34] Enge, A. Volume computation for polytopes : Strategies and performances. In Encyclopedia of Opti-mization (Basel, 2001), C. A. Floudas and P. M. Pardalos, Eds., Birkhauser Verlag.

[35] Fouquet, M., Gaudry, P., and Harley, R. Finding secure curves with the Satoh-FGH algorithmand an early-abort strategy. In Advances in Cryptology – EUROCRYPT 2001 (2001), B. Pfitzmann,Ed., vol. 2045 of Lecture Notes in Comput. Sci., Springer-Verlag, pp. 14–29.

[36] Gaudry, P., and Gurel, N. An extension of Kedlaya’s algorithm to superelliptic curves. In Advancesin Cryptology – ASIACRYPT 2001 (2001), C. Boyd, Ed., vol. 2248 of Lecture Notes in Comput. Sci.,Springer-Verlag, pp. 480–494.

[37] Gaudry, P., and Schost, E. On the invariants of the quotients of the jacobian of a curve of genus 2. InApplied Algebra, Algebraic Algorithms and Error-Correcting Codes (2001), S. Boztas and I. Shparlinski,Eds., vol. 2227 of Lecture Notes in Comput. Sci., Springer-Verlag, pp. 373–386.

[38] Hanrot, G., and Morain, F. Solvability by radicals from an algorithmic point of view. In Symbolicand algebraic computation (2001), B. Mourrain, Ed., ACM, pp. 175–182. Proceedings ISSAC’2001,London, Ontario.

[39] Thome, E. Fast computation of linear generators for matrix sequences and application to the blockWiedemann algorithm. In ISSAC ’2001 (2001), B. Mourrain, Ed., ACM Press, pp. 323–331. Proc.International Symposium on Symbolic and Algebraic Computation, July 22–25, 2001, London, Ontario,Canada.

[40] Thome, E. Computation of discrete logarithms in F2607 . In Advances in Cryptology – ASIACRYPT’2001 (2001), C. Boyd and E. Dawson, Eds., vol. 2248 of Lecture Notes in Comput. Sci., Springer-Verlag,pp. 107–124. Proc. 7th International Conference on the Theory and Applications of Cryptology andInformation Security, Dec. 9–13, 2001, Gold Coast, Queensland, Australia.

Rapports de recherche

[41] Enge, A. Computing discrete logarithms in high-genus hyperelliptic Jacobians in provably subexpo-nential time. Combinatorics and Optimization Research Report CORR 99-04, University of Waterloo,Feb. 1999. Available at http ://cacr.math.uwaterloo.ca/techreports/1999/corr99-04.ps postedon the website of Mathematics of Computation.

[42] Enge, A., and Stein, A. Smooth ideals in hyperelliptic function fields. Combinatorics and Opti-mization Research Report CORR 2000-08, University of Waterloo, Jan. 2000. Available at http ://-

cacr.math.uwaterloo.ca/techreports/2000/corr2000-08.ps posted on the website of Mathematicsof Computation.

25

Page 26: Th eorie Algorithmique des Nombres pour la … · Nous savons fabriquer les param etres n ecessaires a la mise en ˙uvre de RSA, tout comme nous savons le faire dans le cas des courbes

[43] Fouquet, M., and Morain, F. Isogeny volcanoes and the SEA algo-rithm. Research Report LIX/RR/00/05, LIX, June 2000. Available athttp ://www.lix.polytechnique.fr/Labo/Francois.Morain/. Accepted for publication in theproceedings of ANTS-V.

Non publies

[44] Gaudry, P., and Schost, E. Modular equations in higher genus. In preparation.

[45] Basiri, A., Enge, A., Faugere, J.-C., and Gurel, N. Fast arithmetics for superelliptic cubics. Inpreparation, 2001.

[46] Enge, A., and Morain, F. Further investigations of the generalised Weber functions. In preparation,2001.

[47] Enge, A., and Schertz, R. Constructing elliptic curves from modular curves of positive genus. Inpreparation, 2001.

[48] Enge, A., and Schertz, R. Modular curves of composite level. In preparation, 2001.

[49] Enge, A., and Morain, F. Comparing invariants for class fields of imaginary quadratic fields. Ac-cepted for ANTS V — Algorithmic Number Theory Symposium, Sydney., 2002.

26