• Aucun résultat trouvé

Applications des fonctions thêta à la cryptographie sur courbes hyperelliptiques.

N/A
N/A
Protected

Academic year: 2021

Partager "Applications des fonctions thêta à la cryptographie sur courbes hyperelliptiques."

Copied!
197
0
0

Texte intégral

(1)

HAL Id: tel-00642951

https://tel.archives-ouvertes.fr/tel-00642951

Submitted on 20 Nov 2011

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

courbes hyperelliptiques.

Romain Cosset

To cite this version:

Romain Cosset. Applications des fonctions thêta à la cryptographie sur courbes hyperelliptiques..

Cryptographie et sécurité [cs.CR]. Université Henri Poincaré - Nancy I, 2011. Français. �tel-00642951�

(2)

UFR STMIA Laboratoire: LORIA

Applications des fonctions thˆ eta ` a la cryptographie sur courbes

hyperelliptiques

TH` ESE

pr´ esent´ ee et soutenue publiquement le lundi 7 novembre pour l’obtention du

Doctorat de l’universit´ e Henri Poincar´ e – Nancy 1

(sp´ ecialit´ e informatique)

par

Romain Cosset

Composition du jury

Rapporteurs : Fran¸ cois Morain Prof. ´ Ecole polytechnique

Kamal Khuri-Makdisi Prof. American University of Beirut Examinateurs : Sylvain Lazard DR Inria (Loria)

Dominique M´ ery Prof. Universit´ e Nancy 1 Jean-Fran¸ cois Mestre Prof. Universit´ e Paris 7

Frederik Vercauteren Katholieke Universiteit Leuven Directeur : Guillaume Hanrot Prof. ENS Lyon

Co-directeur : Emmanuel Thom´ e CR Inria (Loria)

Laboratoire Lorrain de Recherche en Informatique et ses Applications — UMR 7503

(3)
(4)

Depuis le milieu des ann´ ees 1980, les vari´ et´ es ab´ eliennes ont ´ et´ e abondamment utilis´ ees en crypto- graphie ` a cl´ e publique: le probl` eme du logarithme discret et les protocoles qui s’appuient sur celles-ci permettent le chiffrement asym´ etrique, la signature, l’authentification. Dans cette perspective, les jaco- biennes de courbes hyperelliptiques constituent l’un des exemples les plus int´ eressants de vari´ et´ es ab´ e- liennes principalement polaris´ ees.

L’utilisation des fonctions thˆ eta permet d’avoir des algorithmes efficaces sur ces vari´ et´ es. En particulier nous proposons dans cette th` ese une variante de l’algorithme ECM utilisant les jacobiennes de courbes de genre 2 d´ ecomposables. Par ailleurs, nous ´ etudions les correspondances entre les coordonn´ ees de Mumford et les fonctions thˆ eta. Ce travail a permis la construction de lois d’additions compl` etes en genre 2.

Finalement nous pr´ esentons un algorithme de calcul d’isog´ enies entre vari´ et´ es ab´ eliennes.

La majorit´ e des r´ esultats de cette th` ese sont valides pour des courbes hyperelliptiques de genre quel- conque. Nous nous sommes cependant concentr´ e sur le cas du genre 2, le plus int´ eressant en pratique.

Ces r´ esultats ont ´ et´ e impl´ ement´ es dans un package Magma appel´ e AVIsogenies .

Mots-cl´ es: Cryptographie, courbes hyperelliptiques, vari´ et´ es ab´ eliennes, fonctions thˆ eta, factorisation, isog´ enies

Abstract

Since the mid 1980’s, abelian varieties have been widely used in cryptography: the discrete logarithm problem and the protocols that rely on it allow asymmetric encryption, signatures, authentification... For cryptographic applications, one of the most interesting examples of principally polarized abelian varieties is given by the Jacobians of hyperelliptic curves.

The theory of theta functions provides efficient algorithms to compute with abelian varieties. In particular, using decomposable curves of genus 2, we present a generalization of the ECM algorithm. In this thesis, we also study the correspondences between Mumford coordinates and theta functions. This led to the construction of complete addition laws in genus 2. Finally we present an algorithm to compute isogenies between abelian varieties.

Most of the results of this thesis are valid for hyperelliptic curves of arbitrary genus. More specifically we emphasize on genus 2 hyperelliptic curves, which is the most relevant case in cryptography. These results have been implemented in a Magma package called AVIsogenies .

Keywords: Cryptography, hyperelliptic curves, abelian varieties, theta functions, factorization, isogenies

(5)
(6)

Tout d’abord je remercie mes deux encadrants de th` ese Guillaume Hanrot et Emmanuel Thom´ e.

Emmanuel s’est toujours montr´ e tr` es disponible aussi bien pour m’aider dans mes recherches que pour relire et corriger mes articles. La pr´ esentation du chapitre 5 de cette th` ese lui doit beaucoup. Par ailleurs Emmanuel a pass´ e beaucoup de temps ` a m’apprendre ` a programmer et plus g´ en´ eralement ` a m’apprendre l’informatique. Guillaume a toujours su se placer exactement au bon niveau pour m’expliquer les maths.

Je lui dois ´ egalement beaucoup du point de vue administratif, en commen¸ cant par toutes les d´ emarches qu’il a faites pour ma bourse de th` ese.

