La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Courbes elliptiques.

Présentations similaires


Présentation au sujet: "Courbes elliptiques."— Transcription de la présentation:

1 Courbes elliptiques

2 Protocole de Diffie-Hellman
Alice choisit x et envoie gx mod N à Bob Bob choisit y, calcule K=(gx)y mod N qu’il conserve et envoie gy mod N à Alice Alice calcule K=(gy)x mod N Problème: les exponentiations coûtent chers en calcul et/ou en matériel

3 Analyse du protocole On utilise la notion de groupe des entiers modulo N. On a donc besoin d’un groupe avec une exponentiation. Le groupe doit être commutatif K=(gx)y mod N =(gy)x mod N Le problème du logarithme discret doit être difficile

4 Courbes elliptiques dans R2
y2=x3+ax+b

5 Corps de Galois Pour p premier et n entier supérieur ou égal à 1, on appelle GF(pn) le corps de Galois à pn éléments. Un élément de cet ensemble est représenté comme un n-uplet de p éléments de Z/pZ: e=(e1,…,en). Cet ensemble est muni d’une addition et d’une multiplication. En fait, c’est un corps: tout élément non nul est inversible. L’addition est simple: c’est l’addition composantes à composantes dans Z/pZ. La multiplication est plus compliquée, mais plus simple qu’une multiplication modulo un nombre de la taille de pn. Pour p et n fixé, GF(pn) est unique à un isomorphisme près.

6 Courbes elliptiques sur GF(2n)
Soit a et b dans GF(2n) avec b non nul. La courbe elliptique E associée est l’ensemble des points (x,y) dans (GF(2n))2 tels que y2+xy=x3+ax+b auquel on adjoint un point spécial O appelé point à l’infini. La définition est différente pour p>2.

7 Addition dans les courbes elliptiques
P+O=O+P=P pour tout P dans E Si P=(x,y), alors (x,y)+(x,x+y)=O dans P. Le point (x,x+y) est noté –P. Si P=(x,y) alors P+P=(x’,y’) avec x’=x2+b/x2, y’=x2+(x+y/x)x’+x’. Si P=(x1,y1), Q=(x2,y2), PQ, alors P+Q=(x3,y3) avec x3=R2+R+x1+x2+a, y3=R.(x1+x3)+x3+y1 où R=(y2+y1)/(x2+x1). (E,+) est un groupe commutatif.

8 Composante homogène Afin d’économiser du temps de calcul, on utilise parfois une représentation homogène. (x,y,z) représente en fait (x/z,y/z) et on récrit les règles d’additions pour éviter les divisions qui sont plus coûteuses. Exemple: P=(x,y,z) alors 2P=(x’,y’,z’) avec x’=zx5+bz5x, y’=(x2+yz)(x4+bz4)+bz5x, z’=x3z3.

9 Exponentielle et logarithme discret
Soit E une courbe elliptique et P un point de E. On définit l’exponentielle de P par 0.P=O, n.P=(n-1).P+P si n  1 et (-n).P = -(n.P) si n  -1. En utilisant la duplication, on peut calculer n.P par la méthode binaire classique. Le problème du logarithme discret consiste à calculer n, étant donné les valeurs de P et n.P. Ce problème est réputé au moins aussi difficile que le problème du logarithme discret dans les entiers modulo. On pense même qu’il est plus compliqué.

10 Diffie-Hellman en courbes elliptiques
Alice choisit un point P aléatoirement sur une courbe elliptique E et un entier n. Alice calcule n.P et l’envoie à Bob. Bob choisit un entier m, calcule K=m.(n.P) et envoie m.P à Alice. Alice calcule K=n.(m.P). Problèmes: déterminer une courbe elliptiques et choisir des points aléatoirement dans la courbe.

11 Choix d’une courbe elliptique
E est définie par l’équation y2+xy=x3+ax+b. Si on choisit aléatoirement a et b, pour choisir un point sur E, il faut résoudre une équation du troisième degré sur GF(2n)  Problème difficile. En fait, on choisit un point quelconque x0, y0 et on choisit a. b a alors une solution unique que l’on peut calculer facilement. Si on doit choisir plusieurs points aléatoirement sur la courbes on calculera N.(x0,y0) avec n très grand aléatoire. En fait N>>2n.

12 EC-DSA Problème: on a une fonction de hachage publique h (genre MD-5) et on veut signer des messages. EC-DSA est la contrepartie de l’algorithme DSA classique au niveau des courbes elliptiques.

13 EC-DSA (Description) On suppose que l’ordre de P est q (i.e. q.P=0)
Alice choisit a aléatoire dans [0,q-1]. Elle calcule aP qu’elle publie et conserve secrètement a. Alice veut signer un message m. Elle calcule r=kP et s=k-1(h(m)+ar) mod q. Alice envoit (m,r,s) à Bob. Bob vérifie que kP=h(m)s-1.P+rs-1(aP). Si oui, le message m a bien été envoyé par Alice. Problème: Comment calculer l’ordre de P ? Est-ce qu’il existe toujours ?

14 Rappel sur les groupes Soit (G,+) un groupe fini de cardinal N et dont l’unité pour l’addition est 0. Soit x un élément de G, on définit la suite v0=0, vn+1=vn+x. Alors il existe k>0 avec vk=0. La plus petite valeur pour laquelle vk=0 s’appelle l’ordre de x. L’ordre de x divise N (théorème de Lagrange).

15 Compter les points d’une courbe elliptique
Dans l’EC-DSA, on a pas besoin nécessairement de l’ordre exact de l’élément: un multiple suffit. On peut donc prendre q comme étant égal au cardinal de la courbe elliptique. L’algorithme de Schoof permet de compter les points d’une courbes elliptiques. Certaines courbes elliptiques ont par construction un nombre de points facile à calculer. Enfin les courbes elliptiques faisant partie de standards bien définis sont données dans les descriptions techniques avec leur nombre de points. Exemple:

16 RSA en courbes elliptiques
Il existe des définitions qui utilise des courbes elliptiques dites singulières (Demytko, Maurer). Ces systèmes sont définis sur des courbes elliptiques à coefficients dans des anneaux. Malheureusement, il existe des attaques contre ces systèmes. Pour éviter ces attaques, le choix des courbes doit suivre certaines règles.

17 Intérêt pratique Calculs plus simples qu’avec les systèmes à base de modulo. De plus la sécurité semble supérieure. 1 2 3 4 5 6 DES 56 80 112 128 192 256 ECC 160 224 384 512 RSA 1024 2048 3072 7680 15360 Comparaison: Taille de clés assurant le même niveau de sécurité

18 Conclusion La cryptographie à courbes elliptiques est une alternative à la cryptographie classique à clé publique. Les algorithmes sont moins gourmands en termes de temps de calcul et de matériel. Ils permettent aussi un débit de données plus élevés. La cryptographie à courbes elliptiques est sans doute une approche appelée à se répandre dans les applications pratiques. Il existe d’autres constructions à bases de courbes (courbes hyper-elliptiques de Kobler).


Télécharger ppt "Courbes elliptiques."

Présentations similaires


Annonces Google