Algoritmos y Protocolos Criptogr´ aficos con Curvas El´ıpticas
Josep M. Miret
Escola Polit`ecnica Superior Departament de Matem`atica
Universitat de Lleida e-mail: [email protected]
Grupo de Criptograf´ıa y Matem´ atica Discreta (UdL)
• Miembros del grupo Josep Conde
Joan Gimbert Josep M. Miret Ramiro Moreno Jordi Pujol`as Magda Valls
• Estudiantes de Doctorado Xavier Hern´andez
Nacho L´opez
Santi Mart´ınez, Beca FI Rosana Tom`as, Beca FI
• Docencia
Ingenier´ıas en Inform´atica
Programa de Doctorado de Ingenier´ıa
L´ıneas de investigaci´ on
• Cardinalidad de curvas el´ıpticas
– Subgrupos de Sylow de una curva el´ıptica – Extensi´on al caso de curvas de g´enero 2 – Generalizaci´on de las f´ormulas de V´elu
• Volcanes de isogenias de curvas el´ıpticas
– Algoritmo para recorrer las curvas de un volc´an – Generalizaci´on a cordilleras
– Criptosistemas basados en isogenias
• Protocolos criptogr´aficos en sistemas computacionales restringidos – Tarjetas inteligentes
– Sistemas RFID (Radio Frequency Identification)
Publicaciones
• Determining the 2-Sylow subgroup of an elliptic curve over a finite field. J. Miret, R. Moreno, A. Rio and M. Valls. Mathematics of Computation, 74, no. 249, pp.
411-427 (2005)
• Generalization of V´elu’s formulae for isogenies between elliptic curves. J. Miret, R.
Moreno. A. Rio. Publicacions Matem`atiques.
• An algorithm to compute volcanoes of 2–isogenies of elliptic curves over finite fields.
J. Miret, R. Moreno, D. Sadornil, J. Tena, M. Valls. Applied Mathematics and Computation, 176, no. 2, 739-750 (2006).
• Volcanoes of `–isogenies of elliptic curves over finite fields: the case `=3. J. Miret, D. Sadornil, J. Tena, R. Tom`as, M. Valls. Publicacions Matem`atiques.
• Parallel calculation of volcanoes for cryptographic uses. S. Mart´ınez, R. Tom`as, C.
Roig, M. Valls, R. Moreno. 7th Workshop on Parallel and Distributed Scientific and Engineering Computing at IPDPS (2006).
• An elliptic curve and zero knowledge based forward secure RFID Protocol. S.
Mart´ınez, M. Valls, C. Roig, F. Gin´e, J. Miret. Preprint.
Subgrupos de Sylow de una curva el´ıptica sobre un cuerpo finito
• Dada una curva el´ıptica E sobre Fq, determinar los enteros n y r tales que el subgrupo de E(Fq) de puntos que tienen orden una potencia de ` es Z/`nZ × Z/`rZ.
Consecuentemente
#E(Fq) = `n+r · m0, ` 6 |m0
y si la potencia `n+r es elevada, la curva se puede descartar para usos criptogr´aficos.
• Proceso inductivo para determinar el `–Sylow: (caso ` = 2 y c´ıclico)
Volcanes de `–isogenias
• Dada una curva E/Fq con un `–subgrupo racional existen 1, 2 o ` + 1 curvas is´ogenas obtenidas al considerar los distintos subgrupos c´ıclicos de orden ` de E(Fq)
• Una isogenia I : E → E0 se dice que es horizontal, descendente o ascendente seg´un [O : O0] = 1, `, 1`, donde O y O0 son los anillos de endomorfismos de E y E0
• El conjunto de clases de isomorf´ıa de curvas el´ıpticas sobre Fq con cardinal m se puede representar mediante un grafo dirigido, que tiene por arcos `-isogenias. Cada componente conexa tiene forma de volc´an (Kohel, Fouquet-Morain):
!" #
$$$
% !
&
Algoritmo para recorrer las curvas de un volc´ an
• F´ormulas de V´elu para ecuaci´on curvas is´ogenas
Camino ascendente hasta el cr´ater y recorrido curvas del cr´ater
• Curvas Eλ/F317 de ecuaci´on y2 + xy + λy = x3 con |Eλ(F317)| = 312
316 205 137 46
259 246 255 284 206 36 119 290
287 250 149 42
87 187 196 70 116 51 200 149
42
250 205
46
255
200 290
70 196
119 148
284
316
116
87 246
206 36
Criptosistema de Rostovsov–Stolbunov
• Estrella de isogenias: volc´an plano de isogenias sobre Fp con un n´umero primo de clases de isomorf´ıa, donde el grado ` de las isogenias var´ıa en un conjunto finito de primos de Elkies.
Ejemplo: Estrella de 3 y 5 isogenias sobre F83 con curvas de cardinal 74
15 71
55
34 29
23 48 15
71
55
34 29
23 48
15 71
55
34 29
23 48
• Dada una estrella S, un conjunto de grados de isogenias de Elkies L = {`i} y un conjunto de valores propios de los Frobenius F = {πi}, se define una ruta sobre la estrella S como un conjunto de enteros R = {ri}, donde ri indica el n´umero de pasos de `i–isogenias en la direcci´on πi.
• Problema en que se basa:
Dadas dos curvas el´ıpticas is´ogenas E/Fp y E0/Fp, encontrar una isogenia I : E −→ E0 entre ellas.
Murcia, 24-25 de Noviembre de 2006 7
Cifrado criptosistema
• Set up criptosistema:
Un cuerpo finito Fp
Una estrella de isogenias S sobre Fp y una curva Einit/Fp de S
• Clave privada: Una ruta Rpriv
Clave p´ublica: La curva Epub = Rpriv(Einit) Algoritmo (Cifrado criptosistema)
INPUT: La clave p´ublica Epub y el mensaje en claro m OUTPUT: El mensaje cifrado (s, Eadd)
Escoger una ruta aleatoria Renc Calcular Eenc = Renc(Epub)
Calcular s = m · jenc (mod p) y la curva Eadd = Renc(Einit) Algoritmo (Descifrado criptosistema)
INPUT: La clave p´ublica Epub, la clave privada Rpriv y el mensaje cifrado (s, Eadd)
ECC en tarjetas inteligentes
• Requerimientos
– Representar las curvas el´ıpticas de forma eficiente – Usar operaciones con menos coste computacional
• Ataques pasivos conocidos – Side channel attack
Obtiene informaci´on de k a partir del c´alculo de k · P – Zero-value point attack
Obtiene informaci´on al considerar puntos con valores 0:
x = 0, 3x2 + a = 0, x2 − a = 0, x2 + a = 0
• Se puede evitar usando curvas is´ogenas
La curva E/Fp : y2 = x3 + ax + b definida por
p = 4451685225093714772084598273548427
a = −3, b = 20611183968086532029096166388514
tiene puntos con 3x2 + a = 0. No tiene su 7-is´ogena E0/Fp : y2 = x3 + a0x + b0,
0 0
Protocolos RFID seguros
• Los sistemas RFID permiten automatizar procesos de identificaci´on a distancia de objetos. Constan de:
– Un conjunto de tags, etiquetas con un microchip dise˜nado para transmitir datos v´ıa un canal wireless
– Una base de datos con informaci´on de los tags
– Un lector/es que comunica con los tags y la base de datos
• Para garantizar la seguridad de un sistema RFID, el lector guarda una clave secreta cuyo conocimiento tiene que demostrar para leer los tags
• Propuesta de autenticaci´on del lector
– Protocolo de conocimiento nulo con curvas el´ıpticas
• Propuesta de identificaci´on de un tag
– El tag env´ıa informaci´on de su secreto al lector que comprueba si est´a almacenada