Merci ` a Fran¸cois Morain et Kamal Khuri-Makdisi d’avoir accept´ e la lourde tˆ ache de relire ce manuscrit de th` ese. Leurs remarques m’ont permis de corriger de nombreuses erreurs et m’ont permis (j’esp` ere) d’am´ eliorer la qualit´ e et la clart´ e du document. Je remercie Jean-Fran¸ cois Mestre et Frederik Vercauteren dont les travaux m’ont beaucoup inspir´ e. Je me rappelle encore du temps pass´ e sur certains de leurs articles. Je remercie Sylvain Lazard qui a ´ et´ e mon r´ ef´ erent pendant ces trois ann´ ees de th` ese. Merci ` a Dominique M´ ery qui en plus d’avoir accept´ e de s’int´ eresser ` a ma th` ese a ´ et´ e un coll` egue au cours de mon monitorat ` a l’ ESIAL .

Je tiens ` a remercier deux personnes qui m’ont beaucoup apport´ e au cours de cette th` ese. Tout d’abord, J´ erˆ ome G¨ artner avec qui j’ai fait mes ´ etudes ` a Cachan et ` a Jussieu. Bien qu’il ne soit cit´ e qu’une fois dans cette th` ese (ici), j’ai beaucoup travaill´ e avec lui : il m’expliquait les maths, et moi je les codais. Je le remercie d’avoir pens´ e ` a moi pour tester cette conjecture de Darmon. Cela m’a permis de travailler sur diff´ erents algorithmes de th´ eorie alg´ ebrique des nombres. Merci J´ erˆ ome d’avoir pris le temps de r´ epondre

`

a mes questions et surtout d’avoir su te mettre ` a mon niveau pour m’expliquer la th´ eorie.

La contribution de Guillaume Batog est plus discr` ete mais n´ eanmoins aussi importante. Il m’a d´ ebloqu´ e

`

a plusieurs reprises et ses questions th´ eoriques m’ont aussi oblig´ e ` a bien comprendre un certain nombre de points. Par ailleurs, et c’est sans doute le plus important, nos pauses quotidiennes m’ont sans aucun doute permis de garder ma sant´ e mentale au cours de ces 3 ans de th` ese.

Continuons les remerciements par l’´ equipe CACAO puis CARAMEL . Plus que des coll` egues de travail, ces personnes sont devenus des amis. C’est grˆ ace ` a Pierrick Gaudry dont j’ai suivi le cours de DEA que je me suis lanc´ e dans cette th` ese : « viens ` a Nancy, c’est cool et on te trouvera un sujet sympa

»... Il a toujours pris le temps de r´ epondre ` a mes questions et de m’expliquer avec les mains les outils math´ ematiques.

Merci ` a Damien Robert de m’avoir expliqu´ e la th´ eorie alg´ ebrique des fonctions thˆ eta ainsi que tout son travail sur le calcul d’isog´ enies. J’ai eu la chance de partager mon bureau avec Ga¨ etan Bisson. La biblioth` eque AVIsogenies a ´ et´ e le fruit d’une collaboration avec eux, je les remercie de m’avoir pouss´ e

`

a coder mes r´ esultats. C’est toujours agr´ eable de voir que la th´ eorie fonctionne en pratique.

Paul Zimmermann m’a beaucoup apport´ e dans la compr´ ehension de l’algorithme ECM . En particulier, il m’a expliqu´ e les subtilit´ es de GMP-ECM et c’est en partie grˆ ace ` a lui que j’ai pu ´ ecrire GMP-HECM . Merci ´ egalement ` a Nicolas Estibals, J´ er´ emie Detrey, R˘ azvan B˘ arbulescu, Alexander Kruppa, Lionel Muller pour toutes les discussions aux pauses caf´ e ou devant une bi` ere.

Durant ma th` ese j’ai eu la chance de pouvoir travailler avec David Lubicz ` a Rennes. Ce fut des moments tr` es enrichissants, l’enthousiasme de David est tr` es communicatif.

J’ai pass´ e 3 mois ` a Oldenburg et je tiens ` a remercier toutes les personnes qui m’ont si bien accueilli l` a-bas et en particulier Florian Hess et Osmanbey Uzunkol. Quel dommage de ne pas avoir r´ eussi ` a utiliser les thˆ eta constantes pour trouver de meilleurs invariants.

Je tiens ` a remercier ´ egalement diverses personnes que j’ai embˆ et´ ees avec mes questions. Merci donc ` a Christophe Ar` ene, Christophe Ritzenthaler, David Kohel, David Gruenwald, Ben Smith, Vanessa Vitse...

Evidement, il n’y a pas que la science dans la vie. Je remercie donc ma famille et mes amis d’avoir ´ r´ eussi ` a me supporter. J’ai une pens´ ee particuli` ere pour Tof, Coralie, ´ Emeline, Poulpe, Elsa, Corentin, Ramla, St´ ephane, Chicco, Hyperion, Augustin, Mra et toutes les autres personnes que j’aie pu oublier.

Finalement je remercie Am´ elie Thom´ e, sans doute une des rares personnes qui aura appr´ eci´ e le cha-

pitre 5. Je regrette de n’avoir pas scann´ e ses illustrations.

(7)
(8)

Table des mati` eres

Introduction

Chapitre 1

Cryptographie ` a cl´ e publique

1.1 Cryptographie bas´ ee sur le logarithme discret . . . . 3

1.1.1 Exemples de protocoles . . . . 3

1.1.2 Groupes pour la cryptographie bas´ ee sur le logarithme discret . . . . 4

1.1.3 Couplages . . . . 6

1.2 Utilisation des isog´ enies . . . . 8

Chapitre 2 Vari´ et´ es ab´ eliennes 2.1 D´ efinitions et premi` eres propri´ et´ es . . . . 9

2.1.1 Groupes alg´ ebriques et vari´ et´ es ab´ eliennes . . . . 9

2.1.2 Isog´ enies, vari´ et´ e duale et polarisation . . . . 11

2.1.3 Consid´ erations arithm´ etiques . . . . 14

2.2 Courbes hyperelliptiques . . . . 16

2.2.1 Forme de Weierstraß . . . . 16

2.2.2 Jacobiennes de courbes . . . . 18

2.2.3 Calcul dans les jacobiennes de courbes hyperelliptiques . . . . 21

2.3 Vari´ et´ es analytiques . . . . 22

2.3.1 Liens avec les vari´ et´ es alg´ ebriques . . . . 22

2.3.2 Tores complexes . . . . 23

2.3.3 Application d’Abel-Jacobi . . . . 27

Chapitre 3 Fonctions thˆ eta 3.1 Propri´ et´ es th´ eoriques . . . . 33

3.1.1 D´ efinitions et propri´ et´ es . . . . 33

3.1.2 Syst` emes de coordonn´ ees . . . . 35

3.1.3 Liens avec les vari´ et´ es ab´ eliennes . . . . 43

3.1.4 Liens avec les courbes hyperelliptiques . . . . 46

(9)

3.1.5 Action du groupe symplectique . . . . 48

3.2 Arithm´ etique . . . . 52

3.2.1 Formules d’addition . . . . 52

3.2.2 En niveau 2 . . . . 54

3.2.3 Formules d’additions diff´ erentielles . . . . 60

3.2.4 Complexit´ e . . . . 66

3.3 Coordonn´ ees de Mumford versus coordonn´ ees thˆ eta . . . . 69

Chapitre 4 Factorisation d’entiers 4.1 Multiplication et factorisation . . . . 71

4.2 L’algorithme ECM . . . . 73

4.2.1 Contexte . . . . 73

4.2.2 Description g´ en´ erale de l’algorithme ECM . . . . 74

4.2.3 Am´ eliorations de l’algorithme ECM . . . . 75

4.3 Algorithme HECM . . . . 77

4.3.1 G´ en´ eralisation d’ ECM avec des vari´ et´ es ab´ eliennes . . . . 77

4.3.2 Courbes d´ ecomposables . . . . 79

4.3.3 Param´ etrisation . . . . 81

4.3.4 Etude de la torsion ´ . . . . 85

4.3.5 Petits param` etres . . . . 86

4.4 GMP-HECM . . . . 87

4.4.1 Un exemple num´ erique . . . . 87

4.4.2 Impl´ ementation . . . . 87

4.4.3 R´ esultats et comparaisons . . . . 88

4.5 Pistes de recherche . . . . 90

Chapitre 5 Morphismes 5.1 Etude du plongement de Jac(C) dans ´ P

4 g−1

avec les fonctions thˆ eta . . . . 92

5.1.1 Fonctions thˆ eta tordues . . . . 92

5.1.2 Propri´ et´ es des constantes f

A

. . . . 95

5.1.3 Les fonctions Y

S

. . . 116

5.1.4 Calcul des constantes s

S

. . . 120

5.1.5 R´ esum´ e des parties pr´ ec´ edentes . . . 125

5.1.6 Choix des constantes . . . 125

5.2 Des fonctions thˆ eta vers les polynˆ omes de Mumford . . . 127

5.2.1 En niveau 4 . . . 128

5.2.2 En niveau 2 . . . 129

5.2.3 Cas des diviseurs Θ . . . 132

5.3 Des polynˆ omes de Mumford vers les fonctions thˆ eta . . . 133

5.3.1 Cas des diviseurs g´ en´ eriques . . . 133

(10)

5.4 D´ etails d’impl´ ementation . . . 138

5.5 Exemple d’application : lois d’additions compl` etes en genre 2 . . . 139

Chapitre 6 Formules ` a la Thomae 6.1 M´ ethode analytique . . . 145

6.1.1 Id´ ee g´ en´ erale . . . 145

6.1.2 Genre 1 . . . 147

6.1.3 Niveau (2, 2) pour le genre g . . . 149

6.2 Extraction de racines . . . 150

6.3 Passage par les fonctions thˆ eta de niveau (2, 2) . . . 152

Chapitre 7 Calcul d’isog´ enies 7.1 Calcul de `-isog´ enies en changeant de niveaux . . . 156

7.1.1 En descendant de niveau . . . 156

7.1.2 Calcul de l’isog´ enie duale (en montant de niveau) . . . 157

7.1.3 Isog´ enies de noyau fix´ e . . . 159

7.2 Formules de changement de niveaux et applications . . . 160

7.2.1 Changer de niveau en restant sur la mˆ eme vari´ et´ e . . . 160

7.2.2 Calcul de `-isog´ enies sans changer de niveau . . . 161

7.3 Calcul de 2-isog´ enies . . . 167

7.4 Isog´ enies entre courbes hyperelliptiques en genre 2 . . . 168

7.4.1 Th´ eorie . . . 169

7.4.2 Calculs explicites . . . 171 Perspectives

Bibliographie 177

(11)
(12)

Introduction

Depuis le milieu des ann´ ees 1980, les vari´ et´ es ab´ eliennes ont ´ et´ e abondamment utilis´ ees en cryptogra- phie ` a cl´ e publique : le probl` eme du logarithme discret et les protocoles qui reposent dessus permettent le chiffrement asym´ etrique, la signature, l’authentification... Nous commen¸ cons par pr´ esenter ces appli- cations des vari´ et´ es ab´ eliennes dans le premier chapitre et nous les d´ efinissons math´ ematiquement dans le deuxi` eme chapitre.

Les fonctions thˆ eta fournissent des coordonn´ ees int´ eressantes pour utiliser les vari´ et´ es ab´ eliennes. Nous les ´ etudierons au chapitre 3. En particulier, diff´ erentes bases de fonctions thˆ eta peuvent ˆ etre utilis´ ees suivant les applications. Dans ce chapitre, nous d´ ecrivons ´ egalement comment utiliser ces fonctions pour avoir une arithm´ etique efficace.

Il est possible de g´ en´ eraliser l’algorithme de factorisation ECM en utilisant des vari´ et´ es ab´ eliennes au lieu des courbes elliptiques. Nous pr´ esentons dans le chapitre 4 un algorithme utilisant des courbes hyperelliptiques de genre 2. Notre impl´ ementation en C de cet algorithme est ´ egalement compar´ ee aux impl´ ementations de ECM existantes.

Nous avons deux syst` emes de coordonn´ ees sur les jacobiennes de courbes hyperelliptiques : les coor- donn´ ees de Mumford et les coordonn´ ees thˆ eta. Le chapitre 5 prouve des formules permettant de passer d’une repr´ esentation ` a l’autre. Des r´ esultats partiels avaient ´ et´ e obtenus par Mumford [Mum84], Van Wamelen [vW98] et Gaudry [Gau07]. Nous avons g´ en´ eralis´ e et compl´ et´ e ces travaux. Finalement, nous appliquons ces morphismes ` a l’obtention de lois d’additions k-compl` etes en genre 2. Cette application a

´ et´ e r´ ealis´ ee en collaboration avec Christophe Ar` ene.

Le chapitre suivant g´ en´ eralise les formules de Thomae [Tho70]. Le but de ce travail commun avec David Lubicz est de pouvoir relier l’´ equation de Weierstraß d’une courbe hyperelliptique et le plongement de la jacobienne de la courbe dans P

n

g−1

donn´ e par les fonctions thˆ eta de niveau n.

Le dernier chapitre de cette th` ese est consacr´ e au calcul d’isog´ enies entre vari´ et´ es ab´ eliennes. Nous com- men¸ cons par pr´ esenter les travaux de Lubicz et Robert [LR10a] permettant de calculer des `

2

-isog´ enies entre vari´ et´ es ab´ eliennes principalement polaris´ ees. En collaboration avec Damien Robert, nous avons trouv´ e des formules permettant de « changer de niveaux sans isog´ enie ». Combin´ ees aux r´ esultats pr´ e- c´ edents, cela permet le calcul de `-isog´ enies. Le cas particulier des courbes hyperelliptiques de genre 2 y est ´ egalement ´ etudi´ e. Signalons qu’avec Gaetan Bisson et Damien Robert, nous avons programm´ e ces formules dans une librairie Magma appel´ ee AVIsogenies .

Les principaux r´ esultats de cette th` ese sont :

– L’´ etude th´ eorique et pratique de l’algorithme de factorisation HECM .

– Des formules permettant de passer des coordonn´ ees de Mumford aux fonctions thˆ eta et inversement.

– L’utilisation des morphismes pour obtenir des lois d’addition compl` etes dans les jacobiennes de courbes hyperelliptiques de genre 2.

– Une g´ en´ eralisation des formules de Thomae et l’extraction de racines dans ces formules.

– Une m´ ethode pour calculer des `-isog´ enies entre vari´ et´ es ab´ eliennes et en particulier entre courbes hyperelliptiques de genre 2.

– La librairie AVIsogenies permettant de manipuler les vari´ et´ es ab´ eliennes et en particulier de

calculer des `-isog´ enies entre jacobiennes de courbes hyperelliptiques.

(13)
(14)

Chapitre 1

Cryptographie ` a cl´ e publique

Les protocoles de cryptographie ` a cl´ e publique reposent sur la difficult´ e de r´ esoudre des probl` emes math´ ematiques. Deux des probl` emes les plus utilis´ es sont

– la factorisation d’entiers, – le logarithme discret.

Nous d´ etaillons la cryptographie bas´ ee sur le probl` eme du logarithme discret dans la premi` ere section.

Dans la section 1.2, nous parlons des isog´ enies qui ont de nombreuses applications en cryptographie bas´ ee sur les vari´ et´ es ab´ eliennes.

Dans ce chapitre, nous ne d´ etaillons pas les d´ efinitions et propri´ et´ es math´ ematiques des diff´ erents objets. En particulier, les vari´ et´ es ab´ eliennes et les isog´ enies seront d´ efinies au chapitre 2. Nous nous concentrons sur l’utilisation de ces objets, en particulier en cryptographie.

1.1 Cryptographie bas´ ee sur le logarithme discret

Rappelons la d´ efinition du logarithme discret sur les groupes g´ en´ eriques

D´ efinition 1.1.1. Soit G = (hgi, ×) un groupe cyclique (not´ e multiplicativement) engendr´ e par un ´ el´ e- ment g d’ordre n. Un ´ el´ ement x de G est une puissance de g : il existe donc un entier k de Z /n Z tel que x = g

k

. L’entier k est appel´ e le logarithme discret de x en base g et est not´ e dlog

g

(x).

Nous commen¸ cons par pr´ esenter diff´ erents protocoles reposant sur le logarithme discret puis nous discutons de diff´ erents groupes sur lesquels les impl´ ementer. Dans la section 1.1.3, nous pr´ esentons som- mairement les couplages qui permettent de cr´ eer de nouveaux protocoles.

1.1.1 Exemples de protocoles

Diffie et Hellman [DH76] ont propos´ e le protocole suivant qui permet ` a deux personnes, Alice et Bob, de se mettre d’accord sur un secret commun. Nous supposons qu’ils disposent d’un canal de communication sans erreur mais non s´ ecuris´ e. C’est-` a-dire que les messages ne sont pas modifi´ es lors de la transmission mais qu’une autre personne peut intercepter leurs communications.

Algorithme 1 Protocole d’´ echange de cl´ es Diffie-Hellman

1:

Alice et Bob se mettent d’accord sur un groupe cyclique G engendr´ e par un ´ el´ ement g.

2:

Alice choisit un entier a et envoie g

a

` a Bob.

3:

Bob choisit un entier b et envoie g

b

` a Alice.

4:

Alice et Bob calculent g

ab

Alice peut calculer g

ab

sans connaˆıtre b en calculant (g

b

)

a

. R´ eciproquement, Bob calcule (g

a

)

b

. Quel-

qu’un qui a intercept´ e les communications connaˆıt les ´ el´ ements g

a

et g

b

. Il ne peut pas retrouver g

ab

si le

probl` eme de Diffie-Hellman est difficile.

(15)

D´ efinition 1.1.2. Le probl` eme de Diffie-Hellman (calculatoire) est : ´ etant donn´ es un groupe cyclique engendr´ e par un ´ el´ ement g et deux ´ el´ ements g

a

et g

b

du groupe, calculer l’´ el´ ement g

ab

.

Le probl` eme de Diffie-Hellman d´ ecisionnel est de distinguer la donn´ ee (g, g

a

, g

b

, g

ab

) d’une donn´ ee al´ ea- toire (g, g

a

, g

b

, g

c

).

Le probl` eme de Diffie-Hellman n’est pas plus difficile que celui du logarithme discret. En effet il suffit

`

a un attaquant de calculer le logarithme discret de g

a

et g

b

en base g pour obtenir les entiers a et b et alors de calculer g

ab

pour r´ esoudre le probl` eme de Diffie-Hellman. Les deux probl` emes de Diffie-Hellman ne sont pas ´ equivalents. Par exemple dans les groupes ´ equip´ es de couplages (voir section 1.1.3), le probl` eme de Diffie-Hellman d´ ecisionnel est facile tandis que le calculatoire est suppos´ e difficile.

Le chiffrement ElGamal [ElG85] est un protocole de chiffrement ` a cl´ e publique bas´ e sur le logarithme discret. Alice choisit un groupe cyclique G = hg, ∗i o` u le logarithme discret est difficile. Elle choisit un entier x entre 1 et #G et calcule h = g

x

. La cl´ e publique d’Alice est alors, (G, h) et sa cl´ e priv´ ee x.

Algorithme 2 Chiffrement ElGamal

Entr´ ee: Bob veut envoyer le message m ∈ G ` a Alice.

1:

Bob choisit un ´ el´ ement y de G.

2:

Bob calcule g

y

et m h

y

.

3:

return Bob envoie (g

y

, m h

y

) ` a Alice

Pour d´ echiffrer un message (c

1

, c

2

), il suffit ` a Alice de calculer c

2

/c

x1

. La s´ ecurit´ e du protocole repose sur le probl` eme de Diffie-Hellman calculatoire. En effet, si un attaquant peut calculer g

xy

` a partir des donn´ ees publiques, il peut retrouver le message. Si le probl` eme de Diffie-Hellman d´ ecisionnel est difficile alors le chiffrement ElGamal est s´ emantiquement sˆ ur (il r´ esiste ` a des attaques IND-CPA-1 ).

