• Aucun résultat trouvé

M´ethode arithm´etico-g´eom´etrique pour le comptage de points d’une courbe elliptique d´efinie sur F2

N/A
N/A
Protected

Academic year: 2022

Partager "M´ethode arithm´etico-g´eom´etrique pour le comptage de points d’une courbe elliptique d´efinie sur F2"

Copied!
37
0
0

Texte intégral

(1)

M´ ethode arithm´ etico-g´ eom´ etrique pour le comptage de points d’une courbe elliptique d´ efinie sur F

2d

V. Vitse

UVSQ - MA2

(2)

Plan

Motivations

Approche standard du comptage de points

Algorithmique sur Zq

Approche AGM en caract´eristique 2

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 2 / 37

(3)

Motivations

I Courbes elliptiques naturellement munies d’une loi de groupe o`u le probl`eme du log discret est difficile.

I ECC introduit par Miller (1985) puis Koblitz (1987) : syst`emes cryptographiques sur courbes elliptiques d´efinies sur des corps finis (protocole d’´echange de cl´es de Diffie-Hellman, signatures El Gamal plus courtes...)⇒ trouver des sous-groupes cycliques dont l’ordre est divisible par un grand nombre premier, calcul de cardinalit´e du groupe.

I Algorithmes de comptage de points :

I Shoof (1985) : 1er algo de complexit´e polynomialeO(n4+) puis am´eliorations apport´ees par Elkies et Atkin (SEA), Couveignes...

I En 2000, nouvelle famille d’algorithmes (Satoh, Vercauteren...) : ethodep-adiques, temps enO(n3+) et consommation m´emoire en O(n2)

I Etude de l’algorithme AGM dˆu `a Mestre.

(4)

Plan

Motivations

Approche standard du comptage de points

Algorithmique sur Zq

Approche AGM en caract´eristique 2

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 4 / 37

(5)

Points rationnels

E courbe elliptique ordinaire d´efinie sur Fq,q =pd,p premier, d ∈N Soit Φq∈End(E) leq-i`eme Frobenius,

Propri´et´e

Soit P ∈E un point de la courbe, alors P est rationnel surFq si et seulement si Φq(P) =P.

En particulier,

#E(Fq) = # ker([1]−Φq) = deg([1]−Φq)

⇒ comptage de points ramen´es au calcul de deg([1]−Φq)

(6)

Action de Φ

q

sur le module de Tate

D´efinition

I Anneau des l -adiques :Zl = lim←−Z/lnZ

I Module de Tate : Tl(E) = lim←−E[ln] o`u E[ln]groupe de ln-torsion

Proposition

Si l 6=p premier, alors

Tl(E)'Zl ×Zl et il existe un morphisme naturel

End(E) → End(Tl(E))' M2(Zl) ϕ 7→ ϕl

⇒χ(Φq,l)(X) =X2−Tr(Φq,l)X + det(Φq,l)∈Zl[X]

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 6 / 37

(7)

Conjecture de Weil

Th´eor`eme

I det(Φq,l) = deg(Φq) =q etTr(Φq,l) = 1 +q−deg([1]−Φq).

I ∀n∈Z, deg([n]−Φq) =χ(Φq)(n) =n2−nTr(Φq) + det(Φq) dont on d´eduit le th´eor`eme de Hasse :

Th´eor`eme (Hasse)

|Tr(Φq)| ≤2p det Φq

En particulier, on peut approximer le nombre de points rationnels de la courbe E :

1 +q−2√

q ≤#E(Fq)≤1 +q+ 2√ q

(8)

Rel` evement canonique, q-adiques

E courbe elliptique ordinaire d´efinie sur Fq,q =pd.

I Id´ee de Satoh : se placer sur une courbe d´efinie sur un corps local de caract´erique nulle qui “rel`eve bien” la courbe elliptiqueE

⇒ introduire q-adiques (Zq,Qq) et E le rel`evement canonique d´efini sur Qq

