Una curva de Montgomery sobre un campo K se define mediante la ecuación
para cierto A , B ∈ K y con B ( A 2 − 4) ≠ 0 .
Generalmente esta curva se considera sobre un cuerpo finito K (por ejemplo, sobre un cuerpo finito de q elementos , K = F q ) con característica distinta de 2 y con A ≠ ±2 y B ≠ 0 , pero también se consideran sobre los racionales con las mismas restricciones para A y B .
Aritmética de Montgomery
Es posible realizar algunas "operaciones" entre los puntos de una curva elíptica: "sumar" dos puntos consiste en encontrar un tercero tal que ; "duplicar" un punto consiste en calcular (Para más información sobre operaciones ver La ley de grupo ) y más abajo.
Un punto en la curva elíptica en la forma de Montgomery se puede representar en coordenadas de Montgomery , donde son coordenadas proyectivas y para .
Nótese que este tipo de representación para un punto pierde información: de hecho, en este caso, no hay distinción entre los puntos afines y porque ambos están dados por el punto . Sin embargo, con esta representación es posible obtener múltiplos de puntos, es decir, dado , calcular .
Ahora, considerando los dos puntos y : su suma está dada por el punto cuyas coordenadas son:
Si , entonces la operación se convierte en una "duplicación"; las coordenadas de están dadas por las siguientes ecuaciones:
La primera operación considerada arriba ( suma ) tiene un coste temporal de 3 M +2 S , donde M denota la multiplicación entre dos elementos generales del campo en el que está definida la curva elíptica, mientras que S denota el cuadrado de un elemento general del campo.
La segunda operación (duplicación) tiene un costo de tiempo de 2 M + 2 S + 1 D , donde D denota la multiplicación de un elemento general por una constante ; observe que la constante es , por lo que puede elegirse para tener una D pequeña .
Algoritmo y ejemplo
El siguiente algoritmo representa la duplicación de un punto en una curva elíptica en la forma de Montgomery.
Se supone que . El costo de esta implementación es 1M + 2S + 1*A + 3add + 1*4. Aquí M denota las multiplicaciones requeridas, S indica los cuadrados y a se refiere a la multiplicación por A.
Ejemplo
Sea un punto de la curva . En coordenadas , con , .
Entonces:
El resultado es el punto tal que .
Suma
Dados dos puntos , sobre la curva de Montgomery en coordenadas afines, el punto representa, geométricamente , el tercer punto de intersección entre y la recta que pasa por y . Es posible hallar las coordenadas de , de la siguiente manera:
1) considérese una recta genérica en el plano afín y déjese pasar por y (imponga la condición), de esta manera, se obtiene y ;
2) intersectar la recta con la curva , sustituyendo la variable en la ecuación de la curva por ; se obtiene la siguiente ecuación de tercer grado :
Como se ha observado anteriormente, esta ecuación tiene tres soluciones que corresponden a las coordenadas de , y . En particular, esta ecuación puede reescribirse como:
3) Comparando los coeficientes de las dos ecuaciones idénticas dadas anteriormente, en particular los coeficientes de los términos de segundo grado, se obtiene:
.
Por lo tanto, se puede escribir en términos de , , , , como:
4) Para hallar la coordenada del punto es suficiente sustituir el valor en la recta . Nótese que esto no dará el punto directamente. En efecto, con este método se hallan las coordenadas del punto tal que , pero si se necesita el punto resultante de la suma entre y , entonces es necesario observar que: si y sólo si . Así pues, dado el punto , es necesario hallar , pero esto se puede hacer fácilmente cambiando el signo por la coordenada de . En otras palabras, será necesario cambiar el signo de la coordenada obtenida sustituyendo el valor en la ecuación de la recta.
Resumiendo, las coordenadas del punto , son:
Duplicación
Dado un punto en la curva de Montgomery , el punto representa geométricamente el tercer punto de intersección entre la curva y la línea tangente a ; por lo tanto, para encontrar las coordenadas del punto es suficiente seguir el mismo método dado en la fórmula de la adición; sin embargo, en este caso, la línea y = lx + m tiene que ser tangente a la curva en , por lo que, si con
entonces el valor de l , que representa la pendiente de la recta, viene dado por:
Teorema (i) Toda curva de Edwards torcida es biracionalmente equivalente a una curva de Montgomery sobre . En particular, la curva de Edwards torcida es biracionalmente equivalente a la curva de Montgomery donde , y .
El mapa :
es una equivalencia biracional de a , con inversa:
:
Obsérvese que esta equivalencia entre las dos curvas no es válida en todas partes: de hecho, el mapa no está definido en los puntos o de .
Equivalencia con curvas de Weierstrass
Cualquier curva elíptica puede escribirse en forma de Weierstrass. En particular, la curva elíptica en forma de Montgomery
:
se puede transformar de la siguiente manera: dividir cada término de la ecuación por , y sustituir las variables x e y , por y respectivamente, para obtener la ecuación
Para obtener una forma corta de Weierstrass desde aquí, es suficiente reemplazar u con la variable :
Finalmente, esto da la ecuación:
Por lo tanto, el mapeo se da como
:
Por el contrario, una curva elíptica sobre el campo base en forma de Weierstrass
:
se puede convertir a la forma Montgomery si y sólo si tiene orden divisible por cuatro y satisface las siguientes condiciones: [3]
tiene al menos una raíz ; y
es un residuo cuadrático en .
Cuando se cumplen estas condiciones, entonces tenemos la función
^ Peter L. Montgomery (1987). "Aceleración de los métodos de factorización de Pollard y de curva elíptica". Matemáticas de la computación . 48 (177): 243–264. doi : 10.2307/2007888 . JSTOR 2007888.
^ Daniel J. Bernstein , Peter Birkner, Marc Joye, Tanja Lange y Christiane Peters (2008). "Curvas retorcidas de Edwards". Progresos en criptología - AFRICACRYPT 2008 . Apuntes de conferencias sobre informática. vol. 5023. Springer-Verlag Berlín Heidelberg. págs. 389–405. doi :10.1007/978-3-540-68164-9_26. ISBN978-3-540-68159-5.{{cite book}}: CS1 maint: multiple names: authors list (link)
^ Katsuyuki Okeya, Hiroyuki Kurumatani y Kouichi Sakurai (2000). Curvas elípticas con la forma Montgomery y sus aplicaciones criptográficas . Criptografía de clave pública (PKC2000). doi : 10.1007/978-3-540-46588-1_17 .{{cite conference}}: CS1 maint: multiple names: authors list (link)
Referencias
Peter L. Montgomery (1987). "Aceleración de los métodos de factorización de Pollard y de curva elíptica". Matemáticas de la computación . 48 (177): 243–264. doi : 10.2307/2007888 . JSTOR 2007888.
Daniel J. Bernstein , Peter Birkner, Marc Joye, Tanja Lange y Christiane Peters (2008). "Curvas retorcidas de Edwards". Progresos en criptología - AFRICACRYPT 2008 . Apuntes de conferencias sobre informática. vol. 5023. Springer-Verlag Berlín Heidelberg. págs. 389–405. doi :10.1007/978-3-540-68164-9_26. ISBN 978-3-540-68159-5.{{cite book}}: CS1 maint: multiple names: authors list (link)
Wouter Castryck; Steven Galbraith; Reza Rezaeian Farashahi (2008). "Aritmética eficiente en curvas elípticas utilizando una representación mixta de Edwards-Montgomery" (PDF) . {{cite journal}}: Requiere citar revista |journal=( ayuda )
Enlaces externos
Curvas del género 1 sobre campos de características grandes