Construcción de Operadores Básicos Sobre Campos Finitos GF(2^m)

Mario Alberto García Martínez


Texto completo de la Tesis    


Resumen

Las operaciones básicas sobre campos finitos o de Galois GF(2m ), tales como la multiplicación, la exponenciación, la elevación al cuadrado y la división, son operaciones fundamentales para el desarrollo de algoritmos en las áreas de criptografía, códigos de corrección de errores y procesamiento digital de señales. Tales aplicaciones requieren de un alto grado de utilización de las operaciones mencionadas, por lo que estos cálculos consumen una gran cantidad de memoria y de tiempo de proceso cuando son realizados en software. Por razones de desempeño y seguridad, es preferible implementar tales algoritmos en hardware.
En esta tesis describimos la construcción de tres arquitecturas que operan sobre campos finitos GF(2m): un divisor, un exponenciador y un multiplicador, que se han implementado en FPGA’s (Field Programmable Gate Array). Estos dispositivos tienen la gran ventaja de poder ser programados y reprogramados, lo que facilita el proceso de verificación de los circuitos implementados.
El uso de FPGA’s se presenta como una alternativa a las soluciones de diseño tradicionales realizadas con ASIC’s (Application Specific Integrated Circuit), y con esto se pretende evitar el inconveniente de la poca flexibilidad que implica este método de diseño. Medimos la complejidad de espacio en función del número de CLB’s (Configurable Logic Block ) requeridos en el FPGA, frente a la tradicional medida que se basa en el número de compuertas usadas en una implementación. Usamos VHDL (VHSIC-Hardware Description Language y, a su vez, VHSIC es Very High Speed Integrated Circuit) para describir cada una de tales arquitecturas, y los resultados de la síntesis y la simulación se han realizado usando el paquete computacional ISE 4.1i de la compañía Xilinx.