Modelo de criptoprocesador de curvas elípticas en gf(2m) basado en hardware reconfigurable

  1. Brotons Molinero, Francisco Javier
Dirigida por:
  1. Bernardo Ledesma Latorre Codirector/a
  2. Ángel Grediaga Olivo Codirector/a

Universidad de defensa: Universitat d'Alacant / Universidad de Alicante

Fecha de defensa: 15 de enero de 2016

Tribunal:
  1. Daniel Meziat Luna Presidente/a
  2. Jerónimo Mora Pascual Secretario/a
  3. Juan Suardíaz Muro Vocal

Tipo: Tesis

Teseo: 399661 DIALNET lock_openRUA editor

Resumen

MOTIVACIÓN ----------------- La seguridad electrónica ha sido uno de los hitos que más ha evolucionado en los últimos años, seguramente debido al incremento de las transacciones de este tipo que se realizan diariamente. Sin embargo, las tecnologías actuales requieren claves cada vez más grandes, incrementándose la complejidad y el área de los diseños además del tiempo de procesado. La criptografía de curvas elípticas ofrece mayor seguridad por bit de clave utilizado en los sistemas de clave pública, por ejemplo el RSA con 1024 bits de clave tiene una seguridad similar a un criptosistema basado en Curvas Elípticas (CCE) de 160 bits. La ventaja de utilizar claves tan pequeñas hacen a los sistemas CCE particularmente atractivos para utilizar en aplicaciones en las que el procesamiento de memoria sea restrictivo, así como en sistemas embebidos. Se considera que un criptosistema de curvas elípticas con 160bits sea seguro en los próximos 10 años y uno de 193 bits lo sea en los próximos 20 años. En un CEE las operaciones se realizan dentro de un cuerpo finito, siendo los más comúnmente utilizados GF(p) y GF(2m). La operación básica dentro de un CCE es la multiplicación de puntos y, por tanto, se requerirá una multiplicación eficiente en cuerpos finitos. Como consecuencia, uno de los principales puntos donde se realiza el mayor esfuerzo de investigación está enfocado a la implementación hardware de la multiplicación modular de forma eficaz y segura. Las propuestas de implementación de arquitecturas sobre hardware reconfigurable y ASIC suelen utilizarse cuando ser requieren altas prestaciones, frecuentemente a costa de sacrificar aspectos como puede ser la superficie del chip empleada para dicha implementación. Esta idea nos conduce al establecimiento de campos finitos y polinomios irreducibles de tamaño fijo. En las implementaciones sobre un ASIC, el circuito queda sin posibilidades de modificación, mientras que el uso de plataformas reconfigurables como son las FPGA nos ofrecen la opción de modificación a través de la reconfiguración. Esta funcionalidad hasta hace muy poco obligaba a la reprogramación completa del sistema, pero hoy podemos realizar una reconfiguración on-the-fly que nos permite, por ejemplo, solamente la reconfiguración del circuito encargado de realizar la reducción modular por otro más eficiente con total flexibilidad. DESARROLLO -------------------- En esta tesis utilizaremos la criptografía basada en curvas elípticas como base para desarrollar una propuesta de modelo de criptoprocesador capaz de trabajar en campos finitos de característica 2. Como parte inicial de este trabajo se ha llevado a cabo el estudio del estado de la situación del tema que se aborda, para lo cual se han revisado las principales implementaciones hardware de criptosistemas de clave pública, partiendo desde los primeros sistemas basados en RSA. Posteriormente se ha realizado una descripción comparativa entre estos criptosistemas basados en RSA y los basados en curvas elípticas que nos ayudan a ubicarnos en su situación actual. Como tarea inicial se realiza modelado de un microprocesador de 8 bits en VHDL como plataforma inicial de trabajo del criptosistema. Una vez desarrollado plasmaremos sobre él los algoritmos capaces de realizar las operaciones necesarias trabajando sobre coordenadas afines y utilizando como base una tarjeta Nexys 2 de Digilent. Una vez detectadas sus carencias se proponen las posibles modificaciones que permitan mejorar el funcionamiento y sus tiempos de respuesta. Como resultado se pone de manifiesto la importancia de disponer de una multiplicación eficiente, por lo que se propone un algoritmo de multiplicación paralelo de dígitos en serie con reducción intercalada capaz de trabajar en GF(2m). En primer lugar para campos que sean múltiplo del tamaño de digito seleccionado y que posteriormente se generaliza y se hace independiente del mismo. Estos algoritmos se describen en VHDL y se plasman en hardware para evaluar los resultados obtenidos y poder seleccionar las características que deberá tener para un funcionamiento que se adapte a las necesidades buscadas. Posteriormente se integra este multiplicador conjuntamente con el resto de operadores necesarios para poder realizar las operaciones necesarias para implementar los principales protocolos de criptografía de clave pública basados en curvas elípticas en un sistema criptoprocesador que trabaja con coordenadas afines y obtener el modelo buscado capaz de trabajar en los diferentes campos recomendados por diferentes organismos internacionales. El modelo se valida mediante la comparación con varios dispositivos diseñados para trabajar en ámbitos similares. CONCLUSIONES ------------------------- Esta tesis presenta un paso más hacia la protección de la seguridad de las comunicaciones a través de canales inseguros mediante el uso de la criptografía de clave pública. Para ello se presenta un modelo de criptoprocesador capaz de trabajar en cualquier campo finito de característica 2 dotado de un nuevo operador que incorpora un multiplicador paralelo de dígitos en serie en GF(2m), puesto que la multiplicación escalar es la operación básica a realizar en un criptosistema basado en curvas elípticas. Los resultados obtenidos en su tiempo de respuesta ponen de manifiesto su validez.