I Calcul de la trace : Th´eor`eme (Satoh)

Soit E une courbe elliptique d´efinie sur un corps de caract´eristique 0, et soit ω une forme diff´erentielle holomorphe sur E. Pour tout f ∈End(E), on d´efinit λf = fω(ω). Alors λf est une racine du polynˆome caract´eristique de f et en particulier,

Tr(f) =λf +deg(f) λf

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 8 / 37

(9)

Corps des p-adiques

Anneau desp-adiques

D´efinition

I Entier p-adique : x = (x1,x2, . . .)o`u xn∈Z/pnZ, xn+1=xn mod pn.

I Anneau des p-adiques :Zp o`u somme/produit sont d´efinis coordonn´ees par coordonn´ees de mani`ere naturelle.

Propri´et´e

I Zp est un anneau de valuation discr`ete de corps r´esiduelFp et de caract´eristique 0.

I x ∈Zp, x =upn o`u u ∈Zp et n∈N νp(x) =n est la valuation p-adique

(10)

Corps des p-adiques

Normep-adiques

D´efinition

I Corps des p-adiques :Qp =Frac(Zp)

I Valuation p-adique se prolonge sur Qpp(x1) =−νp(x)

I Norme p-adique :

|.|p:Qp→R+, x → |x|p=p−νp(x)

Proposition

I Zp={x∈Qp:|x|p ≤1} anneau de valuation de Qp

I Qp est le compl´et´e de Qpour la norme |.|p

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 10 / 37

(11)

Corps des q-adiques

D´efinition

Soit K =Qp[X]/(P) (P∈Zp[X] irr´eductible de degr´e d , de contenu1) une extension de Qp de degr´e d .

K est dite non ramifi´ee, sideg(P) = deg(PN), ∀N∈No`u PN ∈(Z/pNZ)[X]tels que PN =PmodpN.

Proposition

Il existe une unique (`a isomorphisme pr`es) extension non ramifi´ee de degr´e d de Qp, not´eeQq o`u q=pd. Cette extension est galoisienne, de groupe de Galois cyclique.

νp et|.|p se prolongent de fa¸con unique `aQq.

(12)

Entiers q-adiques, lien F

q

/Q

q

D´efinition

Zq ={x ∈Qq :|x|p≤1}est l’anneau de valuation deQq. Propri´et´e

(i) Zq est un anneau local, d’id´eal maximal pZq, son corps r´esiduel est Fq.

(ii) Zq est une extension deZp :Zq'Zp[X]/(P) (iii) Zq= lim←−Zq/pNZq= lim←−(Z/pNZ)[X]/(PN) Th´eor`eme

Gal(Qq/Qp)'Gal(Fq/Fp) (donn´e par la r´eduction modulo p) Gal(Fq/Fp) =< σ > o`u σ :x 7→xp (petit Frobenius)

⇒Gal(Qq/Qp) =<Σ>(Σ substitution de Frobenius).

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 12 / 37

(13)

Relev´ e canonique et substitution de Frobenius

D´efinition

Un relev´e canonique de la courbe elliptique ordinaire E d´efinie sur Fq est une courbe elliptique E d´efinie sur Qq satisfaisant :

I la r´eduction deE modulo p est E ,

I End(E)'End(E) isomorphisme induit par la r´eduction modulo p.

En particulier, le q-i`eme FrobeniusΦq:E →E se rel`eve en un endomorphisme Fq:E → E, et on aTrFq=TrΦq.

Th´eor`eme (Deuring)

Le relev´e canoniqueE de E existe et est unique `a isomorphisme pr`es.

(14)

Rel` evement p-i` eme Frobenius et calcul de la trace

E courbe elliptique d´efinie sur Fq'Fpd

I Le p-i`eme Frobenius Φp :E →Eσ induit un cycle d’isog´enie surE E−→Φp,0Eσ−→Φp,1Eσ2−→Φp,2. . .Φ−→p,d−1Eσd =E

