Brevet FR2941115A1 — publié le 20100716

CODAGE DE POINTS D'UNE COURBE ELLIPTIQUE La présente invention concerne la cryptographie de messages basée sur l'utilisation de points d'une courbe elliptique, et plus particulièrement une telle cryptographie de manière déterministe. Afin d'appliquer un calcul cryptographique à un message, on met classiquement en oeuvre des algorithmes d'insertion de valeurs arbitraires au sein de structures mathématiques. A cet effet, les courbes elliptiques sont des structures mathématiques qui permettent de faciliter la mise en oeuvre de tels calculs cryptographiques et de sauver de la place mémoire par rapport à la mise en oeuvre d'autres calculs cryptographiques. Toutefois, les algorithmes efficaces d'insertion de valeurs arbitraires utilisant les courbes elliptiques sont probabilistes. Par conséquent, le temps de mise en oeuvre de tels algorithmes n'est pas constant, il est fonction du message à coder. Ainsi, si un attaquant détermine différents temps de mise en oeuvre de l'algorithme appliqué, il peut obtenir des informations sur le message codé. Afin de masquer le temps utilisé par un algorithme d'insertion probabiliste, il est possible de prévoir d'ajouter des étapes inutiles dans cet algorithme afin que son application s'étale toujours sur une période de temps de longueur identique, quel que soit le message traité. Toutefois, un tel traitement est lourd et consomme beaucoup de temps. La présente invention vise à améliorer la situation. Un premier aspect de la présente invention propose un procédé d'exécution d'un calcul cryptographique dans un composant électronique comprenant une étape d'obtention de points P sur une courbe elliptique vérifiant l'équation suivante : Y2+a1XY+a3Y=X3+a2X2+a4+X+a6 (1) où a1, az , a3 , a4 et a6 sont des éléments d'un ensemble A d'éléments, où A est un anneau des entiers modulaires Z/qZ où q est un entier positif produit d'un nombre I de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, ou A est un corps fini Fq avec q puissance d'un nombre entier premier; où X et Y sont les coordonnées des points P et sont des éléments de A, ledit procédé comprenant les étapes suivantes : déterminer un paramètre (11) ; /b/ obtenir des coordonnées X et Y d'un point P (13) par application d'une fonction (12) audit paramètre ; la fonction cp d'Euler de A vérifiant l'équation : cp(A) mod 3 = 1, la fonction étant une fonction inversible et déterministe exprimée par une fraction rationnelle en al, a2 ,a3 , a4 et a6 et en ledit paramètre dans A, et atteignant au moins un nombre q/4t de points P, avec I égal à 1 pour un corps fini Fq; /c/ utiliser ledit point P dans une application cryptographique de chiffrement ou de hachage ou de signature ou d'authentification ou d'identification. On entend par les termes `atteindre au moins un nombre donné de points', le fait que la fonction considérée est adaptée pour fournir en sortie au moins ce nombre donné de points différents. Grâce à ces dispositions, on peut réaliser, dans un composant électronique, un calcul cryptographique qui est basé sur des points d'une courbe elliptique, sans toutefois fournir d'informations à un potentiel attaquant, et tout en maintenant un niveau d'efficacité de mise en oeuvre élevé. En effet, la fonction permettant d'obtenir un point sur la courbe elliptique étant une fraction rationnelle, elle est de ce fait une fonction déterministe et non plus probabiliste :, le temps pris pour la calculer est constant quel que soit le paramètre d'entrée. Dans ces conditions, l'obtention de points sur la courbe elliptique est efficace et le temps de calcul ne dépend plus du message à coder, contrairement à l'art antérieur. L'anneau A peut être un anneau RSA (pour `Rivent Shamir Adleman' en anglais). Dans ce cas, cet anneau peut s'écrire Z/qZ, avec q égal au produit de deux nombres premiers, pour lequel cp(A) est difficile à calculer. On note que la fonction d'Euler cp sur un anneau A est la fonction qui fournit le nombre d'éléments inversibles dans cet anneau A. Dans le cas où A est un corps fini Fq, on a : cp(A)=q-1 En se plaçant dans un anneau d'entiers modulaires Z/qZ où q est un entier positif produit d'un nombre I de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, on a : qq(A)=ppcm(p1-- 1, p2-1, ..., pi- 1) où ppcm signifie plus petit commun multiple et les pi étant les I nombres premiers. Etant donné qu'une fonction déterministe selon un mode de réalisation de la présente invention s'exprime sous la forme de fractions rationnelles, leur application prend toujours le même temps quel que soit le message, ou la donnée, sur lequel elle est appliquée. En effet, dans l'ensemble A, les fonctions de la mise à la puissance 3 et 1/3 sont bijectives. Par conséquent, elles peuvent s'écrire sous la forme de fractions rationnelles et, de ce fait, la fonction déterministe f peut s'écrire sous forme de fractions rationnelles. Dans l'ensemble A, le calcul de la puissance 1/3 est le même que le calcul de la puissance (2c)(a)+1)/3. Ce dernier est un nombre entier car cp(A) mod 3 = 1. L'équation suivante est vérifiée dans A : xm(A) =1 De cette équation se déduit l'équation suivante : (x3)(2�(A)+I)/3 _x3(2q(A)+l)/3 _x20(A)+l =x Par conséquent, on peut écrire : x(2�(A)+I)/3 _ xl/3 Or, la fonction f qui permet d'obtenir un point P de la courbe elliptique comprend cette mise à la puissance 1/3. Ainsi, grâce au fait que la fonction de mise à la puissance 1/3 se calcule en temps constant quel que soit l'élément de A, il est possible d'obtenir des points de la courbe elliptique sans avoir à gérer des probabilités. Par conséquent, le temps d'exécution du calcul cryptographique ne dépend pas du message sur lequel ce calcul est effectué, comme cela est le cas pour la mise en oeuvre d'un tel calcul de manière probabiliste tel qu'effectué dans l'art antérieur. De plus, dans le contexte où A correspond au corps fini Fq, la fonction déterministe f peut fournir au moins q/4 points P de la courbe elliptique. Dans le contexte où A correspond à un anneau d'entiers modulaires Z/qZ où q est un entier positif produit d'un nombre I de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, la fonction déterministe f peut fournir au moins q/4' points P de la courbe elliptique. Un tel nombre de points sur la courbe elliptique, obtenus ainsi de manière déterministe permet de nombreuses applications cryptographiques avec un niveau de sécurité élevé contre les potentielles attaques. Dans un mode de réalisation de la présente invention, la courbe elliptique utilisée est une courbe de type Weierstrass, ou encore dite courbe 20 de caractéristique p. Ici, on considère que q est différent de 2n. L'équation (1) peut s'écrire : Y2 = X3 + aX +b , avec a=a2 et b=a6. La fonction déterministe fournit les coordonnées d'un point de la courbe elliptique selon les équations respectives suivantes : 6 X =(v2 -b_ _U (2(o(A)+1)/3 + u2 271 3 Y=ux+v où u est le paramètre déterminé à l'étape /al, et OÙ v=(3a-u4)/(6u) 30 Dans un autre mode de réalisation, la présente invention est appliquée aux courbes elliptiques en caractéristiques 2. 25 et (4) (5) Dans ce cas, q vérifie l'équation : q=2"; où n est un nombre entier impair, l'équation (1) s'écrit : Y2+ XY = X3 +axe+b , avec a=a2 et b=a6 ; et la fonction déterministe fournit les coordonnées d'un point de la courbe elliptique selon les équations respectives suivantes : X =(w4 + w3 +b) 2tp(A)+1)'3 +W (16) Y = uX + w2 où u est le paramètre déterminé à l'étape /a/, et où w=a+u2+u. Dans un cas particulier avantageux, n est un nombre entier impair premier. En effet, un tel n permet de limiter certaines attaques. Dans ce contexte, la fonction déterministe peut avantageusement fournir au moins 2n-2 points P de la courbe elliptique. On peut avantageusement appliquer cette fonction à des courbes elliptiques de type Koblitz, cas particulier des courbes elliptiques de caractéristiques 2 dans lequel b est égal à 1 et a appartient à F2. En effet, en utilisant des courbes elliptiques de Koblitz, on peut mettre en oeuvre des calculs cryptographiques de manières plus rapide. On peut prévoir d'appliquer cette fonction déterministe à un résultat d'une fonction de hachage. Ainsi, à l'étape /a/, le paramètre u peut être obtenu par application d'une fonction de hachage h. Dans un mode de réalisation, la fonction de hachage est une fonction à sens unique. Cette propriété est conservée : la fonction issue de la combinaison de la fonction déterministe et de la fonction de hachage présente cette propriété d'être à sens unique. Ici, on obtient alors in fine une fonction sur une courbe elliptique qui est à sens unique, comme une fonction de hachage. Cette fonction est en outre résistante aux collisions. On peut également prévoir d'appliquer cette fonction déterministe de telle sorte qu'elle présente la caractéristique de ne pas être différentiable (ou la caractéristique d'être 'indifferentiable' en anglais) d'une fonction aléatoire qui serait appliquée sur une courbe elliptique. Cette caractéristique présente des avantages, notamment lorsque cette fonction est appliquée dans un schéma cryptographique qui est prouvé comme étant sûr dans un modèle où les fonctions de hachage sont supposées être aléatoires. En effet, comme la fonction déterministe présente la caractéristique d'être non différentiable d'une fonction aléatoire, on obtient un schéma cryptographique sûr par application de cette fonction dans ce même type de schéma cryptographique. A l'étape /a/, le paramètre u peut être obtenu par application d'une première fonction de hachage h et d'une seconde fonction de hachage h'. On note G le générateur d'un groupe de points de la courbe elliptique. Le calcul cryptographique peut comprendre l'application de la fonction suivante : f (h) + h'.G où f est la fonction déterministe, et où G est un générateur d'un groupe de points de la courbe elliptique. Ce groupe de points de la courbe elliptique peut correspondre aux points qui sont utilisés par le calcul cryptographique selon un mode de réalisation de la présente invention. Un deuxième aspect de la présente invention un procédé d'authentification par au moins un mot de passe mettant en oeuvre un procédé d'exécution d'un calcul cryptographique selon le premier aspect de la présente invention, dans lequel à l'étape /a/ on détermine le paramètre en fonction du mot de passe, ledit mot de passe étant compris dans le paramètre, et dans lequel une étape d'authentification est effectuée sur la base du point P. Un troisième aspect de la présente invention propose un procédé de chiffrement d'une donnée, ledit chiffrement étant basé sur l'identité de Boneh-Franklin sur une courbe elliptique admettant une opération de couplage ; où l'identité est une valeur numérique identifiant une entité, ledit procédé comprenant les étapes suivantes : /a/ obtenir un point par application à l'identité d'un procédé d'exécution d'un calcul cryptographique selon la revendication 6 ; /b/ obtenir une donnée chiffrée en combinant ledit point, un paramètre aléatoire et la donnée. On entend ici par le terme 'combiner', le fait d'appliquer une combinaison des opérations de couplage, de hachage, une opération de 'ou exclusif' et une multiplication scalaire. Un quatrième aspect de la présente invention propose un procédé d'exécution d'un calcul cryptographique dans un composant électronique comprenant une étape d'obtention de points P sur une courbe elliptique vérifiant l'équation suivante : Y2+a1XY+a3Y=X3+a,X2+a4+X+a6 (1) OÙ a, , a2 , a3 ,a4 et a6 sont des éléments d'un ensemble A d'éléments, où A est un anneau des entiers modulaires ZIgZ où q est un entier positif produit d'un nombre I de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, ou A est un corps fini Fq avec q puissance d'un nombre entier premier; où X et Y sont les coordonnées des points P et sont des éléments de A, ledit procédé comprenant les étapes suivantes : /a/ déterminer un point P de coordonnées X et Y sur la courbe elliptique ; /b/ obtenir un paramètre par application d'une fonction au point P ; la fonction (pi d'Euler de A vérifiant l'équation : Ici, il convient de noter que la fonction déterministe telle qu'énoncée dans le premier aspect de la présente invention est une fonction inversible. Elle peut de ce fait avantageusement être utilisée dans le sens inverse de l'utilisation qui en est faite dans ce premier aspect de la présente invention. En effet, il peut être utile dans le domaine cryptographique de partir des points de la courbe elliptique pour obtenir le paramètre qui leur correspond via la fonction inverse de la fonction énoncée dans le premier aspect, notamment pour une application de compression de données. Ainsi, un cinquième aspect de la présente invention propose un procédé de compression de données dans lequel les données à compresser correspondent respectivement à des couples de données X et Y correspondant à des coordonnées de points P d'une courbe elliptique vérifiant l'équation suivante : Y2+a1XY+a3Y=X3+a2X2+a4+X+a6 (1) où a, , a2 , a3 ,a4 et a6 sont des éléments d'un ensemble A d'éléments, où A est un anneau des entiers modulaires Z/qZ où q est un entier positif produit d'un nombre I de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier 20 supérieur ou égal à 2, ou A est un corps fini Fq avec q puissance d'un nombre entier premier; où X et Y sont les coordonnées des points P et sont des éléments de A, dans lequel on applique à chacun desdits couples de données les étapes /a/ à 25 /c/ d'un procédé d'exécution d'un calcul cryptographique selon le quatrième aspect de la présente invention, et dans lequel lesdits couples de données sont représentés par les paramètres respectivement obtenus à l'étape /c/. Un sixième aspect de la présente invention propose un dispositif 30 électronique comprenant des moyens adaptés pour la mise en oeuvre d'un procédé d'exécution d'un calcul cryptographique selon le premier aspect de la présente invention. Un septième aspect de la présente invention propose un dispositif électronique comprenant des moyens adaptés pour la mise en oeuvre d'un procédé d'exécution d'un calcul cryptographique selon le quatrième aspect de la présente invention. Un huitième aspect de la présente invention propose une carte à puce comprenant un dispositif électronique selon le sixième ou septième aspect de la présente invention. D'autres aspects, buts et avantages de l'invention apparaîtront à la lecture de la description d'un de ses modes de réalisation. L'invention sera également mieux comprise à l'aide de la figure 1 qui illustre les principales étapes d'un calcul cryptographique selon un mode de réalisation de la présente invention. Toute courbe elliptique sur A vérifie l'équation suivante : Y2+a1XY+a3Y=X3+a1X2+a4+X+a6 (1) où a, , a, , a3 , a4 et a6 sont des éléments de A, où X et Y sont des éléments de l'ensemble A. Si l'équation suivante est vérifiée : (p(A) = 1 mod 3 (2) avec cf) la fonction d'Euler appliquée à A, alors la fonction de mise à la puissance 3 et la fonction de mise à la puissance 1/3 sont des fonctions calculables efficacement en temps constant quelle que soient les valeurs sur lesquelles elles sont calculées. Cette caractéristique permet d'obtenir de manière déterminée un point P de la courbe elliptique en fonction d'un paramètre, le temps de calcul ne dépendant pas du paramètre auquel est appliquée cette fonction déterministe f. Cette fonction f est notée par la suite également fa h ou encore fa selon le type d'équation de courbes elliptiques considérées. La figure 1 illustre, à une étape 11, la détermination d'un paramètre u, élément du corps fini Fq considéré. Puis, on applique à ce paramètre la fonction déterministe f à une étape 12 pour, in fine, obtenir un point P de la courbe elliptique, de manière déterministe. Toutes ces étapes sont effectuées dans un anneau A, vérifiant l'équation (2). Les sections suivantes présentent l'application de ces caractéristiques dans des cas particuliers d'équations de courbe elliptique. Un mode de réalisation de la présente invention peut être appliqué aux courbes elliptiques de type Weierstrass, c'est-à-dire en caractéristique p avec p>3, et aux courbes elliptiques en caractéristiques 2. Dans les sections suivantes, la courbe elliptique considérée est de type Weierstrass sur un corps Fq. Dans ce contexte, le cardinal q du corps fini de Galois considéré est égal à p pour p nombre premier différent des valeurs 2 et 3. L'équation (1) peut s'écrire selon l'équation de Weierstrass suivante : Y2=X3+aX+b (3) où a et b sont des paramètres de la courbe elliptique, notée Eu,b . Dans le corps fini A=Fq comprenant un nombre q d'éléments, où q vérifie l'équation (2), la fonction f de mise à la puissance 3 et la fonction de mise à la puissance 1/3 sont des bijections calculables efficacement en temps constant quelles que soient les valeurs sur lesquelles elles sont calculées. Dans ces conditions, les coordonnées X et Y d'un point P de la courbe elliptique vérifient les équations respectives suivantes : 6 / X - (v2 _b_)(23 + u 2 (4) 27 3 et Y=uX+v (5) où v = (3a ùu4)/(6u) (6) où u est un paramètre selon un mode de réalisation de la présente invention, u appartenant au corps fini Fÿ . On note que, dans le corps fini Fq, la mise à la puissance ((2(p(A)+1)/3) correspond à la mise à la puissance 1/3. Ainsi, dans le cas où la courbe elliptique utilisée pour la mise en oeuvre d'un calcul cryptographique est de type Weierstrass, on peut avantageusement obtenir des points P de la courbe elliptique en fonction du paramètre u, selon les équations (4) et (5), de manière déterministe à temps de calcul constant par rapport au paramètre u. En effet, un point P ayant des coordonnées vérifiant les équations (4) et (5) correspond à un unique point de la courbe elliptique selon l'équation (3) car l'intersection de la droite selon l'équation (5) avec la courbe elliptique considérée (3) vérifie le système d'équations suivant : Y2=X3+aX+b (7) et Y = uX + v (5) Ce système d'équation peut s'écrire comme suit : X3ùu2X2+(aù2uv)X+bùv2 =0 (8) et Y=uX+v (6) On peut encore simplifier ces dernières équations comme suit : 4 X3-u2X2+(3 )X+bùv2 =0 (9) et Y=uX+v (6) Ainsi, ce système d'équations peut finalement s'écrire : 6 (X-3)3+b-v2+~=0 (10) et Y = uX + v (6) L'équation (10) correspondant à l'équation (4), on en déduit que P est un point de la courbe elliptique considérée. Par conséquent, un point P dont les coordonnées X et Y vérifient les équations (4) et (5) est un point de la courbe elliptique selon l'équation (3). Par la suite, on note : - fa.b la fonction qui fait correspondre à un élément de Fq* un point de la courbe elliptique (3) ; 0 ne peut être une entrée de fa b autrement une division par 0 serait faite. Néanmoins, puisque le l'élément neutre du groupe de points de la courbe elliptique ne peut être obtenu par fa b , il est défini que 0 par fa ,b correspond à l'élément neutre du groupe de point. La fonction fa ,b est une fonction déterministe quand la fonction de mise à la puissance 3, ou encore mise à la puissance 1/3, est une fonction bijective dans le corps fini de Galois considéré. On peut noter que le coût d'appliquer une telle fonction fa ,b dans ces conditions correspond approximativement à une élévation à une puissance dans ce corps fini Fq. Afin de décoder un message qui a été codé selon un calcul exécuté dans un mode de réalisation de la présente invention, il est prévu de déterminer une ou plusieurs valeurs de paramètre u ayant permis d'obtenir un point P donné de la courbe elliptique. A cet effet, les sections suivantes indiquent comment calculer la fonction inverse de la fonction fa b . Soit u, et u2 deux éléments de Fq*, chacun étant une solution de 10 l'équation suivante : u 4 û 6u2x + 6uy -3a = 0 (11) où a, x et y sont des éléments de Fq. Soit b vérifiant l'équation suivante : b = y2ûx3 ûax 15 Dans ces conditions, l'équation suivante est alors vérifiée : fa.b (u1) = (x1 , y,) = fa.b (u2) = (x2, y2) = fa.b (u) = (x, y) (12) En effet, tout d'abord, les points P, de coordonnées (x1, y1), P2 de coordonnées (x2,y2) et P de coordonnées (x,y) sont tous trois des points de la courbe elliptique Ea,b . 20 De plus, d'après l'équation (11), les points P et P, sont situés sur une droite d'équation suivante : Y=u,X+3aùu; (13) 6u, Or, comme démontré ci-avant, puisque q vérifie l'équation (2), la courbe elliptique (3) et la droite (13) ci-dessus se coupent en un seul point. Ainsi, les 25 points P et P, correspondent à un seul et unique point. En appliquant le même raisonnement aux points P et P2, on en déduit de même que P et P2 correspondent à un seul point également. Par conséquent, P, P, et P2 correspondent au même point de la courbe elliptique. Ainsi, il existe un paramètre u tel que : 30 .fa,b (u) = (x, y) si et seulement si le paramètre u est une solution de l'équation (11). Ainsi, la résolution de l'équation (11) permet de déterminer un paramètre u en fonction duquel on obtient un point P de la courbe elliptique selon l'équation suivante : fa,b(u) = P L'équation (11) peut être résolue par des algorithmes usuels tels que l'algorithme de Berlekamp [Shoup, Journal of Symbolic Computation Vol 20:p363-397, 1995]. Grâce à cette équation (11), il est donc possible d'inverser aisément la fonction fa b afin de retrouver le paramètre u correspond à un point P de la courbe elliptique. Cette propriété permet également de borner le nombre de points atteint par fu b . Soit I m(fu b) l'ensemble des points image de la fonction f~ b . L'ensemble image lm( fa b) a un cardinal plus petit que q, puisque q est le cardinal de Fq. De plus, l'équation (11) permet de démontrer que pour chaque point image, il y a au maximum 4 antécédents. De fait, le cardinal de Fq est au plus égal à 4 fois le cardinal de I m(fa b ). On obtient donc l'inéquation suivante : q/4 #lm(fa)) `q Il est également possible de donner un résultat heuristique sur le 20 cardinal de lm( f~ b ). L'équation (11) est une équation de degré 4 dans le corps fini Fq. Dans un corps fini Fq, il y a une probabilité de 2/5 pour qu'un quelconque polynôme de degré 4 n'ait pas de racine. On peut donc considérer que 3/5 des points de la courbe elliptique sont dans l'ensemble des points image I m(fu b ) et de ce fait peuvent être utilisés dans le calcul 25 cryptographique selon un mode de réalisation de la présente invention. Dans un mode de réalisation de la présente invention, on peut utiliser des courbes elliptiques sur un anneau Z/qZ où q est le produit de I nombre premiers p,,..., p,. Le théorème des restes chinois, résultat d'arithmétique modulaire traitant de résolution de systèmes de congruences, affirme que Z/qZ 30 est isomorphe à Z/p,Z x ... x Z/p,Z. De ce fait, il est équivalent d'étudier les courbes elliptiques sur chacun des Z/p;Z. Or, puisque chaque pi est un nombre premier, Z/p;Z est en fait un corps que l'on peut noter Fo. De plus, comme chaque pi est supérieur strictement à 3, l'équation d'une courbe elliptique sur Fp; est de type Weierstrass. Ainsi les équations (4) et (5) étant démontrées pour chacun des Fp;, elles sont également vraies pour Fp1 x ... x Fp1= Z/qZ. De plus, pour chacun des Fp;, on a P/4s#Im(f,h)`-Pi Ceci permet donc de prouver que, sur Z/qZ, on a pl/4x...xpi/4=q/4'#Im(fUh)spix...xp,=q Dans un mode de réalisation de la présente invention, on peut également utiliser des courbes elliptiques en caractéristiques 2 qui vérifient l'équation suivante : Y2+ xY = x3 +ax2+b (15) où a et b sont des éléments du corps fini de Galois A= F,,, . Le nombre n peut être un nombre premier impair pour limiter les attaques possibles. On a ici: 2"mod3=2 La fonction de mise à la puissance 3, et la fonction de mise à la puissance 1/3, est ici aussi une bijection calculable en temps constant quelles que soient les valeurs sur lesquelles elle est appliquée sur ce corps fini de Galois. On note u et w les paramètres éléments de F2,, , qui vérifient l'équation suivante : w=a+u2+u Les points P de coordonnées X et Y vérifiant respectivement les équations suivantes sont sur la courbe elliptique (15) : X = (W4 + w3 + b)(2ÇO(A)+l)13 + w (16) Y=uX+w2 (16') Ainsi, dans le cas où la courbe elliptique utilisée pour la mise en oeuvre d'un calcul cryptographique est en caractéristique 2, on peut avantageusement obtenir des points P de la courbe elliptique en fonction du paramètre u, selon les équations (16) et (16'), de manière déterministe. En effet, un point P ayant des coordonnées vérifiant les équations (16) et (16') correspond à un unique point de la courbe elliptique selon l'équation (15) car l'intersection de la droite selon l'équation (16') avec la courbe elliptique considérée (15) vérifie le système d'équations suivant : On peut encore simplifier ces dernières équations comme suit : X3+wX2+w2X +b+w4 =0 (18) et Y = uX + w2 (16') Ainsi, ce système d'équations peut finalement s'écrire : (X+w)3+b+w3+w4=0 (19) et Y = uX + w2 (16') L'équation (19) correspondant à l'équation (16), on en déduit que P est un point de la courbe elliptique considérée. Par conséquent, un point P dont les coordonnées X et Y vérifient les équations (16) et (16') est un point de la courbe elliptique selon l'équation (15). Comme dans le cas des courbes elliptiques de type Weierstrass, ici également il est possible de borner le nombre de points compris dans l'image lm( fa) de fa . Cet ensemble lm( fa) comprend au plus 2" éléments puisque c'est le nombre d'éléments de l'ensemble de départ F2ä . L'équation (16') peut s'écrire : O=Y+a+uX +u2+u4 (17) Pour une valeur de u qui résolve l'équation ci-dessus, on a : f~(u)=(x,y) Y2+XY=X3+aX2+b (15) et Y = uX + w2 (16') Ce système d'équation peut s'écrire comme suit : (17) X3+(a+u+u2)X2+w2X+b+w4=0 et Y = uX + w2 (16') L'équation (17) est de degré 4. Par conséquent, au moins 4 valeurs différentes du paramètre u résolvent cette équation. Ainsi, il y a au moins 2" /4 = 2"ù2 points image de fa. II y a donc au moins 2"ù2 éléments dans l'ensemble de points image lm( fa ). Grâce aux caractéristiques de la présente invention, on dispose d'une fonction déterministe f, notée fa.b ou fa selon le type de courbes elliptiques considéré, qui a pour ensemble image un ensemble de points sur une courbe elliptique, le nombre de ces points étant élevé, puisqu'il est au minimum égal au quart du nombre q (cardinal du corps fini considéré) dans le cas des courbes elliptiques de type Weierstrass, ou au minimum égal à 2n-2 dans le cas des courbes elliptiques en caractéristiques 2. Cette fonction déterministe f est basée sur la caractéristique bijective de la fonction de la puissance 3 (et puissance 1/3) dans le corps fini de Galois considéré sur lequel elle est appliquée. Par la suite, une telle fonction déterministe selon un mode de réalisation de la présente invention est utilisée pour la mise en oeuvre d'une fonction de hachage sur une courbe elliptique. En appliquant une fonction f ,,b selon un mode de réalisation de la présente invention à une chaine de bits résultant d'une fonction de hachage h, 20 on obtient une fonction de hachage comme suit : f"b(h) (18) Cette fonction (18) sur une courbe elliptique présente avantageusement les caractéristiques suivantes : elle est à sens unique dès que la fonction de hachage h est à 25 sens unique ; et elle est résistante aux collisions. Une telle fonction trouve à s'appliquer dans de nombreux calculs cryptographiques. Dans un mode de réalisation de la présente invention, on peut prévoir 30 de combiner une fonction L ,b selon un mode de réalisation de la présente invention à deux fonctions de hachage pour obtenir une fonction de hachage sur une courbe elliptique qui ne soit pas différentiable d'une fonction aléatoire appliquée sur une courbe elliptique. Soient deux fonctions aléatoires de hachage h et h'. La fonction de hachage h est appliquée sur l'ensemble (0,1}* vers A. La fonction h' est 5 appliquée sur l'ensemble (0,1}* vers le corps fini FN où N est l'ordre du groupe de points utilisés de la courbe. Dans ces conditions, la fonction suivante est une fonction de hachage sur une courbe elliptique qui n'est pas différentiable d'une fonction aléatoire sur une courbe elliptique : 10 fu.b(h)+h' .G (19) Une fonction fa ,I, selon un mode de réalisation de la présente invention est utilisée pour déterminer un point sur la courbe elliptique. G, un point générateur du groupe de points utilisés, c'est-à-dire points image de fat, dans le contexte de la mise en oeuvre de la présente invention, est utilisé pour 15 garantir une distribution uniforme des points déterminés. La présente invention peut avantageusement être mise en oeuvre dans tout type de calcul cryptographique utilisant des courbes elliptiques. Elle peut notamment être avantageuse au sein de protocoles d'authentification par mot de passe, comme PACE (pour 'Password Authenticated Connection 20 Establishment' en anglais). Dans ce cas, elle permet une amélioration des performances par l'utilisation d'une fonction (18), tout en ne permettant aucune attaque liée au temps d'exécution du calcul cryptographique. La présente invention peut également être avantageusement appliquée dans le contexte des protocoles respectant la vie privée, tels que ceux qui sont 25 utilisés pour le contrôle de documents d'identité électronique, comme les passeports électroniques. En effet, en écoutant de tels protocoles, il est possible de déterminer les paramètres des courbes elliptiques utilisées, comme décrit dans le document Why public elliptic curve parameters are public' disponible sous 30 http:l/www.larc.usp.br/-pbarreto/tales1.html. Or, ces paramètres permettent de déterminer la nationalité des personnes ayant ces documents électroniques. En utilisant la fonction (19), qui peut être applicable de manière non différentiable avec une fonction aléatoire, on peut obtenir une représentation des points qui est indépendante des paramètres publics de la courbe elliptique. Dans le contexte des schémas de chiffrement basé sur l'identité, la présente invention peut être également avantageusement appliquée. Le schéma de chiffrement de Boneh-Franklin (Dan Boneh et Matthew K. Franklin, Actes de la conférence Crypto 2001) est un exemple d'utilisation d'une telle construction. En effet, pour pouvoir être utilisé dans des conditions sécurisées, ce schéma requiert une courbe elliptique sur laquelle une fonction aléatoire existe. La présente invention fournit une construction qui, à partir d'une fonction aléatoire classique, retourne une fonction aléatoire sur la courbe elliptique. Néanmoins, les courbes elliptiques qui conviennent à un chiffrement selon Boneh-Franklin requièrent une fonction particulière : une fonction de couplage de points. Une fonction de couplage est une fonction ê qui prend en entrée deux points et retourne une valeur sur un corps fini. Ce couplage est intéressant car il a des propriétés mathématiques remarquables. L'équation suivante est vérifiée : ê(cG,dG)=gcd où g est un générateur du corps fini d'arrivée ; où c et d sont les logarithmes discrets de cG et dG en base G ; et où G est un générateur du groupe de points utilisés. Les auteurs du schéma Boneh-Franklin n'ont proposé qu'un seul type de courbes elliptiques pour leur schéma. La présente invention permet d'augmenter le nombre de courbes elliptiques sur lesquelles leur schéma de chiffrement peut être mis en oeuvre. En effet, grâce aux dispositions de la présente invention, ce schéma de chiffrement peut être mis en oeuvre sur toutes les courbes où un couplage est calculable efficacement et où l'équation (2) est vérifiée. Dans un mode de réalisation de la présente invention, on peut avantageusement effectuer de la compression de coordonnées de points. En effet, les dispositions de la présente invention permettent de représenter les coordonnées X et Y d'un point P par un paramètre u. Par conséquent, on peut utiliser le paramètre u pour effectuer de la compression car u représente alors un point P(X,Y) avec deux fois moins d'informations. REVENDICATIONS1. Procédé d'exécution d'un calcul cryptographique dans un composant électronique comprenant une étape d'obtention de points P sur une courbe elliptique vérifiant l'équation suivante : Y2+a1XY+a3Y=X3+a2X2+a4+X+a6 (1) OÙ a, , a, , a3 , a4 et a6 sont des éléments d'un ensemble A d'éléments, où A est un anneau des entiers modulaires Z/qZ où q est un entier positif produit d'un nombre I de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, ou A est un corps fini Fq avec q puissance d'un nombre entier premier; où X et Y sont les coordonnées des points P et sont des éléments de A, ledit procédé comprenant les étapes suivantes : 15 /a/ déterminer un paramètre (11) ; /b/ obtenir des coordonnées X et Y d'un point P (13) par application d'une fonction (12) audit paramètre ; la fonction cp d'Euler de A vérifiant l'équation : cp(A) mod 3 = 1, 20 la fonction étant une fonction inversible et déterministe exprimée par une fraction rationnelle en a, , az, a3 , a4 et a6 et en ledit paramètre dans A, et atteignant au moins un nombre q/4' de points P, avec I égal à 1 pour un corps fini Fq ; /c/ utiliser ledit point P dans une application cryptographique de 25 chiffrement ou de hachage ou de signature ou d'authentification ou d'identification. 2. Procédé d'exécution d'un calcul selon la revendication 1, dans lequel A est différent de F2, , 10l'équation (1) s'écrivant : Y2=X3+aX+b,et où a=a2 et b=a6 ; dans lequel la fonction déterministe fournit les coordonnées d'un point de la 5 courbe elliptique selon les équations respectives suivantes : 6 2 X = (V2 _ b _ _ ) ( 2 / 3 + u 27 3 et Y=uX+v (5) où u est le paramètre déterminé à l'étape /a/, et OÙ v = (3a-u4)l(6u) (6) 3. Procédé d'exécution d'un calcul selon la revendication 1, dans lequel q vérifie l'équation : . q=2n, où n est un nombre entier impair, l'équation (1) s'écrivant : Y2+XY=X3+aX2+b où a=a2 et b=a6 ; dans lequel la fonction déterministe fournit les coordonnées d'un point de la 20 courbe elliptique selon les équations respectives suivantes : X = (w4 + w3 + b)(2V(A)+1)l3 + w (16) Y = uX + w2 où u est le paramètre déterminé à l'étape /a/, et où w=a+u2+u. 4. Procédé d'exécution d'un calcul selon l'une quelconque des revendications précédentes, dans lequel, à l'étape /a/, le paramètre est obtenu par application d'une fonction de hachage. 30 5. Procédé d'exécution d'un calcul selon la revendication 4, dans lequel la fonction de hachage est à sens unique. (4) 10 15 25 6. Procédé d'exécution d'un calcul selon l'une quelconque des revendications 1 à 5, dans lequel, à l'étape /a/, le paramètre est obtenu par application d'une première fonction de hachage h et d'une seconde fonction de hachage h', ledit calcul cryptographique comprenant l'application de la fonction suivante : f (h) + h'.G où f est la fonction déterministe, et où G est un générateur d'un groupe de points de la courbe elliptique. 10 7. Procédé d'authentification par au moins un mot de passe mettant en oeuvre un procédé d'exécution d'un calcul cryptographique selon l'une des revendications précédentes, dans lequel à l'étape /a/ on détermine le paramètre en fonction du mot de passe, ledit mot de passe étant compris dans 15 le paramètre, et dans lequel une étape d'authentification est effectuée sur la base du point P. 8. Procédé de chiffrement d'une donnée, ledit chiffrement étant basé sur l'identité de Boneh-Franklin sur une courbe elliptique admettant une opération 20 de couplage ; où l'identité est une valeur numérique identifiant une entité, ledit procédé comprenant les étapes suivantes : /a/ obtenir un point par application à l'identité d'un procédé d'exécution d'un calcul cryptographique selon la revendication 6 ; 25 /b/ obtenir une donnée chiffrée en combinant ledit point, un paramètre aléatoire et la donnée. 9. Procédé d'exécution d'un calcul cryptographique dans un composant électronique comprenant une étape d'obtention de points P sur une courbe 30 elliptique vérifiant l'équation suivante : Y2+a1XY+a3Y=X3+a2X2+a4+X+a6 (1)Où a, , az, a3 , a4 et a6 sont des éléments d'un ensemble A d'éléments, où A est un anneau des entiers modulaires Z/qZ où q est un entier positif produit d'un nombre 1 de nombres premiers différents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, ou A est un corps fini Fq avec q puissance d'un nombre entier premier; où X et Y sont les coordonnées des points P et sont des éléments de A, ledit procédé comprenant les étapes suivantes : /a/ déterminer un point P de coordonnées X et Y sur la courbe elliptique ; /b/ obtenir un paramètre par application d'une fonction au point P ; la fonction cp d'Euler de A vérifiant l'équation : cp(A) mod 3 = 1, la fonction étant la fonction inverse d'une fonction inversible et déterministe exprimée par une fraction rationnelle en al, a2 , a3 , a4 et a6 et en ledit paramètre dans A, et atteignant au moins un nombre q/4' de points P, avec I égal à 1 pour un corps fini Fq ; /c/ utiliser ledit paramètre dans une application cryptographique de chiffrement ou de hachage ou de signature ou d'authentification ou d'identification. 10. Procédé de compression de données dans lequel les données à compresser correspondent respectivement à des couples de données X et Y correspondant à des coordonnées de points P d'une courbe elliptique vérifiant l'équation suivante : Y2+a1XY+a3Y=X3+a2X2+a4+X+a6 (1) OÙ a, , az , a3 , a4 et a6 sont des éléments d'un ensemble A d'éléments, où A est un anneau des entiers modulaires Z/qZ où q est un entier positif produit d'un nombre 1 de nombres premiersdifférents strictement supérieurs à 3, I étant un nombre entier supérieur ou égal à 2, ou A est un corps fini Fq avec q puissance d'un nombre entier premier; où X et Y sont les coordonnées des points P et sont des 5 éléments de A, dans lequel on applique à chacun desdits couples de données les étapes /a/ à /c/ d'un procédé d'exécution d'un calcul cryptographique selon la revendication 9, et dans lequel lesdits couples de données sont représentés par les paramètres 10 respectivement obtenus à l'étape /c1. 11. Dispositif électronique comprenant des moyens adaptés pour la mise en oeuvre d'un procédé d'exécution d'un calcul cryptographique selon l'une quelconque des revendications 1 à 6. 12. Dispositif électronique comprenant des moyens adaptés pour la mise en oeuvre d'un procédé d'exécution d'un calcul cryptographique selon la revendication 9. 15