En matemáticas , la curva de Jacobi es una representación de una curva elíptica distinta de la habitual definida por la ecuación de Weierstrass . A veces se utiliza en criptografía en lugar de la forma de Weierstrass porque puede proporcionar una defensa contra ataques de análisis de potencia simple y diferencial (SPA); de hecho, es posible utilizar la fórmula general de suma también para duplicar un punto en una curva elíptica de esta forma: de esta manera, las dos operaciones se vuelven indistinguibles de cierta información de canal lateral. [ 1 ] La curva de Jacobi también ofrece una aritmética más rápida en comparación con la curva de Weierstrass.
La curva de Jacobi puede ser de dos tipos: la intersección de Jacobi , que viene dada por la intersección de dos superficies, y la cuártica de Jacobi .
Curvas elípticas: conceptos básicos
Dada una curva elíptica, es posible realizar algunas "operaciones" entre sus puntos: por ejemplo, se pueden sumar dos puntos P y Q obteniendo el punto P + Q que pertenece a la curva; dado un punto P en la curva elíptica, es posible "duplicar" P, es decir, hallar [2] P = P + P (los corchetes se utilizan para indicar [n]P , el punto P sumado n veces), y también hallar la negación de P , es decir hallar – P. De esta manera, los puntos de una curva elíptica forman un grupo . Nótese que el elemento identidad de la operación de grupo no es un punto en el plano afín, solo aparece en las coordenadas proyectivas: entonces O = (0: 1: 0) es el "punto en el infinito", es decir, el elemento neutro en la ley de grupo . Las fórmulas de suma y duplicación también son útiles para calcular [n]P , el n -ésimo múltiplo de un punto P en una curva elíptica: esta operación se considera la más importante en la criptografía de curvas elípticas .
Una curva elíptica E , sobre un cuerpo K, puede expresarse en la forma de Weierstrass y 2 = x 3 + ax + b , con a , b en K . Lo que será importante más adelante son los puntos de orden 2 , es decir, P en E tales que [2] P = O y P ≠ O . Si P = ( p , 0) es un punto en E , entonces tiene orden 2; más generalmente los puntos de orden 2 corresponden a las raíces del polinomio f(x) = x 3 + ax + b .
De ahora en adelante, utilizaremos E a,b para denotar la curva elíptica con forma de Weierstrass y 2 = x 3 + ax + b .
Si E a,b es tal que el polinomio cúbico x³ + ax + b tiene tres raíces distintas en K y b = 0, podemos escribir E a,b en la forma normal de Legendre :
- E a,b : y 2 = x(x + 1)(x + j)
En este caso tenemos tres puntos de orden dos: (0, 0), (–1, 0), (–j , 0). En este caso usamos la notación E[j] . Nótese que j puede expresarse en términos de a y b .
Definición: Intersección de Jacobi
Una curva elíptica en P 3 ( K ) puede representarse como la intersección de dos superficies cuádricas :
Es posible definir la forma jacobiana de una curva elíptica como la intersección de dos cuádricas. Sea E a,b una curva elíptica en la forma de Weierstrass, le aplicamos el siguiente mapeo :
- :(x,y)\mapsto (X,Y,Z,T)=(x,y,1,x^{2})}
Observamos que se cumple el siguiente sistema de ecuaciones :
- :{\begin{cases}X^{2}-TZ=0\\Y^{2}-aXZ-bZ^{2}-TX=0\end{cases}}}
La curva E[j] corresponde a la siguiente intersección de superficies en P 3 ( K ):
- .
El "caso especial", E[0] , la curva elíptica tiene un punto doble y por lo tanto es singular .
S1 se obtiene aplicando a E[j] la transformación :
- ψ: E[j] → S1
Derecho colectivo
Para S1 , el elemento neutro del grupo es el punto (0, 1, 1, 1), que es la imagen de O = (0: 1: 0) bajo ψ.
Suma y duplicación
Dados P 1 = ( X 1 , Y 1 , Z 1 , T 1 ) y P 2 = ( X 2 , Y 2 , Z 2 , T 2 ), dos puntos en S1 , las coordenadas del punto P 3 = P 1 + P 2 son:
Estas fórmulas también son válidas para duplicar: basta con tener P 1 = P 2 . Por lo tanto, sumar o duplicar puntos en S1 son operaciones que requieren 16 multiplicaciones más una multiplicación por una constante ( k ).
También es posible utilizar las siguientes fórmulas para duplicar el punto P 1 y hallar P 3 = [2] P 1 :
Usando estas fórmulas se necesitan 8 multiplicaciones para duplicar un punto. Sin embargo, hay estrategias aún más eficientes para duplicar que requieren solo 7 multiplicaciones. [ 2 ] De esta manera es posible triplicar un punto con 23 multiplicaciones; de hecho, [3] P 1 se puede obtener sumando P 1 con [2] P 1 con un costo de 7 multiplicaciones para [2] P 1 y 16 para P 1 + [2] P 1 [ 2 ]
Ejemplo de suma y duplicación
Sea K = R o C y consideremos el caso:
Considere los puntosy: es fácil verificar que P 1 y P 2 pertenecen a S1 (basta con ver que estos puntos satisfacen ambas ecuaciones del sistema S1 ).
Utilizando las fórmulas dadas anteriormente para sumar dos puntos, las coordenadas de P 3 , donde P 3 = P 1 + P 2 son:
El punto resultante es.
Con las fórmulas dadas anteriormente para la duplicación, es posible encontrar el punto P 3 = [2] P 1 :
Entonces, en este caso P 3 = [2] P 1 = (0, 12, –12, 12).
Negación
Dado el punto P 1 = ( X 1 , Y 1 , Z 1 , T 1 ) en S1 , su negación es − P 1 = (− X 1 , Y 1 , Z 1 , T 1 )
Suma y duplicación en coordenadas afines
Dados dos puntos afines P 1 = ( x 1 , y 1 , z 1 ) y P 2 = ( x 2 , y 2 , z 2 ), su suma es un punto P 3 con coordenadas:
Estas fórmulas también son válidas para duplicar con la condición P 1 = P 2 .
Coordenadas extendidas
Existe otro tipo de sistema de coordenadas con el que se puede representar un punto en la intersección de Jacobi. Dada la siguiente curva elíptica en la forma de intersección de Jacobi:
Las coordenadas extendidas describen un punto P = (x, y, z) con las variables X, Y, Z, T, XY, ZT , donde:
En ocasiones, se utilizan estas coordenadas porque resultan más convenientes (en términos de tiempo y coste) en determinadas situaciones. Para obtener más información sobre las operaciones basadas en el uso de estas coordenadas, consulte http://hyperelliptic.org/EFD/g1p/auto-jintersect-extended.html
Definición: cuártica de Jacobi