Th´eor`eme

Φp :E →Eσ se rel`eve en une isog´enieFp :E → EΣ, o`u Σ est la substitution de Frobenius.

En appliquant successivement ce r´esultat, on peut relever le cycle d’isog´enies

E−→Φp,0Eσ−→Φp,1Eσ2−→Φp,2. . .Φ−→p,d−1Eσd =E en un cycle d’isog´enies

E−→ EFp,0 Σ−→ EFp,1 Σ2−→Fp,2. . .F−→ Ep,d−1 Σd =E et Tr(Fq) =Tr(Fp,d−1◦. . .◦ Fp,0).

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 14 / 37

(15)

Plan

Motivations

Approche standard du comptage de points

Algorithmique sur Zq

Approche AGM en caract´eristique 2

(16)

Calculs ` a la pr´ ecision N

On suppose d´esormaisp = 2 et q= 2d.

I Notion de pr´ecision :a∈Z2 repr´esent´e par aN =amod2N (un

´

el´ement de Z2 `a la pr´ecisionN n´ecessite donc O(N) bits m´emoire)

I Choix d’impl´ementation : travail dans Zq `a la pr´ecision N ↔ travail dans (Z/2NZ)[X]/(PN) o`uPN =Pmod2N (un ´el´ement de Zq `a la pr´ecisionN n´ecessite donc O(dN) bits m´emoire).

I Complexit´e des op´erations usuelles :

I Addition :O(dN)

I Multiplication na¨ıve :O(d2N2)

I Acc´eleration des calculs moduloPN : on part deP1 ∈F2[X]

polynˆome irr´eductible creux (trinomial ou pentanomial), qu’on rel`eve enP ∈Z2[X]

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 16 / 37

(17)

Biblioth` eques utilis´ ees

I Norme de s´ecurit´e : extensions de degr´e d '160, pr´ecision de l’ordre de 80 bits pour le calcul de la trace.

⇒ utilisation de GMP pour l’arithm´etique sur les grands entiers

I Calcul modulaire dansZ2[X] rendu possible avec NTL :

I pas de classe pr´eexistante pour lesq-adiques (pour le changement de pr´ecision), mais multiplications tr`es efficaces dans (Z/2NZ)[X]/(PN) (Karatsuba, Sch¨onhage-Strassen) enO((dN)µ)

I on utilise la classeZZ X (polynˆomes `a coeff grands entiers)

I on travaille avec des polynˆomes de degr´ed1 `a coefficients dans J0; 2N1K.

I addition/multiplication moduloPN de la classeZZ X, puis troncature des bits dans la classeZZ pour ramener les coeff dans l’intervalle J0; 2N1K.

I Autres op´erations usuelles (inverse, racine carr´ee) bas´ees sur un

(18)

Calcul d’inverse dans Z

q

Entr´ee :a∈Zq inversible, N ∈Nla pr´ecision Sortie : z l’inverse de a`a la pr´ecision N

1. si N= 1 alors

2. z ← 1a mod 2

3. sinon

4. z ←Inverse a,N+1

2

5. z ←z+z(1−az) mod 2N

6. fin si

7. retourner z Remarques :

I ligne 1 : dans AGM on s’´epargne le calcul d’inverse `a la pr´ecision 1 dans Fq (on prendra 1 comme inverse approch´e)

I algorithme donnant une preuve constructive du fait qu’un ´el´ement est inversible dans Zq si et seulement si il est inversible (non nul) mod 2.

I Complexit´e :O((dN)µ)

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 18 / 37

(19)

Calcul de racine carr´ ee dans Z

q

Entr´ee :a∈Zq carr´e inversible, z0 approximation initiale de 1a `a l’ordre 2, N ∈Nla pr´ecision

