Algorithmique des courbes hyperelliptiques et applications à la cryptologie

Définition d’un automorphisme

Définition 1.20 Soit C une courbe de genre g sur un corps K. Un automorphisme K-rationnel de la courbe C est une fonction définie sur K de C vers C tel le que :
la fonction est un morphisme bijectif de variétés algébriques sur K,
la fonction réciproque est aussi un morphisme de variétés algébriques sur K. Il est important de demander à ce que la notion d’automorphisme  soit une notion géométrique (i.e. on regarde la clôture algébrique). En effet, si on prenait une définition non géométrique en imposant seulement que et 1 soient des fonctions rationnelles sur K qui soient des bijections de la courbe C sur K, on aboutirait au problème suivant : si K est un corps fini, alors C est un ensemble ni et toute permutation de cet ensemble pourrait être vue comme un automorphisme en construisant la formule polynomiale correspondante par interpolation. Le groupe d’automorphismes d’une courbe sur un corps ni ne serait alors qu’un groupe de permutations.
Exemple : Soit C la courbe y2 = x7 + 1 définie sur F29 . La fonction (x; y) 7! (16 x; y) est un automorphisme de C d’ordre 7.
Exemple : Soit C la courbe y2 = x5 + 2×3 + x + 1 dénie sur F52 . La fonction Frobenius de F5 dénie par (x; y) 7! (x5 ; y5 ) n’est pas un automorphisme de C, car son inverse n’est pas un morphisme géométrique : on peut l’écrire à l’aide de fractions rationnelles seulement sur une extension finie mais pas sur F52 [Har77, p. 21, Ex 3.2(b)].
En caractéristique nulle, la formule de Hurwitz pour le genre permet de déduire une borne sur le nombre d’automorphismes.
Théorème 1.20 (Hurwitz) Le groupe d’automorphismes d’une courbe de genre g > 2 dénie sur un corps de caractéristique nul le est ni et de cardinal borné par 84(g 1). Dans le cas général, la borne n’est pas aussi bonne. La démonstration du théorème suivant est donnée dans [Sti73].
Théorème 1.21 (Stichtenoth) Le groupe d’automorphismes d’une courbe de genre g > 2 définie sur un corps de caractéristique p est ni et de cardinal borné strictement par 16g4 , à une exception près : la courbe Hermitienne yq + y = xq+1 dont le genre est q(q 1)=2, et le nombre d’automorphismes est q 3 (q 3 + 1)(q 2 1). Dans le cas où la caractéristique du corps est sufisamment grande par rapport au genre, Roquette [Roq70] a montré que la borne d’Hurwitz redevenait vraie.
Théorème 1.22 (Roquette) Le groupe d’automorphismes d’une courbe de genre g > 2 dénie sur un corps de caractéristique p > g + 1 est ni et de cardinal borné par 84(g 1), à une exception près : la courbe yp y = x2 dont le genre est (p 1)=2, et le nombre d’automorphismes est 2p(p2 1).
Théorème de Torelli :Jusqu’ici il n’a été question que d’automorphismes sur une courbe C. Le théorème de Torelli montre que le groupe d’automorphismes de la Jacobienne de C lui est en fait essentiellement isomorphe ; seule l’involution hyperelliptique (dénie à la section suivante) pourra perturber légèrement. Soit C une courbe de genre g, et soit un automorphisme de C. Par linéarité, on peut étendre en un automorphisme sur le groupe des diviseurs de degré 0 sur C. De plus l’ensemble des diviseurs principaux est globalement invariant sous l’action de . On peut nalement étendre à un automorphisme de la Jacobienne de C. Par exemple, si C est une courbe hyperelliptique, l’image de l’involution hyperelliptique est l’involution D 7! D dans la Jacobienne. La réciproque de cette correspondance est assurée par le théorème suivant que l’on peut trouver dans [Mil86].
Théorème 1.23 Soit C une courbe injectée dans sa Jacobienne grâce à un point P . On note f cette injection.

