stringtranslate.com

Curva de Montgomery

En matemáticas , la curva de Montgomery es una forma de curva elíptica introducida por Peter L. Montgomery en 1987, [1] diferente de la forma habitual de Weierstrass . Se utiliza para ciertos cálculos y, en particular, en diferentes aplicaciones de criptografía .

Definición

Una curva de Montgomery de ecuación

Una curva de Montgomery sobre un campo K se define mediante la ecuación

para cierto A , BK 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:

por el teorema de la función implícita .

Entonces las coordenadas del punto , son:

Equivalencia con curvas de Edwards torcidas

Sea un campo con característica distinta de 2.

Sea una curva elíptica en forma de Montgomery:

con ,

y sea una curva elíptica en la forma de Edwards torcida:

con

El siguiente teorema muestra la equivalencia biracional entre las curvas de Montgomery y la curva de Edwards torcida : [2]

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]

  1. tiene al menos una raíz ; y
  2. es un residuo cuadrático en .

Cuando se cumplen estas condiciones, entonces tenemos la función

:
.

Véase también

Notas

  1. ^ 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.
  2. ^ 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)
  3. ^ 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

Enlaces externos