Sortie : z l’inverse de la racine carr´ee de a`a la pr´ecision N

1. siN2alors

2. zz0

3. sinon

4. N0N+2

2

5. zRacineCarreeInverse(a,z0,N0) 6. x1az2mod2N+1

7. zz+zx

2 mod 2N 8. fin si

9. retourner z Remarques :

I approximation de 1a `a l’ordre 2 non probl´ematique dans AGM

I un ´el´ement inversible est un carr´e dansZq si et seulement si il admet

(20)

Plan

Motivations

Approche standard du comptage de points

Algorithmique sur Zq

Approche AGM en caract´eristique 2

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 20 / 37

(21)

Restriction du probl` eme

I En caract´eristique 2, une courbe elliptique ordinaire (j-invariant non nul) a pour ´equation :

E : y2+xy =x3+a2x2+a6 o`u a6 ∈Fq et sonj-invariant ne d´epend que dea6

⇒ on se restreint aux courbes d’´equations

E0 : ˜y2+ ˜x˜y = ˜x3+a6 o`ua6 ∈Fq

I Un isomorphisme entre E et E0 est de la forme (x= ˜x

y = ˜y+s˜x o`u s v´erifie s2+s−a2= 0 dans Fq

Deux cas possibles :

I E etE0 ont le mˆeme nombre de points dansFq

(22)

Contexte AGM

E : y2+xy =x3+c c ∈Fq Th´eor`eme (Relev´e canonique de E)

Il existe un unique relev´e E, appel´e canonique, de E dansQq v´erifiant : (i) E admet une bonne r´eduction modulo 2

(ii) End(E)'End(E) En particulier,

I Φ2 :E →Eσ ! F2 :E → EΣ

I Φ2,k :Eσk →Eσk+1 !F2,k :EΣk → EΣk+1.

I Φq∈End(E) !Fq∈End(E) tel que (F2,d−1◦. . .◦ F2,0=Fq

Tr(Fq) =Tr(Φq)

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 22 / 37

(23)

Action de F

q

sur la diff´ erentielle holomorphe de E

I Th´eor`eme (Satoh)

Soit c ∈Qq tel queFqω =cω o`u ω est une diff´erentielle holomorphe sur E. Alors

Tr(Fq) =c+q c

I On suppose que E est isomorphe `a la courbeEa,b d’´equation :

Ea,b: y2 =x(x−a2)(x−b2) (1) ω= dxy diff´erentielle holomorphe d´efinie surEa,b.

I CalculFq(ω) =F2,0 ◦. . .◦ F2,d−1 (ω) ?

On introduit la suite arithm´etico-g´eom´etrique (ak,bk)k≥0 et un isomorphisme entre EΣk et E : y2=x(x−a2)(x−b2)

(24)

Suite arithm´ etico-g´ eom´ etrique

Soient α, β∈Zq tels que

α, β ∈1 + 4Zq α

β ∈1 + 8Zq (2)

On d´efinit r´ecursivement une suite arithm´etico-g´eom´etrique (αk, βk) par

0, β0) = (α, β) (αk+1, βk+1) =

αkk

2 ,p

αkβk

(3)

Lemme

I c ∈1 + 8Zq⇒ ∃!e ∈1 + 4Zq, e2 =c

I Si (αk, βk) v´erifie (2), alors (αk+1, βk+1) v´erifie (2).

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 24 / 37

(25)

Suite arithm´ etico-g´ eom´ etrique

L’it´eration AGM donne des 2-isog´enies entre les courbes : Th´eor`eme

Soient α, β∈1 + 4Zq et (α0, β0) =AGM(α, β).

Alors Eα,β :y2 =x(x−α2)(x−β2) etEα00 :y2 =x(x−α02)(x−β02) sont 2-isog`enes :

ψ: Eα,β → Eα00 (x,y) 7→

(x+αβ)2

4x ,y(x−αβ)(x+αβ) 8x2

ψ dx0

y0

= 2dx y Le noyau de ψ est compos´e de deux points :

(26)

Lien AGM - relev´ e canonique

Proposition

