Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes...
Transcript of Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes...
![Page 1: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/1.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
1/17
Construction de courbeselliptiques pairing-friendly
Gaëtan BISSON
LORIA, Nancy, France
TU/e, Eindhoven, Netherlands
![Page 2: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/2.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
2/17
Première partie
Les courbes en cryptographie
![Page 3: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/3.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
3/17
Points abordés
1 Logarithme discret
2 Courbes elliptiques
3 Couplages
![Page 4: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/4.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
4/17
Le problème du logarithme discret
La cryptographie asymétrique utilise des fonctions à sens uniqueà trappe pour des applications telles que le chiffrement à clefpublique, les signatures électroniques, etc.
Soit G un groupe fini engendré par l’un de ses éléments, g.
Z/ (#G) Z ∼−→ G G ∼−→ Z/ (#G) Zm 7−→ mg = h 7−→ logg h (:= m)
PROTOCOLES :— L’échange de clef de Diffie-Hellman.— Le cryptosystème ElGamal.
![Page 5: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/5.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
4/17
Le problème du logarithme discret
La cryptographie asymétrique utilise des fonctions à sens uniqueà trappe pour des applications telles que le chiffrement à clefpublique, les signatures électroniques, etc.
Soit G un groupe fini engendré par l’un de ses éléments, g.
Z/ (#G) Z ∼−→ G G ∼−→ Z/ (#G) Zm 7−→ mg = h 7−→ logg h (:= m)
PROTOCOLES :— L’échange de clef de Diffie-Hellman.— Le cryptosystème ElGamal.
![Page 6: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/6.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
4/17
Le problème du logarithme discret
La cryptographie asymétrique utilise des fonctions à sens uniqueà trappe pour des applications telles que le chiffrement à clefpublique, les signatures électroniques, etc.
Soit G un groupe fini engendré par l’un de ses éléments, g.
Z/ (#G) Z ∼−→ G G ∼−→ Z/ (#G) Zm 7−→ mg = h 7−→ logg h (:= m)
PROTOCOLES :— L’échange de clef de Diffie-Hellman.— Le cryptosystème ElGamal.
![Page 7: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/7.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
5/17
Attaques génériques et spécifiquesATTAQUES GENERIQUES :
— L’attaque de Polling-Hellman réduit G à son plus grandsous-groupe d’ordre premier.
— La méthode ρ de Pollard (essentiellement brute-force).Complexité en Θ
(√#G
).
Dans quels groupes G peut-on utiliser le logarithme discret ?On doit en premier lieu pouvoir calculer rapidement dans G.
ATTAQUES SPECIFIQUES :Z/nZ Algorithme d’Euclide pour inverser g.
Complexité en Θ (log n).F×q Algorithme du calcul d’index.
Complexité en Θ(
exp(c (log q)
13 log (log q)
23
)).
Jac Pas d’attaque efficace connue pour les groupes qui dériventde courbes algébriques “convenables”.
![Page 8: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/8.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
5/17
Attaques génériques et spécifiquesATTAQUES GENERIQUES :
— L’attaque de Polling-Hellman réduit G à son plus grandsous-groupe d’ordre premier.
— La méthode ρ de Pollard (essentiellement brute-force).Complexité en Θ
(√#G
).
Dans quels groupes G peut-on utiliser le logarithme discret ?On doit en premier lieu pouvoir calculer rapidement dans G.
ATTAQUES SPECIFIQUES :Z/nZ Algorithme d’Euclide pour inverser g.
Complexité en Θ (log n).F×q Algorithme du calcul d’index.
Complexité en Θ(
exp(c (log q)
13 log (log q)
23
)).
Jac Pas d’attaque efficace connue pour les groupes qui dériventde courbes algébriques “convenables”.
![Page 9: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/9.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
5/17
Attaques génériques et spécifiquesATTAQUES GENERIQUES :
— L’attaque de Polling-Hellman réduit G à son plus grandsous-groupe d’ordre premier.
— La méthode ρ de Pollard (essentiellement brute-force).Complexité en Θ
(√#G
).
Dans quels groupes G peut-on utiliser le logarithme discret ?On doit en premier lieu pouvoir calculer rapidement dans G.
ATTAQUES SPECIFIQUES :Z/nZ Algorithme d’Euclide pour inverser g.
Complexité en Θ (log n).F×q Algorithme du calcul d’index.
Complexité en Θ(
exp(c (log q)
13 log (log q)
23
)).
Jac Pas d’attaque efficace connue pour les groupes qui dériventde courbes algébriques “convenables”.
![Page 10: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/10.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
5/17
Attaques génériques et spécifiquesATTAQUES GENERIQUES :
— L’attaque de Polling-Hellman réduit G à son plus grandsous-groupe d’ordre premier.
— La méthode ρ de Pollard (essentiellement brute-force).Complexité en Θ
(√#G
).
Dans quels groupes G peut-on utiliser le logarithme discret ?On doit en premier lieu pouvoir calculer rapidement dans G.
ATTAQUES SPECIFIQUES :Z/nZ Algorithme d’Euclide pour inverser g.
Complexité en Θ (log n).
F×q Algorithme du calcul d’index.
Complexité en Θ(
exp(c (log q)
13 log (log q)
23
)).
Jac Pas d’attaque efficace connue pour les groupes qui dériventde courbes algébriques “convenables”.
![Page 11: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/11.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
5/17
Attaques génériques et spécifiquesATTAQUES GENERIQUES :
— L’attaque de Polling-Hellman réduit G à son plus grandsous-groupe d’ordre premier.
— La méthode ρ de Pollard (essentiellement brute-force).Complexité en Θ
(√#G
).
Dans quels groupes G peut-on utiliser le logarithme discret ?On doit en premier lieu pouvoir calculer rapidement dans G.
ATTAQUES SPECIFIQUES :Z/nZ Algorithme d’Euclide pour inverser g.
Complexité en Θ (log n).F×q Algorithme du calcul d’index.
Complexité en Θ(
exp(c (log q)
13 log (log q)
23
)).
Jac Pas d’attaque efficace connue pour les groupes qui dériventde courbes algébriques “convenables”.
![Page 12: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/12.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
5/17
Attaques génériques et spécifiquesATTAQUES GENERIQUES :
— L’attaque de Polling-Hellman réduit G à son plus grandsous-groupe d’ordre premier.
— La méthode ρ de Pollard (essentiellement brute-force).Complexité en Θ
(√#G
).
Dans quels groupes G peut-on utiliser le logarithme discret ?On doit en premier lieu pouvoir calculer rapidement dans G.
ATTAQUES SPECIFIQUES :Z/nZ Algorithme d’Euclide pour inverser g.
Complexité en Θ (log n).F×q Algorithme du calcul d’index.
Complexité en Θ(
exp(c (log q)
13 log (log q)
23
)).
Jac Pas d’attaque efficace connue pour les groupes qui dériventde courbes algébriques “convenables”.
![Page 13: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/13.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
6/17
Les courbes elliptiques
Sur un corps (fini) Fq de charactéristique différente de 2 et 3,une courbe elliptique E est donnée par son équation :
Y 2 = 4X3 − g2X − g3
L’ensemble des solutions projectives de cette équation(dans F2
q ∪ {∞}) forme un groupe :— dont il est non-trivial de calculer efficacement le cardinal ;— mais dont la loi de groupe se calcule très aisément.
![Page 14: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/14.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
6/17
Les courbes elliptiques
Sur un corps (fini) Fq de charactéristique différente de 2 et 3,une courbe elliptique E est donnée par son équation :
Y 2 = 4X3 − g2X − g3
L’ensemble des solutions projectives de cette équation(dans F2
q ∪ {∞}) forme un groupe :— dont il est non-trivial de calculer efficacement le cardinal ;— mais dont la loi de groupe se calcule très aisément.
![Page 15: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/15.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
7/17
La loi de groupe illustrée
AB
A+B
![Page 16: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/16.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
8/17
Les couplages
Un couplage est une application bilinéaire non-dégénérée :
G2 → µr
En pratique, G = E [r] et µr ⊂ F×qk ; on peut alors calculer
le couplage efficacement lorsque Fqk est de taille raisonnable.
k := [Fq (µr) : Fq] = min{i ∈ N : r | qi − 1
}
APPLICATIONS :— réduction du logarithme discret de G à F×
qk ;
— utilisation dans des protocoles.On veut donc k petit (mais pas trop).
![Page 17: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/17.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
8/17
Les couplages
Un couplage est une application bilinéaire non-dégénérée :
G2 → µr
En pratique, G = E [r] et µr ⊂ F×qk ; on peut alors calculer
le couplage efficacement lorsque Fqk est de taille raisonnable.
k := [Fq (µr) : Fq] = min{i ∈ N : r | qi − 1
}APPLICATIONS :
— réduction du logarithme discret de G à F×qk ;
— utilisation dans des protocoles.On veut donc k petit (mais pas trop).
![Page 18: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/18.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Logarithmediscret
Courbeselliptiques
Couplages
8/17
Les couplages
Un couplage est une application bilinéaire non-dégénérée :
G2 → µr
En pratique, G = E [r] et µr ⊂ F×qk ; on peut alors calculer
le couplage efficacement lorsque Fqk est de taille raisonnable.
k := [Fq (µr) : Fq] = min{i ∈ N : r | qi − 1
}APPLICATIONS :
— réduction du logarithme discret de G à F×qk ;
— utilisation dans des protocoles.On veut donc k petit (mais pas trop).
![Page 19: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/19.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
9/17
Deuxième partie
Construction
![Page 20: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/20.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
10/17
Points abordés
4 Cadre
5 Cocks-Pinch
6 Brezing-Weng
7 Amélioration
![Page 21: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/21.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
11/17
La méthode CM
EN DEUX MOTS : Une courbe elliptique sur Fq peut être relevéedans C où la théorie de la multiplication complexe “classifie”les courbes en fonction de certaines propriétés.
EN PRATIQUE : Étant donné des entiers q, t et D tels que
q est premier et ∃y, 4q = t2 +Dy2
la méthode CM construit une courbe elliptique sur Fq
avec pour cardinal q + 1− t.Elle est efficace lorsque D n’est pas trop grand.
![Page 22: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/22.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
11/17
La méthode CM
EN DEUX MOTS : Une courbe elliptique sur Fq peut être relevéedans C où la théorie de la multiplication complexe “classifie”les courbes en fonction de certaines propriétés.
EN PRATIQUE : Étant donné des entiers q, t et D tels que
q est premier et ∃y, 4q = t2 +Dy2
la méthode CM construit une courbe elliptique sur Fq
avec pour cardinal q + 1− t.Elle est efficace lorsque D n’est pas trop grand.
![Page 23: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/23.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
12/17
Conditions
On veut construire une courbe elliptique E sur un corps fini Fq
ayant un grand sous-groupe G d’ordre r (= #G) premiermuni d’un couplage qui s’évalue rapidement.
Il nous faut donc :q, r grands premierst, y entiersD, k petits entiers
tels que
r | Dy2 + (t− 2)2
r | Φk (t− 1)t2 +Dy2 = 4q
La dernière équation caractérise D pour la méthode CM.La première et la dernière impliquent que r | q + 1− t.Enfin, la seconde équation caractérise k.
![Page 24: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/24.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
12/17
Conditions
On veut construire une courbe elliptique E sur un corps fini Fq
ayant un grand sous-groupe G d’ordre r (= #G) premiermuni d’un couplage qui s’évalue rapidement.
Il nous faut donc :q, r grands premierst, y entiersD, k petits entiers
tels que
r | Dy2 + (t− 2)2
r | Φk (t− 1)t2 +Dy2 = 4q
La dernière équation caractérise D pour la méthode CM.La première et la dernière impliquent que r | q + 1− t.Enfin, la seconde équation caractérise k.
![Page 25: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/25.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
13/17
La méthode Cocks-Pinch
On fixe D et k, deux petits entiers. Pour trouver des valeurs deq, r, t et y satisfaisant les conditions, on procède ainsi :
1 Choisir r tel que Fr contienne√−D et une racine
primitive kème de l’unité, z.2 Poser t = 1 + z et y = t−2√
−Dmod r.
3 Relever t et y dans Z et poser q = 14
(t2 +Dy2
).
Répéter cet algorithme pour différents choix de r et z jusqu’à ceque q soit premier.
INCONVENIENT : Les paramètres construits vérifient
ρ :=log qlog r
∼ 2
i.e. on n’utilise que la “moitié” de la courbe elliptique.
![Page 26: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/26.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
13/17
La méthode Cocks-Pinch
On fixe D et k, deux petits entiers. Pour trouver des valeurs deq, r, t et y satisfaisant les conditions, on procède ainsi :
1 Choisir r tel que Fr contienne√−D et une racine
primitive kème de l’unité, z.2 Poser t = 1 + z et y = t−2√
−Dmod r.
3 Relever t et y dans Z et poser q = 14
(t2 +Dy2
).
Répéter cet algorithme pour différents choix de r et z jusqu’à ceque q soit premier.
INCONVENIENT : Les paramètres construits vérifient
ρ :=log qlog r
∼ 2
i.e. on n’utilise que la “moitié” de la courbe elliptique.
![Page 27: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/27.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
14/17
La méthode Brezing-Weng
On fixe D et k, deux petits entiers. On cherche des polynômesq, r, t et y (en x) satisfaisant les conditions en procédant ainsi :
1 Choisir r tel que Q [x] / (r) soit un corps contenant√−D
et une racine primitive kème de l’unité, z.2 Poser t = 1 + z et y = t−2√
−Dmod r.
3 Relever t et y dans Z [x] et poser q = 14
(t2 +Dy2
).
Répéter cet algorithme pour différents choix de r et z jusqu’à ceque q soit irréductible.
On cherche alors des entiers x tels que q (x) et r (x) soientpremiers, et t (x) et y (x) soient entiers.Pour chacun d’entre eux, on a une courbe avec ρ := deg q
deg r .
SUBTILITE : Bien choisir r et z.
![Page 28: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/28.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
14/17
La méthode Brezing-Weng
On fixe D et k, deux petits entiers. On cherche des polynômesq, r, t et y (en x) satisfaisant les conditions en procédant ainsi :
1 Choisir r tel que Q [x] / (r) soit un corps contenant√−D
et une racine primitive kème de l’unité, z.2 Poser t = 1 + z et y = t−2√
−Dmod r.
3 Relever t et y dans Z [x] et poser q = 14
(t2 +Dy2
).
Répéter cet algorithme pour différents choix de r et z jusqu’à ceque q soit irréductible.
On cherche alors des entiers x tels que q (x) et r (x) soientpremiers, et t (x) et y (x) soient entiers.Pour chacun d’entre eux, on a une courbe avec ρ := deg q
deg r .
SUBTILITE : Bien choisir r et z.
![Page 29: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/29.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
14/17
La méthode Brezing-Weng
On fixe D et k, deux petits entiers. On cherche des polynômesq, r, t et y (en x) satisfaisant les conditions en procédant ainsi :
1 Choisir r tel que Q [x] / (r) soit un corps contenant√−D
et une racine primitive kème de l’unité, z.2 Poser t = 1 + z et y = t−2√
−Dmod r.
3 Relever t et y dans Z [x] et poser q = 14
(t2 +Dy2
).
Répéter cet algorithme pour différents choix de r et z jusqu’à ceque q soit irréductible.
On cherche alors des entiers x tels que q (x) et r (x) soientpremiers, et t (x) et y (x) soient entiers.Pour chacun d’entre eux, on a une courbe avec ρ := deg q
deg r .
SUBTILITE : Bien choisir r et z.
![Page 30: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/30.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
15/17
Une amélioration
Fixons un entier d et posons D = n2d. Les polynômes q, r et tobtenus sont indépendants de n ; quant à y, on a yn = 1
ny1.1 Fixer k et d et calculer q, t, r et y comme précédemment.2 Trouver un x tel que q (x) et r (x) soient premiers,
et t (x) et y (x) soient entiers.3 Factoriser y (x).4 Choisir un diviseur n et générer une courbe avec D = n2d.
Pour que la méthode CM soit réalisable, il faut n < 105.Pour éviter une réduction par isogénie, il faut que n ait un grandfacteur premier.
SUBTILITE : Mieux choisir r et z.GAIN : Plus de courbes avec plus grand nombre de classes.
![Page 31: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/31.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
15/17
Une amélioration
Fixons un entier d et posons D = n2d. Les polynômes q, r et tobtenus sont indépendants de n ; quant à y, on a yn = 1
ny1.1 Fixer k et d et calculer q, t, r et y comme précédemment.2 Trouver un x tel que q (x) et r (x) soient premiers,
et t (x) et y (x) soient entiers.3 Factoriser y (x).4 Choisir un diviseur n et générer une courbe avec D = n2d.
Pour que la méthode CM soit réalisable, il faut n < 105.Pour éviter une réduction par isogénie, il faut que n ait un grandfacteur premier.
SUBTILITE : Mieux choisir r et z.GAIN : Plus de courbes avec plus grand nombre de classes.
![Page 32: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/32.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
15/17
Une amélioration
Fixons un entier d et posons D = n2d. Les polynômes q, r et tobtenus sont indépendants de n ; quant à y, on a yn = 1
ny1.1 Fixer k et d et calculer q, t, r et y comme précédemment.2 Trouver un x tel que q (x) et r (x) soient premiers,
et t (x) et y (x) soient entiers.3 Factoriser y (x).4 Choisir un diviseur n et générer une courbe avec D = n2d.
Pour que la méthode CM soit réalisable, il faut n < 105.Pour éviter une réduction par isogénie, il faut que n ait un grandfacteur premier.
SUBTILITE : Mieux choisir r et z.GAIN : Plus de courbes avec plus grand nombre de classes.
![Page 33: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/33.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
16/17
ExempleSoient k = 9 et D = 3 ; on choisit r = Φ9 et z = x4.La méthode de Brezing-Weng donne une famille avec ρ ∼ 1.33 :
q (x) = 13
(x8 + x7 + x6 + x5 + 4x4 + x3 + x2 + x+ 1
)y (x) = 1
3
(x4 + 2x3 + 2x+ 1
)
Par exemple, pour x = 100026508, q (x) est premier (212 bits),r (x) est presque premier (2 + 158 bits) et
y (x) = 47 · 227 · 3529 · 27759659 · 31926380379504181
Prenons n = 3529 ; on trouve la courbe d’équation :
Y 2 = X3 + 32465585675528475154686711463989\30389227646675927893599247518644X
+ 10509028022025889317738018597831\15352914330802852418162001031235
mod 33404087284979282356159367134485\14719712300943298532712491943583
![Page 34: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/34.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
16/17
ExempleSoient k = 9 et D = 3 ; on choisit r = Φ9 et z = x4.La méthode de Brezing-Weng donne une famille avec ρ ∼ 1.33 :
q (x) = 13
(x8 + x7 + x6 + x5 + 4x4 + x3 + x2 + x+ 1
)y (x) = 1
3
(x4 + 2x3 + 2x+ 1
)Par exemple, pour x = 100026508, q (x) est premier (212 bits),r (x) est presque premier (2 + 158 bits) et
y (x) = 47 · 227 · 3529 · 27759659 · 31926380379504181
Prenons n = 3529 ; on trouve la courbe d’équation :
Y 2 = X3 + 32465585675528475154686711463989\30389227646675927893599247518644X
+ 10509028022025889317738018597831\15352914330802852418162001031235
mod 33404087284979282356159367134485\14719712300943298532712491943583
![Page 35: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/35.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
Cadre
Cocks-Pinch
Brezing-Weng
Amélioration
16/17
ExempleSoient k = 9 et D = 3 ; on choisit r = Φ9 et z = x4.La méthode de Brezing-Weng donne une famille avec ρ ∼ 1.33 :
q (x) = 13
(x8 + x7 + x6 + x5 + 4x4 + x3 + x2 + x+ 1
)y (x) = 1
3
(x4 + 2x3 + 2x+ 1
)Par exemple, pour x = 100026508, q (x) est premier (212 bits),r (x) est presque premier (2 + 158 bits) et
y (x) = 47 · 227 · 3529 · 27759659 · 31926380379504181
Prenons n = 3529 ; on trouve la courbe d’équation :
Y 2 = X3 + 32465585675528475154686711463989\30389227646675927893599247518644X
+ 10509028022025889317738018597831\15352914330802852418162001031235
mod 33404087284979282356159367134485\14719712300943298532712491943583
![Page 36: Construction de courbes elliptiques pairing-friendly · 2021. 5. 7. · Construction de courbes elliptiques pairing-friendly Gaëtan BISSON Logarithme discret Courbes elliptiques](https://reader036.fdocuments.fr/reader036/viewer/2022070220/61337c4bdfd10f4dd73b1e86/html5/thumbnails/36.jpg)
Constructionde courbeselliptiques
pairing-friendly
Gaëtan BISSON
17/17
C’EST TOUT !
Merci pour votre attention.