Étape 6: L’algorithme ECDSA équation
Maintenant, comment ça marche ? Bien Elliptic Curve cryptography repose sur une équation de la forme :
y ^ 2 = (x ^ 3 + a * x + b) mod p
La première chose vous remarquez, c’est qu’il est un modulo et que le «y» est élevé au carré (n’oubliez pas il s’agit de l’équation d’une courbe sur un graphique). Cela signifie que pour tout x de coordonnées (n’oubliez pas aussi bien que nous travaillons uniquement avec des entiers), vous aurez deux valeurs de y et que la courbe est symétrique sur l’axe des X. Le modulo est un nombre premier et s’assure que toutes les valeurs sont à notre portée de 160 bits et il permet l’utilisation des mathématiques "modulaire racine carrée" et "modulaire inverse multiplicatif" qui facilitent les choses calcul. Puisque nous avons un modulo (p), cela signifie que les valeurs possibles de y ^ 2 sont compris entre 0 et p-1, qui nous donne p total valeurs possibles. Cependant, puisque nous avons affaire avec des entiers, seul un sous-ensemble plus petit de ces valeurs sera un "carré parfait" (la valeur au carré de deux entiers), ce qui nous donne N points possibles sur la courbe où N < p (N étant le nombre de carrés parfaits entre 0 et p). Vous me suivez jusqu’ici ? :)
Puisque chaque x rapportera deux points (valeurs positives et négatives de la racine carrée de y ^ 2), cela signifie qu’il n’y a N/2 possible 'x' coordonnées qui sont valides et qui lui fournissent un point sur la courbe. Si cette courbe elliptique possède un nombre fini de points là-dessus, et c’est à cause des calculs de nombre entier et le module.
Ouff, c’était dur ! Nous allons résumer avant de passer. L’équation de ECDSA nous donne une courbe ayant un nombre fini de points valables à ce sujet (N) parce que l’axe des Y est lié par le module (p) et doit être un carré parfait (y ^ 2) avec une symétrie sur l’axe des X. Nous avons un total de N/2 possible, valide x coordonnées sans oublier que N < p.