stringtranslate.com

Curva de Edwards

Curvas de Edwards de la ecuación x 2  +  y 2  = 1 +  d  · x 2 · y 2 sobre los números reales para d  = −300 (rojo), d  = − 8 (amarillo) y d  = 0,9 (azul)

En matemáticas , las curvas de Edwards son una familia de curvas elípticas estudiadas por Harold Edwards en 2007. El concepto de curvas elípticas sobre cuerpos finitos se utiliza ampliamente en criptografía de curvas elípticas . Daniel J. Bernstein y Tanja Lange desarrollaron aplicaciones de las curvas de Edwards a la criptografía : señalaron varias ventajas de la forma de Edwards en comparación con la forma de Weierstrass más conocida [1] .

Definición

La ecuación de una curva de Edwards sobre un campo K que no tiene característica 2 es:

para algún escalar . También la siguiente forma con parámetros c y d se denomina curva de Edwards:

donde cd  ∈  K con cd (1 −  c 4 · d ) ≠ 0.

Toda curva de Edwards es birracionalmente equivalente a una curva elíptica en forma de Montgomery y, por lo tanto, admite una ley de grupo algebraico una vez que se elige un punto para que sirva como elemento neutro. Si K es finito, entonces una fracción considerable de todas las curvas elípticas sobre K se pueden escribir como curvas de Edwards. A menudo, las curvas elípticas en forma de Edwards se definen con c = 1, sin pérdida de generalidad. En las siguientes secciones, se supone que c = 1.

La ley de grupos

(Véase también la ley del grupo de curvas de Weierstrass )

Toda curva de Edwards sobre el cuerpo K con característica distinta de 2 con es biracionalmente equivalente a una curva elíptica sobre el mismo cuerpo: , donde y el punto se mapea al infinito O . Esta aplicación biracional induce un grupo en cualquier curva de Edwards.

Ley de adición de Edwards

En cualquier curva elíptica, la suma de dos puntos se da mediante una expresión racional de las coordenadas de los puntos, aunque en general puede ser necesario utilizar varias fórmulas para cubrir todos los pares posibles. Para la curva de Edwards, tomando como elemento neutro el punto (0, 1), la suma de los puntos y se da mediante la fórmula

El opuesto de cualquier punto es . El punto tiene orden 2 y los puntos tienen orden 4. En particular, una curva de Edwards siempre tiene un punto de orden 4 con coordenadas en K .

Si d no es un cuadrado en K y , entonces no hay puntos excepcionales: los denominadores y son siempre distintos de cero. Por lo tanto, la ley de adición de Edwards está completa cuando d no es un cuadrado en K . Esto significa que las fórmulas funcionan para todos los pares de puntos de entrada en la curva de Edwards sin excepciones para la duplicación, ninguna excepción para el elemento neutro, ninguna excepción para los negativos, etc. [2] En otras palabras, está definida para todos los pares de puntos de entrada en la curva de Edwards sobre K y el resultado da la suma de los puntos de entrada.

Si d es un cuadrado en K , entonces la misma operación puede tener puntos excepcionales, es decir, puede haber pares de puntos tales que uno de los denominadores se convierta en cero: o bien .

Una de las características atractivas de la ley de adición de Edwards es que está fuertemente unificada , es decir, también se puede utilizar para duplicar un punto, lo que simplifica la protección contra ataques de canal lateral . La fórmula de adición anterior es más rápida que otras fórmulas unificadas y tiene la fuerte propiedad de completitud [2].

Ejemplo de ley de adición :

Considere la curva elíptica en la forma de Edwards con d = 2

y el punto sobre él. Es posible demostrar que la suma de P 1 con el elemento neutro (0,1) da de nuevo P 1 . En efecto, utilizando la fórmula dada anteriormente, las coordenadas del punto dado por esta suma son:

Un análogo en el círculo

Grupo de reloj

Para comprender mejor el concepto de “suma” de puntos en una curva, un buen ejemplo lo da el grupo circular clásico:

toma el circulo de radio 1