1.1.2 Groupes pour la cryptographie bas´ ee sur le logarithme discret

Dans ( Z /n Z , +), le calcul du logarithme discret est trivial. En effet, si g = 1 alors dlog

1

(x) = x. Plus g´ en´ eralement, si g est un g´ en´ erateur de Z /n Z alors il est premier ` a n et l’algorithme d’Euclide ´ etendu fournit un inverse u de g modulo n. Nous avons alors dlog

g

(x) = xu. Asymptotiquement, ce calcul est quasi-lin´ eaire en la taille du groupe.

Le groupe des ´ el´ ements inversibles d’un corps fini F

q

est un groupe cyclique d’ordre q − 1 [Ser70, th´ eor` eme I.2]. D’apr` es [Odl99], la complexit´ e du calcul du logarithme discret dans ce groupe est asymp- totiquement sous-exponentielle : elle est en L

q

1

3

; c o` u

L

n

[α; c] = exp c log(n)

α

log(log(n))

1−α

.

Cette complexit´ e est approximativement la mˆ eme que celle du meilleur algorithme connu de factorisation.

L’algorithme de Pohlig-Hellman [PH78] permet de transformer le calcul du logarithme discret dans un groupe de cardinal compos´ e en des calculs de logarithmes discrets dans des sous-groupes plus petits.

Soit G un groupe de cardinal

#G = p

α11

. . . p

αkk

.

La premi` ere ´ etape de l’algorithme est de se ramener ` a calculer k logarithmes discrets dans les sous-groupes de cardinaux p

αii

:

G −→ G [p

α11

] × . . . × G [p

αkk

]

h 7−→

h n

/

p

α11

, . . . , h n

/

p

αkk

Nous devons r´ esoudre le logarithme discret de h

n/pαii

dans le groupe G [p

αii

] engendr´ e par g

n/pαii

. Le

logarithme discret de h s’obtient alors par le th´ eor` eme des restes chinois.

(16)

Soit maintenant un groupe G de cardinal p

α

une puissance d’un nombre premier. Nous d´ eterminons la d´ ecomposition en base p de dlog

g

(h) par l’algorithme 3. Nous avons α logarithmes discrets ` a calculer dans le groupe hg

pα−1

, ∗i qui est d’ordre p premier.