Domaine fondamental en dimension 2

  Dans le cas de la dimension 2, Gottschling [Got59] a donné explicitement les inégalités décrivant le domaine fondamental (cf proposition 1.8). On dispose de plus d’un algorithme permettant de ramener un élément quelconque du demiespace de Siegel dans le domaine fondamental. Cet algorithme est assez proche de celui qui permet de ramener un élément du demi-plan de Poincaré dans le domaine fondamental. L’algorithme repose sur trois lemmes. Le premier tiré de l’article de Gottschling permet de vérifier le point 3 de la dénition pour seulement un nombre ni de matrices, le deuxième montre que l’on peut s’occuper d’abord du point 3 et ensuite des deux points suivants, le troisième est un lemme de nitude qui permet de montrer que l’algorithme termine.

Groupe d’automorphismes d’une courbe de genre 2

Définition 2.1 La Jacobienne d’une courbe C de genre 2 est dite (2,2)-décomposable s’il existe une (2,2)-isogénie entre Jac(C) et un produit de courbes el liptiques E1 E2. On dit alors que E1 est un quotient de degré 2 de Jac(C).
Remarque. Le préfixe (2; 2) signifie que le noyau de l’isogénie a pour structure de groupe Z=2Z Z=2Z. Le lemme suivant est en substance dans [Igu60].
Lemme 2.1 Soit C une courbe de genre 2. Il existe une surjection de l’ensemble des involutions non hyperel liptiques de C sur les classes d’isomorphisme des courbes el liptiques quotients de degré 2 de la Jacobienne de C. En particulier, la Jacobienne de C est (2,2)-décomposable si et seulement si C admet une involution autre que l’involution hyperel liptique.
Démonstration. Soit fi une involution de C non hyperelliptique. La courbe C quotientée par fi est une courbe E de genre 1 [Igu60]. Alors E est un quotient de la Jacobienne de C, et on construit ainsi une application qui à chaque involution non triviale de C associe une classe d’isomorphisme de courbes elliptiques. Cette application est surjective. En effet, soit E une courbe de genre 1 quotient de degré 2 de Jac(C). Il existe alors un morphisme ‘ de degré 2 de C sur E. Pour p un point générique de C, la fibre ‘1 (‘(p)) est de la forme fp; q(p)g, où q est une fraction rationnelle de p. On définit alors l’involution , qui à p associe q(p). La courbe E est de genre 1, donc fi n’est pas l’involution hyperelliptique. Cette construction est l’inverse de la précédente. Le morphisme ‘ n’est pas unique, aussi l’application que l’on construit n’est-elle pas injective

Développement en série de Fourier

   Une forme modulaire est périodique en un certain sens, il est donc naturel de s’intéresser au développement de Fourier découlant de cette périodicité. Même si celui-ci n’est pas aussi simple qu’en dimension 1, il se révèle un outil essentiel pour l’analyse des formes modula

Autres pistes envisageables

   Nous n’avons pas été capable de mener ces calculs jusqu’au bout par cette approche : les séries en trois variables à manipuler deviennent très vite énormes et on atteint les limites de la technologie. Toutefois, les progrès matériels et logiciels laissent supposer que cela sera faisable dans un proche avenir. Un autre moyen de calculer ces équations modulaires pour N = 2 serait d’engendrer suffisamment de couples de courbes isogènes, d’évaluer leurs invariants, puis d’interpoler. Cette phase d’interpolation paraît elle aussi assez difficile avec la technologie actuelle, mais pas complètement irréalisable. Le problème est d’engendrer les courbes. Une piste à suivre (idée de R. Harley) est l’isogénie de Richelot (cf [CF96] et [BM88]) qui est utilisée dans les techniques de descente pour calculer le rang de la Jacobienne sur Q. Il est aussi probable que des exemples de courbes à multiplication complexe ou a multiplication réelle trouvées dans la littérature permettront de ra jouter des conditions. En eet, si une courbe a sa Jacobienne qui est (2; 2)-isogène à elle-même, son anneau d’endomorphisme contiendra un élément de norme 4, ce qui peut aider à deviner la diagonale de l’idéal modulair

Genre 2 : formules de Spallek et de Harley

   Pour un genre fixé, il est possible de dérouler les algorithmes. En particulier, pour le genre 2, cela donne des formules qui restent de taille raisonnable. Les différents cas à envisager correspondent