Soit F2:Ea,b→ Ea,bΣ =EΣ(a),Σ(b) le 2-i`eme morphisme de Frobenius, ψ:Ea,b→ Ea1,b1 o`u (a1,b1) =AGM(a,b).

ker(F2) = ker(ψ)

En particulier, il existe un unique isomorphisme λ:Ea1,b1 → EΣ(a),Σ(b) tel que F2=λ◦ψ:

Ea,b ψ //

FD2DDDDD""

DD Ea1,b1

λ

Ea,bΣ

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 26 / 37

(27)

Calcul de la trace

Th´eor`eme

Soient (ak,bk) la suite AGM initialis´ee par (a,b), alors on a le diagramme commutatif suivant :

Ea,b ψ0 //

Id

Ea1,b1 ψ1 //

λ1

Ea2,b2 ψ2 //

λ2

. . . ψd−1//

Ead,bd

λd

E0 F2,0 //E1 F2,1 //E2 F2,2 //. . .F2,d−1//Ed ' E0

o`uEk =EΣk(a),Σk(b),F2,k :Ek → Ek+1 (relev´e de Φ2) etλk :Eak,bk → Ek sont des isomorphismes.

En particulier, λd :Ead,bd → Ea0,b0 isomorphisme tel que

I λd(x0,y0) =

a0

ad

2

x0

a0

ad

3

y0

(28)

Calcul de la trace

Avec le th´eor`eme de Satoh, on en d´eduit le calcul de la trace avec une approximation suffisante (cf th. de Hasse) :

Th´eor`eme

Tr(Fq) =Tr(Φq) = a0

ad mod2dd2e+2

Remarques :

I il suffit de trouver a00 et a0d approximant les valeursa0 et ad `a la pr´ecisionN−1 =d

2

+ 2

I en pratique (lemme technique) : prendre a00,b00∈Zq tels que (a00,b00) = (a,b)mod2N o`u N=d

2

+ 3, alors (a0k,b0k) = (ak,bk)mod2N−1 et aa000

d

= aa0

d mod2N−1 (approximation suffisante pour le calcul de la trace)

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 28 / 37

(29)

Pr´ ecision n´ ecessaire pour l’approximation du relev´ e canonique

Deux probl`emes subsistent :

I comment trouver les approximations (a00,b00) `a la pr´ecision N de (a,b) ?

I justifier le fait que E est bien isomorphe `a une courbeEa,b avec (a,b) v´erifiant (2)

Proposition

Soit n∈N. Soient(α, β) et (α0, β0) v´erifiant les hypoth`eses (2).

Alors on a ´equivalence entre (i) j(Eα00) =j(Eα,β)mod2n (ii) αβ00 =

α β

±1

mod2n+3

Pour initialiser le calcul de la trace, il suffit donc de trouver (a00,b00)

(30)

Approximation du relev´ e canonique

Th´eor`eme (Approximation du relev´e canonique)

Soient α0 = 1 etβ0= 1 + 8¯c o`u ¯c ∈Zq est un relev´e de c ∈Fq. On note (αk, βk)la suite AGM initialis´ee `a(α0, β0) etEαkk la courbe elliptique correspondante.

Les courbes Eαkk approximent le relev´e canoniqueE de la courbe E :y2+xy =x3+c au sens suivant :

j(Eαkk) = Σk+1(j(E))mod2k+1

⇒ on peut prendre (a00,b00) = (αN−4, βN−4).

Mieux : on peut encore limiter la pr´ecision du calcul de la premi`ere suite AGM (αk, βk), en prenant la suite (α0k, βk0) telle que :

((α00, β00) = (α0, β0)mod24

0k, βk0) =AGM(α0k−1, βk−10 )mod2k+4

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 30 / 37

(31)

Remarques sur l’approximation

I Si on prend (a00,b00) = (αN−4, βN−4), Ea0

0,b00 approxime EΣN−3