Dans le cas g´ en´ eral d’un groupe G g´ en´ erique de cardinal premier, la complexit´ e du calcul du logarithme discret est exponentielle. L’algorithme rho de Pollard, de complexit´ e O(#G), est le meilleur connu.

Algorithme 3 Logarithme discret dans un groupe d’ordre p

α

Entr´ ee: Un groupe G = hg, ∗i de cardinal p

α

et un ´ el´ ement h dans G.

Sortie: Le logarithme discret dlog

g

(h) de h en base g.

1:

Calculer ˆ g = g

pα−1

. {Le groupe engendr´ e par ˆ g est d’ordre p}

2:

Calculer a

0

, le logarithme discret de h

pα−1

en base ˆ g.

3:

Poser ˆ h = hg

−a0

.

4:

for i = 1 to α − 1 do

5:

Calculer a

i

, le logarithme discret de ˆ h

pα−i−1

en base ˆ g.

6:

Poser ˆ h = ˆ hg

−aipi

.

7:

end for

8:

return dlog

g

(h) := P

α−1 i=0

a

i

p

i

Les vari´ et´ es ab´ eliennes fournissent des groupes int´ eressants pour la cryptographie bas´ ee sur le lo- garithme discret. En particulier, les courbes elliptiques (genre 1) et les jacobiennes de courbes hyper- elliptiques de genre 2 sont, en g´ en´ eral, des groupes pour lesquels nous ne connaissons pas de meilleur algorithme que Pollard rho.

Les conditions suppl´ ementaires que doivent v´ erifier ces groupes sont d’ˆ etre de cardinal premier (ou de contenir un sous-groupe premier d’indice faible), d’ˆ etre d´ efini sur un corps premier F

p

ou sur une extension premi` ere de F

2

ou F

3

... ´ Etant donn´ ee une courbe, il est facile de tester ces diverses conditions qui ne sont donc pas tr` es contraignantes.

Il existe des algorithmes plus efficaces que Pollard rho pour r´ esoudre le logarithme discret dans les jacobiennes de courbes de genre sup´ erieur (plus grand que 3). Ces algorithmes reposent sur des m´ ethodes de crible. On pourra consulter [Eng08] pour plus de d´ etails sur les diff´ erentes m´ ethodes utilis´ ees.

L’id´ ee principale [ADH94] consiste ` a d´ ecrire une base « agr´ eable » de friabilit´ e. De nombreuses per- sonnes ont travaill´ e pour adapter cet algorithme selon deux directions privil´ egi´ ees : fixer le genre de la courbe et faire tendre le cardinal du corps vers l’infini ou faire tendre le genre vers l’infini. R´ esoudre le logarithme discret dans les jacobiennes de courbes de genre sup´ erieur est int´ eressant pour utiliser la m´ e- thode de descente de Weil. Cette derni` ere permet de transformer la r´ esolution du probl` eme du logarithme discret dans une courbe elliptique sur une extension compos´ ee ` a la r´ esolution de ce probl` eme dans la jacobienne d’une courbe hyperelliptique sur un sous-corps.

Soit C une courbe hyperelliptique de genre g fix´ e sur un corps fini F

q

. Nous pouvons rajouter la condition que la jacobienne de la courbe est un groupe cyclique car sinon le logarithme discret y est plus facile. Les auteurs de [GTTD07] montrent que le logarithme discret dans Jac(C) peut ˆ etre r´ esolu par un algorithme probabiliste de complexit´ e O

q

2−2g

. L’algorithme g´ en´ erique ´ etant en O q

g2

, d` es le genre 3 cet algorithme est plus efficace que l’algorithme g´ en´ erique.

Le mod` ele de la courbe joue ´ egalement un rˆ ole important : Diem [Die06] a montr´ e que si la courbe admet un mod` ele plan de degr´ e d alors il existe un algorithme permettant de r´ esoudre le logarithme discret dans sa jacobienne en temps O

q

2−d−22

. Ainsi, les courbes non-hyperelliptiques de genre 3 sont isomorphes ` a une quartique plane, et il existe donc un algorithme en O (q). On pourra consulter [DT08]

pour une analyse de ce cas particulier.

Consid´ erons maintenant des mod` eles de courbes dont le genre tend vers l’infini. Prenons une famille de courbe affine plane C

i

∈ F

q

[X, Y ] de genre g

i

. Supposons que les degr´ es des courbes en X et Y soient inclus dans l’intervalle [g

αi

, g

1−αi

] o` u α ∈ [

13

,

23

]. D’apr` es [EGT11], Il existe un algorithme de complexit´ e L

qgi

1

3

; c

(17)

pour r´ esoudre le logarithme discret dans Jac(C

i

). Notons que nous n’avons pas besoin de supposer que le corps de base est fix´ e, il suffit de faire l’hypoth` ese que son cardinal ne grossit pas trop vite par rapport au genre : g

i

≥ log(q

i

)

2

.

Pour des vari´ et´ es ab´ eliennes g´ en´ erales, les algorithmes ont ´ et´ e moins ´ etudi´ es. On pourra consulter [Gau09] qui d´ ecrit un tel algorithme et l’applique ` a la restriction de Weil de courbes elliptiques et hyper- elliptiques sur des extensions de petit degr´ e de corps finis.

1.1.3 Couplages

Les couplages ont d’abord ´ et´ e introduits en cryptographie comme une attaque contre le logarithme discret. Math´ ematiquement la d´ efinition d’un couplage est

D´ efinition 1.1.3. Soient G

1

, G

2

, G

3

trois groupes ab´ eliens finis. Un couplage est une application bili- n´ eaire non d´ eg´ en´ er´ ee de G

1

× G

2

dans G

3

.

Quand G

1

= G

2

, le couplage est dit sym´ etrique.

Cryptographiquement, en plus de la d´ efinition math´ ematique, nous demandons qu’un couplage soit calculable efficacement (c’est-` a-dire en temps polynomial).

Soit A une vari´ et´ e ab´ elienne principalement polaris´ ee sur un corps k et soit m un entier premier ` a la caract´ eristique du corps. Le couplage de Weil e

m

est une application

e

m

: A[m] × A[m] −→ µ

m

(k)

o` u µ

m

(k) d´ esigne le groupe des racines m-i` emes de l’unit´ e de k. En dehors du couplage de Weil, de nom- breux autres couplages existent, par exemple le couplage de Tate. Nous renvoyons ` a [CF05, chapitres 6 et 16] pour plus de d´ etails sur les couplages et leurs calculs. Dans cette th` ese nous utiliserons principalement le couplage de Weil. Au chapitre 6, nous aurons ` a utiliser une application ressemblant au couplage de Tate.

Soient trois groupes cycliques G

i

engendr´ es par des ´ el´ ements g

i

. S’il existe un couplage e : G

1

× G

2

→ G

3

calculable en temps polynomial alors la r´ esolution du logarithme discret dans G

1

et G

2

se r´ eduit en temps polynomial au logarithme discret dans G

3

. En effet,

e g

k1

, g

2

= e (g

1

, g

2

)

k

. Apr` es avoir calcul´ e les couplages e (g

1

, g

2

) et e g

1k

, g

2

, nous sommes amen´ es ` a r´ esoudre le logarithme discret dans G

3

. Cette id´ ee est ` a la base des attaques sur le logarithme discret sur les courbes elliptiques [MOV91, FR94, HSSI99]. Dans ce cas, le groupe G

3

est l’ensemble des ´ el´ ements inversibles d’un corps fini et le logarithme discret y est sous-exponentiel. Le groupe G

2

qui apparaˆıt naturellement n’est pas un groupe cyclique. Il faut alors trouver un algorithme polynomial qui fournit un ´ el´ ement de G

2

rendant le couplage non d´ eg´ en´ er´ e.

Des protocoles bas´ es sur les couplages ont ´ et´ e propos´ es. Citons par exemple un sch´ ema de signature

courte [BLS01] ou le chiffrement bas´ e sur l’identit´ e [BF01]. Supposons que Alice, Bob et Charlie veulent se

mettre d’accord sur un secret commun. En utilisant le protocole classique de Diffie-Hellman, cela peut ˆ etre

r´ ealis´ e en deux tours de communication (en supposant que le choix du groupe G a ´ et´ e fait pr´ ealablement)

comme d´ ecrit dans l’algorithme 4. Joux [Jou00] a propos´ e le protocole 5 permettant de faire cet ´ echange

en n’utilisant qu’un seul tour de communication.

(18)

Algorithme 4 Echange de cl´ ´ e tripartite

1:

Alice, Bob et Charlie se sont mis d’accord un groupe cyclique G = hg, ∗i.

2:

Alice choisit un entier a, Bob choisit un entier b, Charlie choisit un entier c.

3:

Alice calcule g

a

et l’envoie ` a Bob, Bob calcule g

b

et l’envoie ` a Charlie, Charlie calcule g

c

et l’envoie ` a Alice.

4:

Alice calcule (g

c

)

a

et l’envoie ` a Bob, Bob calcule (g

a

)

b

et l’envoie ` a Charlie, Charlie calcule (g

b

)

c

et l’envoie ` a Alice.

5:

Alice calcule (g

bc

)

a

, Bob calcule (g

ac

)

b

, Charlie calcule (g

ab

)

c

.

6:

return Alice, Charlie et Bob sont en possession de la cl´ e g

abc

.

Algorithme 5 Echange de cl´ ´ e tripartite en un tour

1:

Alice, Bob et Charlie ont choisi trois groupes G

i

= hg

i

, ∗i et un couplage e : G

1

× G

2

→ G

3

.

2:

Alice choisit un entier a, Bob choisit un entier b, Charlie choisit un entier c.

3:

Alice calcule et envoie g

1a

` a Bob et g

2a

` a Charlie, Bob calcule et envoie g

1b

` a Charlie et g

b2

` a Alice, Charlie calcule et envoie g

c1

` a Alice et g

2c

` a Bob.

4:

Alice calcule e g

1c

, g

b2

a

, Bob calcule e (g

a1

, g

2c

)

b

, Charlie calcule e g

b1

, g

2a

c

.

5:

return Alice, Charlie et Bob sont en possession de la cl´ e e (g

1

, g

2

)

abc

.

(19)

1.2 Utilisation des isog´ enies

Les isog´ enies sont un outil important pour l’´ etude des vari´ et´ es ab´ eliennes. Elles sont la « bonne » notion de morphismes entre vari´ et´ es ab´ eliennes. Nous les d´ efinirons proprement dans la section 2.1.2 et nous donnerons des algorithmes pour les calculer dans le chapitre 7. Contentons nous de dire que ce sont des morphismes de groupes qui sont calculables.

Le principal int´ erˆ et des isog´ enies est le transfert du logarithme discret d’une vari´ et´ e A initiale o` u ce dernier est difficile dans une vari´ et´ e B o` u nous esp´ erons qu’il soit plus facile. Supposons donc que nous avons une isog´ enie ϕ entre deux vari´ et´ es ab´ eliennes A et B :

ϕ : A −→ B.

Soit g un ´ el´ ement de A d’ordre n et soit x un autre ´ el´ ement de A dont nous voulons calculer le logarithme discret en base g. Nous calculons les images ϕ(x) et ϕ(g) par l’isog´ enie. L’ordre de ϕ(g) dans la vari´ et´ e B divise l’ordre de g dans A. D’apr` es la discussion de la partie 1.1.2, nous pouvons supposer que g est d’ordre un nombre premier. Si g n’appartient pas au noyau de l’isog´ enie, alors ϕ(g) et g ont le mˆ eme ordre. Le logarithme discret de x en base g dans A est donc le mˆ eme que le logarithme discret de ϕ(x) en base ϕ(g) dans B. Il suffit donc de r´ esoudre le logarithme discret dans la vari´ et´ e B .

Un exemple d’utilisation de cette m´ ethode dans le cas de vari´ et´ es ab´ eliennes de dimension 3 est donn´ e par Smith [Smi09]. Nous avons vu que le logarithme discret dans les jacobiennes de courbes hyperelliptiques de genre 3 sur un corps fini F

q

peut ˆ etre r´ esolu en ˜ O

q

43

. Pour les courbes non- hyperelliptiques de genre 3, cette complexit´ e est de ˜ O (q). En utilisant des isog´ enies, Smith montre que pour une certaine proportion de courbes hyperelliptiques, le logarithme discret est attaquable en ˜ O (q).

Deux autres applications importantes des isog´ enies permettent de garantir la s´ ecurit´ e des vari´ et´ es ab´ eliennes utilis´ ees. Dans le cas des courbes elliptiques, les isog´ enies sont un des outils de base de l’am´ elio- ration par Atkin et Elkies de l’algorithme de comptage de points [Sch85, Sch95, Atk92, Elk91]. Rappelons que connaˆıtre le nombre de points sur une vari´ et´ e permet de garantir la s´ ecurit´ e de la vari´ et´ e. On pourra

´

egalement consulter [Gau04] qui pr´ esente les diff´ erents algorithmes de comptage de points.

Par ailleurs les isog´ enies sont utilis´ ees lors du calcul des polynˆ omes de classes [Sut11, GHK

+

06, CKL08], eux-mˆ eme n´ ecessaires pour la m´ ethode CM (multiplication complexe). Cette m´ ethode permet de construire directement des vari´ et´ es ayant un nombre de points donn´ e.

Les isog´ enies de petit degr´ e sont utilis´ ees pour calculer les polynˆ omes modulaires [BLS10]. Un int´ erˆ et de

ces derniers est qu’ils permettent de calculer de nouvelles isog´ enies mais d’un degr´ e sup´ erieur. L’algorithme

de Satoh [Sat00] pour calculer le relev´ e canonique d’une vari´ et´ e ordinaire repose sur la calcul d’une suite

de Verschiebung (isog´ enie contragr´ ediante du Frobenius). Finalement on utilise de mani` ere cruciale les

isog´ enies pour le calcul d’anneaux d’endomorphismes [Koh96, FM02, BS11].

(20)

Chapitre 2

Vari´ et´ es ab´ eliennes

Nous avons vu dans le chapitre pr´ ec´ edent que les vari´ et´ es ab´ eliennes sont des groupes int´ eressants en cryptographie. Nous les ´ etudions maintenant du point de vue math´ ematique.

Dans les chapitres suivants, pour simplifier l’exposition de nos r´ esultats, nous nous placerons princi- palement sur le corps des complexes. En particulier, dans le chapitre 3, nous ne d´ efinirons les fonctions thˆ eta que dans ce cadre. Mˆ eme si, dans la majorit´ e de cette th` ese, nous n’utilisons pas directement les notions th´ eoriques, il est important de d´ efinir les objets proprement. Certaines notions th´ eoriques sont par ailleurs utilis´ ees de mani` ere fondamentale dans la preuve de certains des th´ eor` emes cit´ es.

Nous commen¸ cons donc ce chapitre par pr´ esenter une partie de la th´ eorie g´ en´ erale des vari´ et´ es ab´ e- liennes. Nous introduisons ensuite les jacobiennes de courbes et en particulier celles de courbes hyperel- liptiques. Finalement, nous traitons le cas particulier des vari´ et´ es ab´ eliennes complexes qui sont analyti- quement isomorphes ` a des tores.

Il existe de nombreux ouvrages sur les vari´ et´ es ab´ eliennes. Concernant la th´ eorie g´ en´ erale, citons [Lan59, Mum70, vdGM07, Mil08]. Pour les vari´ et´ es ab´ eliennes sur le corps des complexes rajoutons

´ egalement le livre [BL04].

2.1 D´ efinitions et premi` eres propri´ et´ es

2.1.1 Groupes alg´ ebriques et vari´ et´ es ab´ eliennes

D´ efinition 2.1.1. Soit k un corps, un groupe alg´ ebrique sur k est une vari´ et´ e alg´ ebrique G munie d’un point particulier O

G

∈ G(k) et de deux morphismes

µ : G × G −→ G, ι : G −→ G v´ erifiant

– pour tout P ∈ G, µ(O

G

, P ) = µ(P, O

G

) = P, – pour tout P ∈ G, µ(P, ι(P )) = µ(ι(P ), P ) = O

G

, – pour tout P, Q, R ∈ G, µ(µ(P, Q), R) = µ(P, µ(Q, R)).

Nous demandons de plus que la vari´ et´ e sous-jacente ainsi que les morphismes µ et ι soient d´ efinis sur k.

En pratique cela signifie que G est localement l’ensemble des z´ eros d’un syst` eme polynomial ` a coef- ficients dans k et est muni d’une loi de groupe qui s’exprime localement par des fractions rationnelles ` a coefficients dans k.

Le groupe de Galois Gal k/k

agit naturellement sur les points de G. Soit K/k une extension de corps, l’ensemble G(K) correspond ` a l’ensemble des points qui sont les z´ eros d’un des syst` emes polynomials pr´ ec´ edents et ayant des coordonn´ ees dans K. L’ensemble G(K) est naturellement muni d’une structure de groupe.

Un morphisme de groupe alg´ ebrique φ : G → H est un morphisme de vari´ et´ es alg´ ebriques (c’est-` a-dire

(21)

P + Q Q

P

O

Figure 2.1 – Addition sur la courbe elliptique y

2

= x

3

− x donn´ e localement par des polynˆ omes) qui commute avec la structure de groupe :

φ(O

G

) = O

H

, φ(µ

G

(P, Q)) = µ

H

(φ(P), φ(Q)), φ(ι

G

(P )) = ι

H

(φ(P)).

Soit K le corps de d´ efinition de φ. Un tel morphisme φ d´ efinit naturellement un morphisme de groupe de G(L) dans H (L) pour toute extention de corps L/K. De plus, il commute ` a l’action de Gal K/K

. Notons qu’un groupe alg´ ebrique est une vari´ et´ e lisse (voir par exemple [Sil86, proposition IV.1.5]).

D´ efinition 2.1.2. Une vari´ et´ e ab´ elienne est un groupe alg´ ebrique complet connexe (pour la topologie de Zariski).

Comme un groupe alg´ ebrique est lisse, un point ne peut ˆ etre contenu que dans une seule composante irr´ eductible de la vari´ et´ e. La connexit´ e dans la d´ efinition de vari´ et´ e ab´ elienne implique donc que ce sont des vari´ et´ es alg´ ebriques irr´ eductibles.

Un fibr´ e L sur une vari´ et´ e A d´ efinit un morphisme rationnel de A dans P

degL

. Ce morphisme est un plongement si L est tr` es ample. Toute vari´ et´ e ab´ elienne est alors projective [Mil08, I.6].

Par ailleurs, le groupe sous-jacent ` a une vari´ et´ e ab´ elienne est obligatoirement commutatif [Mum70, p. 41]

d’o` u le nom d’ab´ elien. Une autre cons´ equence de la d´ efinition est qu’une vari´ et´ e ab´ elienne sur C est un groupe de Lie compact [Mil08, I.2].

Exemple 2.1.3. L’exemple le plus simple de vari´ et´ e ab´ elienne est fourni par les courbes elliptiques. Une courbe elliptique sur un corps de caract´ eristique diff´ erente de 2 ou 3 a pour ´ equation y

2

= x

3

+ ax + b avec 4a

3

+ 27b

2

non nul. Elle poss` ede un unique point ` a l’infini not´ e O. Les points sur la courbe forment un groupe avec les lois d’addition g´ eom´ etriques de la figure 2.1.

Pour additionner deux points P

1

et P

2

nous avons les formules rationnelles qui suivent. Si P

1

(respec- tivement P

2

) est le point O alors P

1

+P

2

est le point P

2

(respectivement P

1

). Sinon, posons P

1

= (x

1

, y

1

) et P

2

= (x

2

, y

2

). Si x

2

= x

1

et y

2

= −y

1

alors P

1

+ P

2

est O. L’oppos´ e d’un point P = (x, y) 6= O est le point −P = (x, −y).

Dans le cas g´ en´ eral, posons

λ =

 

 

y

2

− y

1

x

2

− x

1

si x

1

6= x

2

3x

21

+ a 2y

1

si x

1

= x

2

, y

1

= y

2

,

ν =

 

 

y

1

x

2

− y

2

x

1

x

2

− x

1

si x

1

6= x

2

−x

31

+ ax

1

+ 2b 2y

1

si x

1

= x

2

, y

1

= y

2

.

(22)

La droite y = λx + ν passe par P

1

et P

2

(elle est tangente ` a la courbe en P

1

dans le cas o` u P

1

= P

2

). Les coordonn´ ees (x

3

, y

3

) du point P

3

= P

1

+ P

2

sont alors donn´ ees par

x

3

= λ

2

− (x

1

+ x

2

), y

3

= −λx

3

− ν.

La jacobienne d’une courbe de genre g sur un corps k est une vari´ et´ e ab´ elienne de dimension g. Nous d´ efinirons la jacobienne d’une courbe dans la section 2.2.2. Dans le cas des courbes elliptiques (genre 1), la jacobienne est naturellement isomorphe ` a la courbe elle-mˆ eme.

2.1.2 Isog´ enies, vari´ et´ e duale et polarisation

D´ efinition 2.1.4. Un morphisme de vari´ et´ es ab´ eliennes est un morphisme alg´ ebrique entre les deux va- ri´ et´ es qui respecte les lois de groupes.

Un isomorphisme φ entre deux vari´ et´ es ab´ eliennes A et B est un morphisme tel qu’il existe un mor- phisme φ

−1

de B vers A v´ erifiant φ ◦ φ

−1

= Id

B

et φ

−1

◦ φ = Id

A

.

Avec les notation de la d´ efinition, nous avons alors ker(φ) = O

A

et Im(φ) = B.

D´ efinition 2.1.5. Soient A et B deux vari´ et´ es ab´ eliennes. L’ensemble des morphismes entre A et B est not´ e Hom(A, B) ; c’est un groupe pour l’addition.

Dans le cas o` u B = A, l’ensemble des morphismes de A dans A forme un anneau (avec la composition) et est not´ e End(A).

Pour qu’un morphisme alg´ ebrique respecte la loi de groupe, il suffit de supposer qu’il envoie le z´ ero de la premi` ere vari´ et´ e sur le z´ ero de la seconde [Mum70, corollaire 1 p. 43]. Cette propri´ et´ e peut ˆ etre utilis´ ee pour donner une autre d´ emonstration du caract` ere ab´ elien des groupes sous-jacents ` a une vari´ et´ e ab´ elienne [Mum70, corollaire 2 p. 44].

Si φ est un morphisme entre deux vari´ et´ es ab´ eliennes A et B alors Im(φ) est une sous-vari´ et´ e ab´ elienne de B et ker(φ) contient une sous-vari´ et´ e maximale absolument irr´ eductible not´ ee ker(φ)

0

. De plus

dim ker(φ)

0

+ dim (Im(φ)) = dim(A)

Propri´ et´ e 2.1.6. Soit φ un morphisme entre deux vari´ et´ es ab´ eliennes A et B. Deux des propri´ et´ es suivantes impliquent la troisi` eme :

– A et B ont mˆ eme dimension,

– sur la clˆ oture alg´ ebrique, φ est surjectif, – sur la clˆ oture alg´ ebrique, φ est de noyau fini.

Si φ v´ erifie ces propri´ et´ es ont dit que φ est une isog´ enie. Dans le cas o` u B = A, les isog´ enies sont appel´ ees endomorphismes.

Soient A et B deux vari´ et´ es ab´ eliennes sur un corps K et soit φ une isog´ enie de A dans B d´ efinie sur K. Le corps de fonctions K(A) est une extension alg´ ebrique de φ

(K(B)). Nous disons que φ est une isog´ enie s´ eparable si K(A)/φ

(K(B )) est s´ eparable et que φ est ins´ eparable si l’extension est purement ins´ eparable. Le degr´ e d’une isog´ enie est son degr´ e en tant que morphisme de vari´ et´ es alg´ ebriques c’est ` a dire

deg(φ) = [K(A) : φ

K(B)] .

Pour une isog´ enie s´ eparable, c’est le cardinal de son noyau. Pour une isog´ enie ins´ eparable, son noyau est r´ eduit ` a {O

A

} mais ce n’est pas un isomorphisme.

Exemple 2.1.7. La multiplication [n] par un entier n est une isog´ enie de A dans A. Si g est la dimension de A, alors le degr´ e de [n] est n

2g

. Si de plus n est premier ` a la caract´ eristique du corps alors c’est une isog´ enie s´ eparable de degr´ e n

2g

.

Pour une vari´ et´ e sur un corps fini F

q

, le Frobenius (mise ` a la puissance q) est une isog´ enie ins´ eparable.

Nous d´ efinissons l’ensemble des points de n-torsion comme ´ etant le noyau de la multiplication par n

et nous le notons A[n] = ker ([n]). Ces points vivent dans une extension du corps de base de la vari´ et´ e de

degr´ e inf´ erieur ` a n

2g

− 1.

(23)

Propri´ et´ e 2.1.8. Soit A une vari´ et´ e ab´ elienne de dimension g sur un corps alg´ ebriquement clos k de caract´ eristique p. Si n est premier ` a p alors

A[n] ' ( Z/n Z )

2g

.

Si n = p alors il existe un entier r appel´ e le p-rang de la vari´ et´ e tel que 0 ≤ r ≤ g et A[p] ' ( Z/p Z )

r

.

Une vari´ et´ e de p-rang maximal est dite ordinaire.

Soit A une vari´ et´ e ab´ elienne et soit a un ´ el´ ement de A(K), nous d´ efinissons t

a

(·) = µ(a, ·) la translation par a sur A. Nous avons alors les d´ efinitions

Pic(A) = { faisceaux inversibles sur A modulo isomorphisme } , Pic

0

(A) =

L ∈ Pic(A), ∀a ∈ A(k), t

a

L ' L .

Il existe une vari´ et´ e ab´ elienne A

appel´ ee vari´ et´ e duale de A qui param´ etrise les points de Pic

0

(A). Une construction en est donn´ ee par exemple dans [Mil08]. En particulier A

(k) est en bijection avec l’ensemble Pic

0

(A). De plus A

∨∨

est isomorphe ` a la vari´ et´ e A initiale. Nous ne d´ efinissons pas plus en d´ etail la vari´ et´ e duale et nous renvoyons aux diverses r´ ef´ erences cit´ ees au d´ ebut du chapitre. Dans cette th` ese, nous nous int´ eressons ` a des vari´ et´ es ab´ eliennes pour lesquelles la vari´ et´ e et sa duale sont isomorphes.

A toute isog´ ` enie φ : A → B, nous pouvons associer une isog´ enie φ

: B

→ A

d´ efinie par φ

(L) = φ

L.

Cette derni` ere s’appelle l’isog´ enie duale de φ et a pour noyau ker(φ)

, le dual de Cartier de ker(φ) [Mum70, theorem 1 p. 143]. Dans le cas o` u k est alg´ ebriquement clos et le cardinal de ker(φ) ⊂ A[n] est premier ` a la caract´ eristique de k, nous avons

ker (φ

) = Hom (ker(φ), µ

n

(k)) .

o` u µ

n

(k) est l’ensemble des racines n-i` emes de l’unit´ e de k [Mil08, p. 41]. ` A tout faisceau inversible L nous pouvons associer le morphisme

φ

L

:

A(K) −→ Pic

0

(A) a 7−→ t

a

L ⊗ L

−1

D´ efinition 2.1.9. Une polarisation est une isog´ enie entre A et A

qui est de la forme φ

L

sur K o` u L est un fibr´ e ample. Une polarisation est dite principale si c’est un isomorphisme.

Une vari´ et´ e ab´ elienne est dite (principalement) polaris´ ee si elle poss` ede une polarisation (principale).

Les jacobiennes de courbes sont le principal exemple de vari´ et´ es ab´ eliennes principalement polaris´ ees.

D´ efinition 2.1.10. Un morphisme φ entre deux vari´ et´ es ab´ eliennes polaris´ ees A et B est un morphisme respectant les polarisations : si λ et λ

0

sont des polarisations respectivement sur A et sur B et corres- pondant respectivement aux faisceaux inversibles amples L et M alors nous devons avoir φ

M = L, c’est-` a-dire que le diagramme suivant doit ˆ etre commutatif :

A

f

λ

// A

B

λ0

// B

f

OO

Pour tout entier m premier ` a la caract´ eristique du corps, il existe une application naturelle (g´ en´ era- lisant le couplage de Weil dans le cas elliptique) allant de A(k)[m] × A

(k)[m] dans les racines m-i` emes de l’unit´ e µ

m

(k). Combin´ ee ` a une polarisation nous obtenons un morphisme

e

λm

: A(k)[m] × A(k)[m] −→ µ

m

(k).

(24)

Nous abandonnons l’exposant λ car il n’y aura pas d’ambig¨ uit´ e. Mumford [Mum70, 20 p. 183] donne une expression « simple » de e

m

: soit Θ le diviseur associ´ e au fibr´ e L d´ efinissant la polarisation et soit Q un point de m-torsion sur A, posons

D

Q

= T

Q

Θ − Θ ∈ Pic

0

(A)[m]

o` u T

Q

d´ esigne la translation par Q. Il existe alors une fonction g

Q

de diviseur Div(g

Q

) = [m]

D

Q

. D´ efinition 2.1.11. Avec les notations pr´ ec´ edentes,

e

m

:

( A(k)[m] × A(k)[m] −→ µ

m

(k)

(P, Q) 7−→ e

m

(P, Q) :=

gQg(X+P)

Q(X)

o` u X est un ´ el´ ement quelconque de A.

Mumford montre que cette d´ efinition a du sens et que de plus e

m

est un couplage c’est-` a-dire une application bilin´ eaire non d´ eg´ en´ er´ ee.

Soient P et Q deux ´ el´ ements de A[m], nous pouvons les consid´ erer comme des ´ el´ ements de A

∨∨

[m]. Ces deux points sont donc des faisceaux inversibles sur A

correspondant ` a des diviseurs D

P

et D

Q

. Il existe deux fonctions f

P

et f

Q

sur A qui repr´ esentent les diviseurs mD

P

et mD

Q

. Lang [Lan58, th´ eor` eme 6]

montre que couplage de Weil est alors donn´ e par la formule e

m

(P, Q) = f

Q

(P )f

P

(O)

f

P

(Q)f

Q

(O) .

Nous reviendrons sur ce couplage dans le cas particulier des jacobiennes de courbes, page 20, et dans celui des tores complexes, page 31.

Nous avons vu que le noyau d’une isog´ enie entre vari´ et´ es ab´ eliennes est un sous-groupe fini de la vari´ et´ e. Pour les vari´ et´ es principalement polaris´ ees, nous avons la condition suppl´ ementaire

Propri´ et´ e 2.1.12. Soit φ une isog´ enie entre vari´ et´ e ab´ elienne principalement polaris´ ees. Si φ respecte les polarisations alors ker(φ) est un sous-groupe isotrope pour le couplage de Weil sur A.

Soit C un sous-groupe ferm´ e d’une vari´ et´ e ab´ elienne A, il existe une unique vari´ et´ e ab´ elienne B = A/C (` a isomorphisme pr` es) et une isog´ enie φ de A dans B tels que

– ker(φ) = C,

– K(A)/φ

(K(B)) soit s´ eparable.

Soit λ une polarisation sur la vari´ et´ e A de degr´ e premier ` a la caract´ eristique du corps et qui soit associ´ ee

`

a un fibr´ e ample L. Il existe un fibr´ e ample M sur B telle que L = φ

M si et seulement si ker(φ) ⊂ ker(λ) et si le couplage de Weil est trivial sur ker(φ) × ker(φ). Ainsi, pour que l’isog´ enie soit une isog´ enie de vari´ et´ es ab´ eliennes polaris´ ees, il faut supposer que le sous-groupe C est isotrope pour le couplage de Weil et inclus dans ker(λ).

Propri´ et´ e 2.1.13. Toute isog´ enie φ entre deux vari´ et´ es ab´ eliennes A et B se d´ ecompose en un pro- duit π ◦ ψ avec

ψ : A −→ A/ ker(φ) et o` u π est une isog´ enie ins´ eparable.

Cette proposition reste valide si nous rajoutons la notion de polarisation.

Dans cette th` ese nous nous int´ eressons uniquement aux d-isog´ enies s´ eparables de degr´ e premier ` a la caract´ eristique du corps (qui sera syst´ ematiquement diff´ erente de 2). Nous avons alors la d´ ecomposition

d = 2

β2

`

α11

. . . `

αkk

`

a laquelle correspond une d´ ecomposition

φ = φ

β22

φ

α`1

1

. . . φ

α`k

k

o` u φ

`

est une isog´ enie s´ eparable de degr´ e `. Nous avons s´ epar´ e le degr´ e 2 car comme nous le verrons dans

le chapitre 7, les isog´ enies de degr´ e pair se comportent diff´ erement de celles de degr´ e impair.

(25)

Propri´ et´ e 2.1.14. Soient A et B deux vari´ et´ es ab´ eliennes. S’il existe une isog´ enie φ de degr´ e n de A vers B alors il existe une isog´ enie φ ˆ de degr´ e n de B vers A appel´ ee l’isog´ enie contragr´ ediante et qui v´ erifie

φ ◦ φ ˆ = [n]

B

et φ ˆ ◦ φ = [n]

A

.

Deux vari´ et´ es ab´ eliennes sont dites isog` enes s’il existe une isog´ enie entre elles. La relation « ˆ etre isog` ene » est une relation d’´ equivalence sur les vari´ et´ es ab´ eliennes (la propri´ et´ e pr´ ec´ edente permettant de montrer que cette relation est bien sym´ etrique). Cette relation est plus faible que « ˆ etre isomorphe », mais il existe n´ eanmoins une notion d’ « irr´ eductibilit´ e » pour cette relation.

D´ efinition 2.1.15. Une vari´ et´ e ab´ elienne sur un corps k est dite simple si ses seules sous-vari´ et´ es ab´ eliennes sur k sont {0} et elle-mˆ eme. Une vari´ et´ e ab´ elienne est d´ ecomposable si elle n’est pas simple.

Une vari´ et´ e ab´ elienne est dite absolument simple si elle est simple sur la clˆ oture alg´ ebrique du corps o` u elle est d´ efinie.

Soit B ⊂ A une sous-vari´ et´ e ab´ elienne stricte. Alors il existe une vari´ et´ e ab´ elienne C telle que A est isog` ene ` a B × C. De ce fait,

Th´ eor` eme 2.1.16. Toute vari´ et´ e ab´ elienne est isog` ene ` a un produit de vari´ et´ es ab´ eliennes simples. Ces derni` eres sont uniques ` a permutations et ` a isog´ enies pr` es.

2.1.3 Consid´ erations arithm´ etiques

Du point de vue arithm´ etique, nous disposons d’une g´ en´ eralisation du th´ eor` eme de Mordell-Weil : Th´ eor` eme 2.1.17. Soit A une vari´ et´ e ab´ elienne sur un corps de nombres K. Le groupe A(K) est un groupe ab´ elien de type fini.

Ce th´ eor` eme a ´ et´ e prouv´ e par Mordell pour les courbes elliptiques, par Weil dans sa th` ese pour les jacobiennes et par Taniyama dans le cas g´ en´ eral. Notons aussi une extension par Lang et N´ eron pour d’autres type de corps. Une preuve se trouve dans [Ser89].

Pour les corps finis, les conjuctures de Weil (prouv´ ees par Weil dans le cas des vari´ et´ es ab´ eliennes et Deligne dans le cas des vari´ et´ es alg´ ebriques g´ en´ erales) impliquent des bornes sur le nombre de points d’une vari´ et´ e. Soit A une vari´ et´ e alg´ ebrique sur un corps fini F

q

. La fonction zeta associ´ ee ` a A est d´ efinie par

ζ

A

(s) = exp

X

n=1

#A ( F

qn

) n

1 q

ns

! .

La fonction Z

A

(t) ∈ Q [[t]] d´ efinie par ζ

A

(s) = Z

A

(1/q

s

) est plus pratique ` a manipuler. Par d´ efinition, Z

A

(t) = exp

X

n=1

#A ( F

qn

) t

n

n

! .

Le Frobenius (mise ` a la puissance q) fixe uniquement les points de A( F

q

) et donc

#A( F

q

) = deg(π − 1) = χ

π

(1) o` u χ

π

(t) ∈ Z [t] est le polynˆ ome caract´ eristique du Frobenius.

Th´ eor` eme 2.1.18 (conjectures de Weil). Soit A une vari´ et´ e ab´ elienne de dimension g. La fonction Z

A

est rationnelle : il existe des polynˆ omes P

i

` a coefficients dans Q tels que Z

A

(t) = P

1

(t)P

3

(t) . . . P

2g−1

(t)

P

0

(t)P

2

(t) . . . P

2g

(t) .

(26)

La fonction Z

A

v´ erifie l’´ equation fonctionnelle Z

A

1 q

g

t

= ±q

gE2

t

E

Z

A

(t)

o` u E est la caract´ eristique d’Euler de A. Le polynˆ ome caract´ eristique χ

π

(t) ∈ Z [t] du Frobenius s’´ ecrit χ

π

(t) =

2g

Y

i=1

(t − a

i

)

et l’analogue de l’hypoth` ese de Riemann pr´ ecise que les a

i

∈ C sont de norme √

q. Les polynˆ omes P

i

sont alors

P

0

(t) = 1 − t, P

2g

(t) = 1 − q

g

t, P

j

(t) = Y

(1 − α

ij

t) ∀1 ≤ j ≤ 2g − 1 o` u α

ij

parcourent les produits de j racines a

i

distinctes de χ

π

.

L’analogue de l’hypoth` ese de Riemann implique que

| #A ( F

q

) − q

g

− 1 |≤ Cq

g−12

o` u C est une constante. Ce th´ eor` eme montre que le cardinal d’une vari´ et´ e ab´ elienne sur un corps fini F

q

est de l’ordre de q

g

.

Dans le cas o` u la vari´ et´ e est une courbe ou sa jacobienne, les conjectures de Weil impliquent le th´ eor` eme plus pr´ ecis suivant :

Th´ eor` eme 2.1.19. Soit C une courbe de genre g sur un corps fini F

q

,

| #C( F

q

) − (q + 1) |≤ 2g √ q ( √

q − 1)

2g

≤ # Jac

Fq

(C) ≤ ( √

q + 1)

2g

Tate [Tat66] a d´ emontr´ e que deux vari´ et´ es isog` enes ont le mˆ eme polynˆ ome caract´ eristique du Frobe- nius. De ce fait, les fonctions zeta et les cardinaux #A ( F

qm

) sont des invariants de la classe d’isog´ enie de A. Des polynˆ omes unitaires ` a coefficients entiers ayant 2g racines complexes de normes √

q sont appel´ es des polynˆ omes q de Weil. Honda [Hon68] a montr´ e une r´ eciproque au th´ eor` eme de Tate : tout polynˆ ome q de Weil est le polynˆ ome caract´ eristique de l’action du Frobenius sur une certaine vari´ et´ e ab´ elienne. Notons que cette vari´ et´ e ab´ elienne n’est pas forc´ ement principalement polaris´ ee.

Les conjectures de Weil donnent des bornes sur le cardinal des vari´ et´ es ab´ eliennes sur les corps finis.

Nous voulons savoir comment se comporte ce cardinal quand le corps et/ou la vari´ et´ e varie.

Consid´ erons d’abord le cas de la dimension 1, c’est-` a-dire celui des courbes elliptiques. Leur cardinal se trouve dans l’intervalle

q + 1 − 2 √

q, q + 1 + 2 √ q

et nous pouvons consid´ erer la distribution de

#E( F

q

) − (q + 1) 2 √

q .

Deux cas sont int´ eressants : le premier quand q est fix´ e mais que nous consid´ erons toutes les courbes sur F

q

et le deuxi` eme cas quand nous prenons la r´ eduction d’une courbe de Q et que nous faisons varier p.

Fixons une puissance q d’un nombre premier p. La distribution des cardinaux de classes d’isomor- phismes de courbes elliptiques E( F

q

) tend vers celle de Sato-Tate quand q tend vers l’infini [Bir68, Yos73].

Le cardinal des courbes elliptiques sur F

p

a de meilleures propri´ et´ es de divisibilit´ e que les nombres

al´ eatoires. Ainsi Lenstra [Len87, 1.14] et Howe [How93, th. 1] montrent que la probabilit´ e qu’une courbe

(27)

sur F

p

ait un cardinal divisible par un entier n est toujours strictement sup´ erieure ` a celle d’un nombre

« al´ eatoire » autour de p. Plus formellement, dans le cas o` u ` est premier,

#

courbes elliptiques E sur F

p

modulo isomorphismes telles que #E( F

p

) ≡ 0 mod `

=

1

`−1

p + O ` √ p

p ≡ 1 mod `

`

`2−1

p + O ` √ p

p 6≡ 1 mod ` Pour un nombre al´ eatoire la probabilit´ e qu’il soit divisible par ` est de 1/` et est donc strictement inf´ erieure

`

a celle pour les courbes elliptiques. On pourra ´ egalement consulter [CH11]. Remarquons cependant que certaines param´ etrisations (par exemple celle de Suyama page 76) ne permettent pas d’obtenir toutes les courbes sur F

p

. Il serait int´ eressant d’avoir de tels r´ esultats pour des sous-familles de courbes sur F

p

.

Ces propri´ et´ es sont notamment utilis´ ees pour estimer la probabilit´ e de succ` es de l’algorithme ECM (chapitre 4).

Initialement, ces questions ont ´ et´ e ´ etudi´ ees pour avoir des heuristiques sur la conjecture de Sato- Tate. Soit une courbe elliptique E sur Q , consid´ erons les premiers p pour lesquels elle a bonne r´ eduction.

Supposons que la courbe n’est pas ` a multiplication complexe alors la conjecture de Sato-Tate donne la distribution de (#E( F

p

) − (p + 1))/(2 √

p) dans [−1, 1] quand p varie. Cette distribution est semi- circulaire. La conjecture a ´ et´ e prouv´ ee par Clozel, Harris, Taylor, Shepherd-Barron pour certaines familles de courbes.

