1 Evitando ataques Side-Channel mediante el c´ alculo de curvas is´ ogenas e isomorfas R. Abarz´ ua, S. Mart´ ınez, J. M. Miret, R. Tom` as y J. Valera Resumen—Debido a los muchos usos que tienen las tarjetas inteligentes y a la informaci´ on que se guarda en ellas, ´ estas cada vez son m´ as susceptibles de ser atacadas. Por este motivo, tenemos que protegerlas con criptosistemas eficientes y a la vez seguros. El problema reside en su potencia de c´ alculo. En estos dispositivos est´ a muy limitada. Por este motivo cualquier ayuda para reducir este coste de c´ alculo es bienvenida. En este art´ ıculo presentamos un algoritmo que reduce el coste computacional de las contramedidas a ataques Side-Channel. Esto hace que sea as factible el uso de criptograf´ ıa basada en curvas el´ ıpticas. Keywords—ECC, volcanes isogenias, is´ ogenas, tarjetas inteli- gentes, Side-Channel Attacks. I. I NTRODUCCI ´ ON E N los ´ ultimos a˜ nos, se han incrementado los usos de tarjetas inteligentes en muchos aspectos de la vida coti- diana, ya sean tarjetas de cr´ edito, en m´ oviles, DNI electr´ onico, bonobuses, tarjetas llave,... A medida que sus usos se ampl´ ıan, tambi´ en aumenta el tipo de informaci´ on almacenada. ´ Esta suele contener informaci´ on privada del usuario que debe man- tenerse segura. Por este motivo, es necesario almacenar dicha informaci´ on cifrada con un algoritmo seguro para dificultar su extracci´ on por usuarios no permitidos. Ahora bien, las tarjetas inteligentes tienen otros problemas que tenemos que afrontar. Por una parte, las limitaciones de alculo que presentan y, por otra, que este tipo de dispositivos son susceptibles a otro tipo de ataques adem´ as de los ataques a los que se enfrenta la criptograf´ ıa convencional. Para solventar el primero de estos problemas, una soluci´ on es el uso de criptograf´ ıa basada en curvas el´ ıpticas. De este modo, para conseguir una seguridad similar a la que podemos obtener con el criptosistema RSA, necesitamos claves mucho as peque˜ nas, haciendo que los c´ alculos con ellas sean m´ as apidos y, por tanto, reduzcamos el c´ omputo necesario. R. Abarz´ ua, Departamento de Matem´ atica y Ciencia de la Computaci´ on, Facultad de Ciencia, Universidad de Santiago de Chile, Santiago de Chile (Chile), rodrigo.abarzua@usach.cl. S. Mart´ ınez, Grupo de Criptograf´ ıa y Grafos, Dept. de Matem` atica, Universitat de Lleida, Av. Jaume II, 69, 25001 Lleida (Espa˜ na), santi@matematica.udl.cat. J. M. Miret, Grupo de Criptograf´ ıa y Grafos, Dept. de Matem` atica, Universitat de Lleida, Av. Jaume II, 69, 25001 Lleida (Espa˜ na), miret@matematica.udl.cat. R. Tom` as, Grupo de Criptograf´ ıa y Grafos, Dept. de Matem` atica, Universitat de Lleida, Av. Jaume II, 69, 25001 Lleida (Espa˜ na), rosana@matematica.udl.cat. J. Valera, Grupo de Criptograf´ ıa y Grafos, Dept. de Matem` atica, Universitat de Lleida, Av. Jaume II, 69, 25001 Lleida (Espa˜ na), javier.valera@udl.cat. * El primer autor agradece el financiamiento del Gobierno de Chile. Beca postdoctorado-Conicyt #74110013. Este trabajo ha sido financiado parcial- mente por los proyectos MTM2010-21580-C02-01 (Gobierno de Espa˜ na) y SGR2009-442 (Generalitat de Catalunya). En lo que respecta al segundo problema que se nos presenta con este tipo de dispositivos, existen ataques no contemplados en la criptograf´ ıa convencional que pueden revelar informaci´ on de la tarjeta. A estos ataques se les denomina ataques Side- Channel y, la criptograf´ ıa basada en curvas el´ ıpticas tambi´ en es susceptible a ellos. De hecho, existen ataques Side-Channel enfocados a este tipo de criptograf´ ıa. En 2003, Goubin [7] encontr´ o el primero de ellos. Consiste en que un atacante podr´ ıa construir un punto perteneciente a la curva usada por la tarjeta, de tal forma que, en funci´ on de los bits de la clave se pueda obtener, en un momento del cifrado conocido por el atacante, lo que se denomina un punto especial, i.e. un punto con abscisa u ordenada con valor nulo. El coste computacional de una operaci´ on con un punto especial es inferior al que tendr´ ıa la misma operaci´ on con un punto con coordenadas no nulas. De este modo, el atacante podr´ a distinguir cu´ ando aparece este punto especial y, con varias ejecuciones, obtener el secreto ´ ıntegro de la tarjeta. Intentando solucionar este nuevo ataque, espec´ ıfico para criptosistemas de curvas el´ ıpticas, Smart [20] propuso el alculo de is´ ogenas de una curva dada. Partiendo de una curva el´ ıptica E sobre un cuerpo finito F p y un primo tal que la curva tenga isogenias de grado , podemos asegurar que sus -is´ ogenas tendr´ an la misma seguridad desde el punto de vista criptogr´ afico, ya que tendr´ an el mismo cardinal. Las curvas isomorfas a una curva no son factibles como contramedida a este ataque porque si una curva cumple las condiciones para que existan puntos especiales, sus isomorfas tambi´ en las cumplir´ an. Esto no tiene porque ocurrir con las curvas is´ ogenas, pues, aunque tengan el mismo cardinal, las condiciones no permanecen inalteradas y puede suceder que una curva sucumba a este ataque y una –is´ ogena a ´ esta no. Akishita y Takagi [1], [2], bas´ andose tambi´ en en el ataque propuesto por Goubin, probaron que no s´ olo un atacante podr´ ıa obtener el secreto simplemente con los llamados puntos especiales, sino que tambi´ en se filtraba informaci´ on si ciertos valores intermedios eran nulos. A estos nuevos ataques se les denomin´ o Zero-Value Point Attacks. Akishita y Takagi dieron unas condiciones para que una curva sucumba a dichos ataques. Por tanto, si se cumple alguna de las condiciones de Goubin o Akishita y Takagi, se podr´ ıan encontrar puntos o valores que dieran informaci´ on a un atacante. Akishita y Takagi, al igual que Smart antes que ellos, utilizan, como medida preventiva para obtener curvas resis- tentes a este ataque, el c´ alculo de isogenias de una curva dada. El m´ etodo que usan ambos es similar. ´ Este tiene el inconveniente de que el grado de las isogenias aumenta de forma considerable y la b´ usqueda de una curva resistente es