Forma arpillera de una curva elíptica


De Wikipedia, la enciclopedia libre
  (Redirigido desde las curvas de Hesse )
Saltar a navegación Saltar a búsqueda

En geometría , la curva de Hesse es una curva plana similar al folio de Descartes . Lleva el nombre del matemático alemán Otto Hesse . Esta curva se sugirió para su aplicación en criptografía de curva elíptica , porque la aritmética en esta representación de la curva es más rápida y necesita menos memoria que la aritmética en la forma estándar de Weierstrass . [1]

Definición

Una curva de ecuación de Hesse

Vamos a ser un campo y considerar una curva elíptica en el siguiente caso especial de forma Weierstrass sobre :

donde la curva tiene discriminante Entonces el punto tiene orden 3.

Para demostrar que tiene orden 3, observe que la tangente a en es la recta que se cruza con la multiplicidad 3 en .

Por el contrario, dado un punto de orden 3 en una curva elíptica, ambos definidos sobre un campo, se puede poner la curva en forma de Weierstrass de modo que la tangente en sea ​​la línea . Entonces la ecuación de la curva es con .

Ahora, para obtener la curva de Hesse, es necesario hacer la siguiente transformación :

Primero denotemos una raíz del polinomio

Luego

Tenga en cuenta que si tiene un campo de orden finito , entonces cada elemento de tiene una raíz cúbica única ; en general, se encuentra en un campo de extensión de K .

Ahora, definiendo el siguiente valor , se obtiene otra curva, C, que es biracionalmente equivalente a E:

 :

que se llama forma hessiana cúbica (en coordenadas proyectivas )

 :

en el plano afín (satisfactorio y ).

Además, (de lo contrario, la curva sería singular ).

A partir de la curva de Hesse, una ecuación de Weierstrass biracionalmente equivalente viene dada por

bajo las transformaciones:

y

dónde:

y

Derecho de grupo

Es interesante analizar la ley de grupo de la curva elíptica, definiendo las fórmulas de suma y duplicación (porque los ataques SPA y DPA se basan en el tiempo de ejecución de estas operaciones). Además, en este caso, solo necesitamos usar el mismo procedimiento para calcular la suma, duplicación o resta de puntos para obtener resultados eficientes, como se dijo anteriormente. En general, la ley de grupo se define de la siguiente manera: si tres puntos se encuentran en la misma línea, entonces suman cero . Entonces, según esta propiedad, las leyes de grupo son diferentes para cada curva.

En este caso, la forma correcta es utilizar las fórmulas de Cauchy-Desboves, obteniendo el punto en el infinito θ = (1: −1: 0) , es decir, el elemento neutro (la inversa de θ es nuevamente θ ). Sea P = ( x 1 , y 1 ) un punto en la curva. La línea contiene el punto P y el punto en el infinito θ . Por lo tanto, - P es el tercer punto de la intersección de esta línea con la curva. Al intersectar la curva elíptica con la línea, se obtiene la siguiente condición

Dado que no es cero (porque D 3 es distinto de 1), la coordenada x de - P es y 1 y la coordenada y de - P es x 1 , es decir, o en coordenadas proyectivas .

En algunas aplicaciones de criptografía de curva elíptica y el método de factorización de curva elíptica ( ECM ) es necesario calcular las multiplicaciones escalares de P , digamos [ n ] P para algún número entero n , y se basan en el método de doble y suma ; estas operaciones necesitan las fórmulas de suma y duplicación.

Duplicación

Ahora, si es un punto en la curva elíptica, es posible definir una operación de "duplicación" usando las fórmulas de Cauchy-Desboves:

Adición

De la misma manera, para dos puntos diferentes, digamos y , es posible definir la fórmula de la suma. Sea R la suma de estos puntos, R = P + Q , entonces sus coordenadas están dadas por:

Algoritmos y ejemplos

Hay un algoritmo que se puede usar para agregar dos puntos diferentes o para duplicar; lo dan Joye y Quisquater . Entonces, el siguiente resultado da la posibilidad de obtener la operación de duplicación por la suma:

Proposición . Sea P = ( X, Y, Z ) un punto en una curva elíptica de Hesse E ( K ) . Luego:

(2).

Además, tenemos ( Z : X : Y ) ≠ ( Y : Z : X ) .

Finalmente, contrariamente a otras parametrizaciones , no hay resta para calcular la negación de un punto. Por lo tanto, este algoritmo de suma también se puede utilizar para restar dos puntos P = ( X 1 : Y 1 : Z 1 ) y Q = ( X 2 : Y 2 : Z 2 ) en una curva elíptica de Hesse:

(3)