Dans le cas de courbes de genre plus grand, citons les travaux de Kedlaya et Sutherland [KS10] qui ont g´ en´ eralis´ e ces conjectures aux courbes hyperelliptiques de genre 2.

2.2 Courbes hyperelliptiques

En dimension 1 et 2, toute vari´ et´ e ab´ elienne simple principalement polaris´ ee est la jacobienne d’une courbe hyperelliptique. Comme les cas int´ eressants cryptographiquement sont ceux de dimension petite, il est naturel de s’int´ eresser particuli` erement ` a ces courbes.

En dehors des ouvrages g´ en´ eraux sur les vari´ et´ es ab´ eliennes d´ ej` a cit´ es et qui comportent de nombreux r´ esultats pour les courbes et leurs jacobiennes, on pourra consulter la th` ese de Gaudry [Gau00] et les livres [CF05] et [Sti93]. Ce dernier est int´ eressant car il prend le point de vue des corps de fonctions.

2.2.1 Forme de Weierstraß

D´ efinition 2.2.1. Une courbe hyperelliptique C sur un corps k est un recouvrement s´ eparable de degr´ e 2 de la droite projective π : C → P

1

(k).

Il existe un morphisme non trivial appel´ e involution hyperelliptique qui ´ echange les points dans les fibres de π.