Una curva elíptica en forma cuártica de Jacobi se puede obtener a partir de la curva E a,b en la forma de Weierstrass con al menos un punto de orden 2. La siguiente transformación f envía cada punto de E a,b a un punto en las coordenadas de Jacobi , donde (X: Y: Z) = (sX: s 2 Y: sZ) .
- f: E a,b → J
- [ 3 ]
Aplicando f a E a,b , se obtiene una curva en J de la siguiente forma:
dónde:
- .
son elementos en K . C representa una curva elíptica en la forma cuártica de Jacobi , en coordenadas de Jacobi.
Cuártica de Jacobi en coordenadas afines
La forma general de una curva cuártica de Jacobi en coordenadas afines es:
- ,
donde a menudo se asume e = 1.
Derecho colectivo
El elemento neutro de la ley de grupo de C es el punto proyectivo (0: 1: 1).
Suma y duplicación en coordenadas afines
Dados dos puntos afinesy, su suma es un punto, de tal manera que:
Al igual que en las intersecciones de Jacobi, también en este caso es posible utilizar esta fórmula para duplicar.
Suma y duplicación en coordenadas proyectivas
Dados dos puntos P 1 = ( X 1 : Y 1 : Z 1 ) y P 2 = ( X 2 : Y 2 : Z 2 ) en C′ , las coordenadas del punto P 3 = ( X 3 : Y 3 : Z 3 ), donde P 3 = P 1 + P 2 , se dan en términos de P 1 y P 2 mediante las fórmulas:
También se puede usar esta fórmula para duplicar, con la condición de que P 2 = P 1 : de esta manera se obtiene el punto P 3 = P 1 + P 1 = [2] P 1 .
El número de multiplicaciones necesarias para sumar dos puntos es 13 más 3 multiplicaciones por constantes: en particular hay dos multiplicaciones por la constante e y una por la constante a .
Hay algunas "estrategias" para reducir las operaciones necesarias para sumar y duplicar puntos: el número de multiplicaciones se puede reducir a 11 más 3 multiplicaciones por constantes (ver [ 4 ] sección 3 para más detalles).
El número de multiplicaciones se puede reducir trabajando con las constantes e y d : la curva elíptica en la forma de Jacobi se puede modificar para tener un menor número de operaciones de suma y duplicación. Así, por ejemplo, si la constante d en C es significativamente pequeña, la multiplicación por d se puede cancelar; sin embargo, la mejor opción es reducir e : si es pequeña, no solo se omite una, sino dos multiplicaciones.
Ejemplo de suma y duplicación
Consideremos la curva elíptica E 4,0 , que tiene un punto P de orden 2: P = ( p , 0) = (0, 0). Por lo tanto, a = 4, b = p = 0, así que tenemos e = 1 y d = 1 y la forma cuártica de Jacobi asociada es:
Elegir dos puntosy, es posible hallar su suma P 3 = P 1 + P 2 utilizando las fórmulas de suma dadas anteriormente:
- .
Entonces
- .
Utilizando las mismas fórmulas, se obtiene el punto P 4 = [2] P 1 :
Entonces
- .
Negación
La negación de un punto P 1 = ( X 1 : Y 1 : Z 1 ) es: − P 1 = (− X 1 : Y 1 : Z 1 )
Coordenadas alternativas para la cuártica de Jacobi
Existen otros sistemas de coordenadas que pueden utilizarse para representar un punto en una cuártica de Jacobi; se emplean para obtener cálculos rápidos en ciertos casos. Para obtener más información sobre el tiempo de cálculo necesario para las operaciones con estas coordenadas, consulte http://hyperelliptic.org/EFD/g1p/auto-jquartic.html
Dado un cuártico de Jacobi afín
Las coordenadas XXYZZ orientadas a la duplicación introducen un parámetro de curva adicional c que satisface a 2 + c 2 = 1 y representan un punto (x, y) como (X, XX, Y, Z, ZZ, R) , de tal manera que:
Las coordenadas XYZ orientadas a la duplicación , con la misma suposición adicional ( a² + c² = 1 ), representan un punto (x, y) con (X, Y, Z ) que satisface las siguientes ecuaciones:
Utilizando las coordenadas XXYZZ no hay ninguna suposición adicional, y representan un punto (x, y) como (X, XX, Y, Z, ZZ) de tal manera que:
mientras que las coordenadas XXYZZR representan (x, y) como (X, XX, Y, Z, ZZ, R) de tal manera que:
Con las coordenadas XYZ, el punto (x, y) viene dado por (X, Y, Z) , donde:
- .
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
- ↑ Olivier Billet, El modelo de Jacobi de una curva elíptica y análisis de canales laterales
- 1 2 P.Y.Liardet y NPSmart, Prevención de SPA/DPA en sistemas ECC mediante el formulario de Jacobi , pág. 397
- 1 2 Olivier Billet y Marc Joye, El modelo de Jacobi de una curva elíptica y análisis de canales laterales , págs. 37-38
- ↑ Sylvain Duquesne, Mejora de la aritmética de curvas elípticas en el modelo de Jacobi -I3M, (UMR CNRS 5149) y Lirmm, (UMR CNRS 5506), Universidad de Montpellier II
Referencias
- Olivier Billet, Marc Joye (2003). «El modelo de Jacobi de una curva elíptica y el análisis de canales laterales». El modelo de Jacobi de una curva elíptica y el análisis de canales laterales . Lecture Notes in Computer Science. Vol. 2643. Springer-Verlag Berlin Heidelberg 2003. pp. 34–42 . doi : 10.1007/3-540-44828-4_5 . ISBN 978-3-540-40111-7.
- PY Liardet, NP Smart (2001). "Prevención de SPA/DPA en sistemas ECC mediante la forma de Jacobi". Hardware criptográfico y sistemas embebidos — CHES 2001. Notas de clase en informática. Vol. 2162. Springer-Verlag Berlín Heidelberg 2001. pp. 391–401 . doi : 10.1007/3-540-44709-1_32 . ISBN 978-3-540-42521-2. S2CID 32648481 .
- http://hyperelliptic.org/EFD/index.html
Enlaces externos
- http://hyperelliptic.org/EFD/g1p/index.html
- Curvas elípticas
- Criptografía de curva elíptica
- Curvas cuárticas