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 m´ 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 c´ 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 m´ as peque˜ nas, haciendo que los c´ alculos con ellas sean m´ as r´ 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 c´ 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