En resumen, adaptando el orden de las entradas de acuerdo con la ecuación (2) o (3), el algoritmo de suma presentado anteriormente se puede usar indistintamente para: Sumar 2 (diferencia) puntos, Doblar un punto y Restar 2 puntos con solo 12 multiplicaciones y 7 variables auxiliares, incluidas las 3 variables de resultado. Antes de la invención de las curvas de Edwards , estos resultados representan el método más rápido conocido para implementar la multiplicación escalar de la curva elíptica hacia la resistencia contra ataques de canal lateral .

Para algunos algoritmos, la protección contra ataques de canal lateral no es necesaria. Entonces, para estas duplicaciones puede ser más rápido. Dado que hay muchos algoritmos, aquí solo se proporciona el mejor para las fórmulas de suma y duplicación, con un ejemplo para cada uno:

Adición

Sea P 1 = ( X 1 : Y 1 : Z 1 ) y P 2 = ( X 2 : Y 2 : Z 2 ) dos puntos distintos de θ . Suponiendo que Z 1 = Z 2 = 1, entonces el algoritmo viene dado por:

A = X 1 Y 2

B = Y 1 X 2

X 3 = B Y 1 - Y 2 A
Y 3 = X 1 A - B X 2
Z 3 = Y 2 X 2 - X 1 Y 1

El costo necesario es 8 multiplicaciones y 3 adiciones costo de readición de 7 multiplicaciones y 3 adiciones, dependiendo del primer punto.

Ejemplo

Dados los siguientes puntos en la curva para d = −1 P 1 = (1: 0: −1) y P 2 = (0: −1: 1) , entonces si P 3 = P 1 + P 2 tenemos:

X 3 = 0-1 = −1
Y 3 = −1−0 = −1
Z 3 = 0 - 0 = 0

Entonces: P 3 = (−1: −1: 0)

Duplicación

Sea P  = ( X 1  :  Y 1  :  Z 1 ) un punto, entonces la fórmula de duplicación viene dada por:

  • A = X 1 2
  • B = Y 1 2
  • D = A  +  B
  • G = ( X 1  +  Y 1 ) 2  -  D
  • X 3 = (2 Y 1  -  G ) × ( X 1  +  A  + 1)
  • Y 3 = ( G  - 2 X 1 ) × ( Y 1  +  B  + 1)
  • Z 3 = ( X 1  -  Y 1 ) × ( G  + 2 D )

El costo de este algoritmo es tres multiplicaciones + tres cuadraturas + 11 adiciones + 3 × 2.

Ejemplo

Si es un punto sobre la curva de Hesse con parámetro d = −1 , entonces las coordenadas de están dadas por:

X = (2. (−1) - 2) (−1 + 1 + 1) = −4

Y = (−4-2. (−1)) ((−1) + 1 + 1) = −2

Z = (−1 - (−1)) ((−4) + 2. 2) = 0

Es decir,

Coordenadas extendidas

Existe otro sistema de coordenadas con el que se puede representar una curva de Hesse; estas nuevas coordenadas se denominan coordenadas extendidas . Pueden acelerar la adición y la duplicación. Para obtener más información sobre las operaciones con las coordenadas extendidas, consulte:

http://hyperelliptic.org/EFD/g1p/auto-hessian-extended.html#addition-add-20080225-hwcd

y se representan satisfaciendo las siguientes ecuaciones:

Ver también

Para obtener más información sobre el tiempo de ejecución requerido en un caso específico, consulte Tabla de costos de operaciones en curvas elípticas.

Curvas retorcidas de Hesse

enlaces externos

  • http://hyperelliptic.org/EFD/g1p/index.html

Notas

  1. ^ Fórmulas de Cauchy-Desbove: curvas elípticas hessianas y ataques de canal lateral , Marc Joye y Jean-Jacques Quisquarter

Referencias

  • Otto Hesse (1844), "Über die Elimination der Variabeln aus drei algebraischen Gleichungen vom zweiten Grade mit zwei Variabeln", Journal für die reine und angewandte Mathematik , 10, págs. 68–96
  • Marc Joye, Jean-Jacques Quisquater (2001). "Curvas elípticas de Hesse y ataques de canal lateral". Hardware criptográfico y sistemas integrados - CHES 2001 . Apuntes de conferencias en Ciencias de la Computación. 2162 . Springer-Verlag Berlin Heidelberg 2001. págs. 402–410. doi : 10.1007 / 3-540-44709-1_33 . ISBN 978-3-540-42521-2.
  • NP Smart (2001). "La forma de Hesse de una curva elíptica". Hardware criptográfico y sistemas integrados - CHES 2001 . Apuntes de conferencias en Ciencias de la Computación. 2162 . Springer-Verlag Berlin Heidelberg 2001. págs. 118-125. doi : 10.1007 / 3-540-44709-1_11 . ISBN 978-3-540-42521-2.
Obtenido de " https://en.wikipedia.org/w/index.php?title=Hessian_form_of_an_elliptic_curve&oldid=1012924410 "