On demande parfois, pour qu’une courbe soit hyperelliptique, que son genre soit sup´ erieur ou ´ egal ` a 2 car dans ce cas le corps k(x) est unique. Nous ne faisons pas cette hypoth` ese ici car les propri´ et´ es qui en d´ ecoulent (voir par exemple [Sti93, VI.2.4]) ne sont pas utilis´ ees. Par cons´ equent, nos r´ esultats sont aussi valides pour les courbes elliptiques (genre 1).

En tant que corps de fonctions, cette d´ efinition se traduit par le fait que k(C) doit ˆ etre une extension s´ eparable de degr´ e 2 de k(x). Il existe donc un ´ el´ ement y dans k(C) tel que k(C) = k(x, y). Nous pouvons supposer que y est un entier quitte ` a le multiplier par un ´ el´ ement de k(x). Il existe donc des polynˆ omes h et f de k[x] tels que y soit une solution de Y

2

+ h(x)Y = f (x). La courbe a donc pour ´ equation (affine)

C : y

2

+ h(x)y = f (x).

Le recouvrement π : C → P

1

(k) est donn´ e par π(x, y) = x et l’involution hyperelliptique ι est d´ efinie par ι :

C −→ C (x, y) 7−→ (x, −y − h(x))

Remarque 2.2.2. Dor´ enavant, nous nous pla¸ cons dans le cas de corps de caract´ eristique diff´ erente de 2.

Références

Documents relatifs

Montrer que si A est une matrice diagonalisable (resp. trigonalisable) alors exp(A) est aussi une matrice

D´ ecrire E(λ) comme solution d’une equation lin´

7 Ce lemme ´ enonce que pour qu’un faisceau coh´ erent globalement engendr´ e G sur une vari´ et´ e propre Y soit ample, il faut et il suffit que sa restriction ` a toute

Il y a (au moins) deux fac¸ons d’approcher le probl`eme de la construction d’un plongement holomorphe d’une courbe elliptique, ou plus g´en´eralement d’un tore complexe V /Γ,

Mais on peut particulariser les fonctions de manière a abaisser le degré; les fonctions impaires de caractéristique nulle, pour lesquelles on ne peut rien (aire, étant mises à

Supposons que D ait au moins quatre facteurs premiers, d'après la proposition 5, l'involution Wp possède au moins huit points fixes, donc si Vy est hyperelliptique, w^ est

La fonction caract´ eristique d’une intersection est la conjonction des fonctions caract´ eristiques :. Exo

La fonction caract´ eristique d’une intersection est la conjonction des fonctions caract´ eristiques :. Exo