⇒ on va calculer #(EσN−3(Fq)) (non gˆenant puisque ΦN−32 :E(Fq)→EσN−3(Fq) est bijectif)

I Bien que la suite AGM ne converge pas, elle fournit une

approximation deE : on peut en extraire une sous-suite convergente (αϕ(k), βϕ(k)) telle que

klim→∞j(Eα

ϕ(k)ϕ(k)) =j(E) =j(Eα)

ce qui justifie l’hypoth`ese sur la forme du relev´e canonique faite en (1).

(32)

Algorithme AGM

Entr´ee : E:y2+xy=x3+c,cF2d

Sortie :nombre de points rationnels deE(F2d)

Variables : N(pr´ecision),a,bZ2d (AGM),t (trace) 1. Nd

2

+ 3 2. a1mod24 3. b1 + 8cmod24 4. pouri= 5 `a Nfaire

5. (a,b)

a+b 2 ,

ab mod2i 6. fin pour

7. a0a

8. pouri= 0 `a d1faire

9. (a,b)

a+b 2 ,

ab mod2N 10. fin pour

11. t aa0mod2N−1 12. sit2>2d+2 alors

13. tt2N−1

14. fin si

15. retourner 2d+ 1t

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 32 / 37

(33)

V´ erification des r´ esultats et complexit´ e

I on v´erifie que l’ordre d’un pointP rationnel de la courbe dont l’abscisse a ´et´e choisie al´eatoirement, est bien un diviseur du nombre de points rationnels trouv´e

I Complexit´e en m´emoire : on stockeO(1) ´el´ements deZq `a la

pr´ecisionN =O(d) (ayant doncd coefficients dans Z/2NZ), soit une complexit´e enO(d2).

I Complexit´e en temps : on effectue de l’ordre de 2d calculs de racines carr´es et produits avec un coˆut enO((dN)µ) =O(d), soit une complexit´e totale enO(d2µ+1).

(34)

R´ esultats de l’impl´ ementation

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 34 / 37

(35)

R´ esultats de l’impl´ ementation

(36)

R´ esultats de l’impl´ ementation

V. Vitse (UVSQ - MA2) ethode AGM pour le comptage de points 36 / 37

(37)

Interpr´ etation des r´ esultats

I R´egression non lin´eaire sous Gnuplot : on retrouve bien la complexit´e end3.148

I Plusieurs d´ecrochements de la courbe aux valeurs

d = 256,512,1024.... Cette perte de performance s’explique certainement par un saut dans la fa¸con de stocker les valeurs en m´emoire.

I Un d´ecrochement plus myst´erieux en d = 150, probablement dˆu `a un changement d’algorithme de multiplication dans NTL.

Références

Documents relatifs

Une question de Jack Haie sur la possibilité de remplacer dans les familles à deux paramètres considérées ici le voisinage effilé de la courbe de bifurcation F de la famille de

Maintenant joignons S et O et prenons à nouveau le troisième point d’intersection SO : c’est O car la droite passant par O et S est la tangente à la courbe en O (elle passe donc

Les probl´ ematiques li´ ees ` a l’analyse de donn´ ees g´ eom´ etriques sont en plein d´ eveloppement, aussi bien pour des applications en petite dimension (maillages ou nuages

Nous verrons dans le paragraphe 6 comment cette relation peut être utilisée pour la recherche des points ^-entiers sur les courbes elliptiques de rang 1 sur Q..

soit un rayon incident quelconque (AI ), qui arrive sur la lentille au point I ; le rayon parall`ele ` a (AI ) passant par O traverse la lentille sans ˆetre d´evi´e, et coupe le

R´epondre exactement aux pr´edicats mais pas forc´ement du calcul exact.. Algorithmes

Syst`eme de coordonn´ee pour un nuage de points Dessin de graphes et similarit´es mol´eculaires.. 1998

Autres probl`emes en g´eom´etrie algorithmique G´en´eralisations (puissance, contraint. ) Enveloppes convexes...