aux différents poids des diviseurs en entrée ;
aux différents branchements possibles dans les algorithmes de pgcd.
Pour chaque cas il est possible de trouver des formules permettant d’obtenir la somme de deux diviseurs avec peu de calculs. Le fait qu’il soit nécessaire d’envisager une famille de formules plutôt qu’une seule n’est pas vraiment étonnant : si l’on note A la variété abélienne Jacobienne de la courbe, on veut définir une fonction ‘ de AA dans A. Cette fonction est régulière et s’exprime localement par une fraction rationnelle. Toutefois, la variété A est projective et on ne peut pas espérer obtenir une formule valable partout : il faut recouvrir AA par des ouverts et donner une expression différente de ‘ pour chacun des ouverts. Dans le cas des courbes elliptiques, on avait déjà deux formules distinctes pour la somme de deux points différents et le doublement. En genre 2, la quantité de cas à envisager est plus grande (et augmenterait encore en genre supérieur)

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela rapport-gratuit.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction
Partie I Courbes hyperelliptiques et invariants d’Igusa 
1 Jacobiennes de courbes hyperelliptiques 
1.1 Définition de la Jacobienne
1.2 Variétés abéliennes
1.3 Courbes sur les corps finis : conjectures de Weil
1.4 Automorphismes, supersingularité et p-torsion
1.5 Courbes hyperelliptiques
1.6 Courbes hyperelliptiques sur C
1.7 Cas particulier du genre 2
2 Invariants de Jacobiennes (2; 2)-décomposables 
2.1 Groupe d’automorphismes d’une courbe de genre 2
2.2 Cas générique
2.3 Groupe diédral
2.4 Groupe de Klein
2.5 Exemples numériques
2.6 La courbe X1(13)
2.7 Annexe : formulaire
3 Formes modulaires de Siegel : vers des équations modulaires en genre 2 
3.1 Formes modulaires de Siegel
3.2 Application au genre 2
3.3 Équations modulaires en dimension 2
Partie II Algorithmique, calcul de la cardinalité 
4 Loi de groupe dans la Jacobienne d’une courbe hyperelliptique 
4.1 Représentation de Mumford
4.2 Algorithme de Cantor
4.3 Genre 2 : formules de Spallek et de Harley
5 Algorithmes élémentaires pour le calcul de la cardinalité 
5.1 Algorithmes génériques
5.2 Méthodes d’approximation
5.3 Estimation de temps de calcul pour les tailles cryptographiques
6 Cardinalité de courbes particulières 
6.1 Courbes de Koblitz et courbes à multiplication complexe
6.2 Courbes à multiplication réelle
6.3 Opérateur de Cartier-Manin
7 Algorithme de Schoof en genre 2 
7.1 Algorithme de SchoofPilaKampkötter
7.2 Polynômes de division de Cantor
7.3 Recherche efficace d’un élément de `-torsion
7.4 Construction de diviseurs de 2k-torsion
7.5 Combinaison avec d’autres algorithmes, résultats
8 Vers une extension ElkiesAtkin en genre supérieur 
8.1 Construction du polynôme modulaire `
8.2 Exemples en genre 1 et 2
8.3 Motifs de factorisation
8.4 Application au calcul de cardinalité
Partie III Logarithme discret 
9 État de l’art du calcul du log discret dans les Jacobiennes 
9.1 Méthodes pour un groupe générique
9.2 Attaque de Frey-Rück
9.3 Attaque de Rück
9.4 Méthodes sous-exponentielles en genre grand
10 Algorithme sous-exponentiel générique 
10.1 Modèle générique de friabilité
10.2 Algorithme
10.3 Algèbre linéaire creuse
10.4 Complexité
10.5 Groupes non cycliques
11 Calcul d’index en genre petit  
11.1 Notion de diviseur friable
11.2 Algorithme et complexité
11.3 Quelques astuces pour accélérer les calculs
11.4 Résultats pratiques
11.5 Conséquences cryptographiques
12 Calcul d’index en genre 2 
12.1 Description de l’algorithme
12.2 Analyse
12.3 Mise en pratique
13 Application à la Restriction de Weil 
13.1 Restriction de Weil d’une courbe elliptique
13.2 Théorème d’existence d’une courbe hyperelliptique
13.3 Conséquences cryptographiques
Conclusion
Bibliographie

Rapport PFE, mémoire et thèse PDFTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *