Los esquemas de criptografía clásicos utilizados actualmente para proteger a la sociedad frente a ataques de terceros pueden verse amenazados por la llegada de los ordenadores cuánticos. Estos ordenadores son capaces, de forma teórica, de ejecutar algoritmos de factorización de números grandes o búsqueda en una lista no estructurada con un rendimiento mucho mayor que los superordenadores actuales. El National Institute of Standards and Technology ha realizado un proceso de estandarización para esquemas de criptografía postcuántica con el objetivo de seleccionar esquemas que sean apropiados para distintos entornos de aplicación. Uno de los campos que abarca esta estandarización es el referente a los esquemas de firma digital, de los cuales Falcon fue elegido por su compacidad de claves y firma apto para entornos de bajos recursos.
El objetivo de este trabajo es el diseño e implementación de un acelerador hardware diseñado desde cero del esquema de firma digital Falcon en una FPGA. Existen en la literatura una gran variedad de aceleradores parciales hardware/software que implementan diferentes partes del esquema de firma digital ya sea por su exponencial reducción del número de ciclos o por su factible paralelización. Sin embargo, esta es la primera implementación en hardware del esquema al completo de Falcon sin utilizar síntesis de alto nivel y con el código diseñando desde cero. Debido al tamaño del diseño, se ha decidido utilizar la plataforma Nexys Video para la implementación del acelerador. Esta FPGA no dispone de sistema de procesamiento por lo que se deberá reservar una parte de la zona reconfigurable para sintetizar un MicroBlaze que utilice el acelerador a través de señales de control y registros para la transferencia de datos.
El diseño tiene una utilización de 85261 LUTs, 41382 FFs, 44 BRAMs y 142 DSPs, lo que supone un porcentaje de 63,34% LUTs, 15,37% FFs, 12,05% BRAMs y 19,19% DSPs respecto al total disponible en la placa Nexys Video. El banco de pruebas proporciona unos resultados de reducción del número de ciclos de ejecución del esquema de firma digital del 92% para la generación de claves, 97% para la generación de firma y 91% para la verificación de firma en comparación con el código de referencia ejecutado en el MicroBlaze. Con el MicroBlaze operando a 75 MHz esta reducción de ciclos supone una reducción de tiempos de ejecución de 5127,07 ms para la generación de claves, 422 ms para la generación de firma y 7,68 ms para la verificación de firma. Estos resultados suponen una mejora en cuanto al tiempo de ejecución y, junto al hecho de ser la primera implementación hardware al completo de Falcon, lo convierten en una opción viable para una futura implementación en entornos reales.
Los esquemas de criptografía clásicos utilizados actualmente para proteger a la sociedad frente a ataques de terceros pueden verse amenazados por la llegada de los ordenadores cuánticos. Estos ordenadores son capaces, de forma teórica, de ejecutar algoritmos de factorización de números grandes o búsqueda en una lista no estructurada con un rendimiento mucho mayor que los superordenadores actuales. El National Institute of Standards and Technology ha realizado un proceso de estandarización para esquemas de criptografía postcuántica con el objetivo de seleccionar esquemas que sean apropiados para distintos entornos de aplicación. Uno de los campos que abarca esta estandarización es el referente a los esquemas de firma digital, de los cuales Falcon fue elegido por su compacidad de claves y firma apto para entornos de bajos recursos.
El objetivo de este trabajo es el diseño e implementación de un acelerador hardware diseñado desde cero del esquema de firma digital Falcon en una FPGA. Existen en la literatura una gran variedad de aceleradores parciales hardware/software que implementan diferentes partes del esquema de firma digital ya sea por su exponencial reducción del número de ciclos o por su factible paralelización. Sin embargo, esta es la primera implementación en hardware del esquema al completo de Falcon sin utilizar síntesis de alto nivel y con el código diseñando desde cero. Debido al tamaño del diseño, se ha decidido utilizar la plataforma Nexys Video para la implementación del acelerador. Esta FPGA no dispone de sistema de procesamiento por lo que se deberá reservar una parte de la zona reconfigurable para sintetizar un MicroBlaze que utilice el acelerador a través de señales de control y registros para la transferencia de datos.
El diseño tiene una utilización de 85261 LUTs, 41382 FFs, 44 BRAMs y 142 DSPs, lo que supone un porcentaje de 63,34% LUTs, 15,37% FFs, 12,05% BRAMs y 19,19% DSPs respecto al total disponible en la placa Nexys Video. El banco de pruebas proporciona unos resultados de reducción del número de ciclos de ejecución del esquema de firma digital del 92% para la generación de claves, 97% para la generación de firma y 91% para la verificación de firma en comparación con el código de referencia ejecutado en el MicroBlaze. Con el MicroBlaze operando a 75 MHz esta reducción de ciclos supone una reducción de tiempos de ejecución de 5127,07 ms para la generación de claves, 422 ms para la generación de firma y 7,68 ms para la verificación de firma. Estos resultados suponen una mejora en cuanto al tiempo de ejecución y, junto al hecho de ser la primera implementación hardware al completo de Falcon, lo convierten en una opción viable para una futura implementación en entornos reales. Read More