y consideremos dos puntos P 1 =(x 1 ,y 1 ), P 2 =(x 2 ,y 2 ) sobre él. Sean α 1 y α 2 los ángulos tales que:

La suma de P 1 y P 2 viene dada, pues, por la suma de "sus ángulos". Es decir, el punto P 3 =P 1 +P 2 es un punto de la circunferencia con coordenadas (x 3 ,y 3 ), donde:

De esta manera, la fórmula de adición de puntos en el círculo de radio 1 es:

.

Adición a las curvas de Edwards

Suma de dos puntos de la curva de Edwards con d = -30
Duplicar un punto en la curva de Edwards con d=-30

Los puntos de una curva elíptica forman un grupo abeliano: se pueden sumar puntos y tomar múltiplos enteros de un único punto. Cuando una curva elíptica se describe mediante una ecuación cúbica no singular, entonces la suma de dos puntos P y Q , denotada P  +  Q , está directamente relacionada con el tercer punto de intersección entre la curva y la línea que pasa por P y Q .

La aplicación biracional entre una curva de Edwards y la curva elíptica cúbica correspondiente convierte las líneas rectas en secciones cónicas [3] . En otras palabras, para las curvas de Edwards los tres puntos , y se encuentran en una hipérbola .

Dados dos puntos distintos de no identidad , los coeficientes de la forma cuadrática son (hasta escalares):

,

,

En el caso de la duplicación de un punto, el punto inverso se encuentra en la cónica que toca la curva en el punto . Los coeficientes de la forma cuadrática que define la cónica son (hasta escalares [ aclaración necesaria ] ):

,

,

Coordenadas homogéneas proyectivas

En el contexto de la criptografía, se utilizan coordenadas homogéneas para evitar las inversiones de campo que aparecen en la fórmula afín. Para evitar las inversiones en las fórmulas de adición originales de Edwards, la ecuación de la curva se puede escribir en coordenadas proyectivas como:

.

Un punto proyectivo corresponde al punto afín en la curva de Edwards.

El elemento identidad está representado por . El inverso de es .

La fórmula de adición en coordenadas homogéneas viene dada por:

dónde

Algoritmo

La suma de dos puntos en la curva de Edwards se podría calcular de manera más eficiente [4] en la forma extendida de Edwards , donde :

Duplicación

La duplicación se puede realizar con exactamente la misma fórmula que la suma. La duplicación se refiere al caso en el que las entradas ( x 1y 1 ) y ( x 2y 2 ) son iguales.

Duplicar un punto :

Los denominadores se simplificaron en base a la ecuación de la curva . Se logra una mayor aceleración al calcular como . Esto reduce el costo de duplicar en coordenadas homomórficas a 3 M  + 4 S  + 3 C  + 6 a , mientras que la adición general cuesta 10 M  + 1 S  + 1 C  + 1 D  + 7 a . Aquí M son las multiplicaciones de campo, S son los cuadrados de campo, D es el costo de multiplicar por el parámetro de curva d y a es la adición de campo.

Ejemplo de duplicación

Al igual que en el ejemplo anterior para la ley de la adición, considere la curva de Edwards con d=2:

y el punto . Las coordenadas del punto son:

El punto obtenido al duplicar P es entonces .

Adición mixta

La adición mixta es el caso cuando se sabe que Z 2 es 1. En tal caso, A = Z 1. Z 2 se puede eliminar y el costo total se reduce a 9 M + 1 S + 1 C + 1 D + 7 a

Algoritmo

A= Z 1 . Z 2 // en otras palabras, A= Z 1

B = Z12

C = X1.X2

D = Y1.Y2

E = d.C.D​​

F=SER

Sol = Si + Mi

X 3 = A . F((X I +Y 1 ) . (X 2 +Y 2 )-CD)

Y3 = A.G. ( CC )

Z3 = C.F.G

Triplicando

La triplicación se puede hacer duplicando primero el punto y luego sumando el resultado a sí mismo. Aplicando la ecuación de la curva como en la duplicación, obtenemos

Hay dos conjuntos de fórmulas para esta operación en coordenadas estándar de Edwards. El primero cuesta 9 M  + 4 S mientras que el segundo necesita 7 M  + 7 S. Si la relación S/M es muy pequeña, específicamente por debajo de 2/3, entonces el segundo conjunto es mejor mientras que para relaciones mayores es preferible el primero. [5] Utilizando las fórmulas de adición y duplicación (como se mencionó anteriormente) el punto ( X 1  :  Y 1  :  Z 1 ) se calcula simbólicamente como 3( X 1  :  Y 1  :  Z 1 ) y se compara con ( X 3  :  Y 3  :  Z 3 )

Ejemplo de triplicación

Dada la curva de Edwards con d=2, y el punto P 1 =(1,0), el punto 3P 1 tiene coordenadas:

Por lo tanto, 3P 1 =(-1,0)=P- 1 . Este resultado también se puede encontrar considerando el ejemplo de duplicación: 2P 1 =(0,1), por lo que 3P 1 = 2P 1 + P 1 = (0,-1) + P 1 = -P 1 .

Algoritmo

A = X12

B = Y12

C=(2Z 1 ) 2

D=A+B

E= D2

F=2D.(AB)

G=EB.C

H=EA.C

Yo = F + H

J=FG

X3 = GJX1

Y3 = HOLA1

Z3 = IJZ1

Esta fórmula cuesta 9 M  + 4 S

Coordenadas de Edwards invertidas

Bernstein y Lange introdujeron un sistema de coordenadas aún más rápido para curvas elípticas llamado coordenadas de Edward invertidas [6] en el que las coordenadas ( X  :  Y  :  Z ) satisfacen la curva ( X 2  +  Y 2 ) Z 2  = ( dZ 4  +  X 2 Y 2 ) y corresponde al punto afín ( Z / XZ / Y ) en la curva de Edwards x 2  +  y 2  = 1 +  dx 2 y 2 con XYZ ≠ 0.

Las coordenadas de Edwards invertidas , a diferencia de las coordenadas de Edwards estándar, no tienen fórmulas de adición completas: algunos puntos, como el elemento neutro, deben manejarse por separado. Pero las fórmulas de adición aún tienen la ventaja de una fuerte unificación: se pueden usar sin cambios para duplicar un punto.

Para obtener más información sobre las operaciones con estas coordenadas, consulte http://hyperelliptic.org/EFD/g1p/auto-edwards-inverted.html

Coordenadas extendidas para curvas de Edward

Existe otro sistema de coordenadas con el que se puede representar una curva de Edwards. Estas nuevas coordenadas se denominan coordenadas extendidas [7] y son incluso más rápidas que las coordenadas invertidas. Para más información sobre el coste-tiempo requerido en las operaciones con estas coordenadas, consulte: http://hyperelliptic.org/EFD/g1p/auto-edwards.html

Véase también

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

Notas

  1. ^ Bernstein, Daniel; Lange, Tanja (3 de marzo de 2014), Cómo diseñar un sistema de firma de curva elíptica
  2. ^ ab Daniel. J. Bernstein , Tanja Lange, pág. 3, Adición y duplicación más rápidas en curvas elípticas
  3. ^ Christophe Arene; Tanja Lange; Michael Naehrig; Christophe Ritzenthaler (2009). "Cálculo más rápido del emparejamiento Tate". arXiv : 0904.0854 . Código Bibliográfico :2009arXiv0904.0854A . Consultado el 28 de febrero de 2010 .
  4. ^ Huseyin Hisil, Kenneth Koon-Ho Wong, Gary Carter y Ed Dawson. Revisitando las curvas de Edwards torcidas . En ASIACRYPT 2008, páginas 326–343, 2008
  5. ^ Bernstein et al., Optimización de la multiplicación de un solo escalar de curva elíptica de base doble
  6. ^ Daniel J. Bernstein. Tanja Lange, pág. 2, coordenadas de Edward invertidas
  7. ^ H. Hisil, KK Wong, G. Carter, E. Dawson Operaciones de grupo más rápidas en curvas elípticas

Referencias

Enlaces externos