Un diseño de hardware en tuberías de FNTT e INTT del algoritmo PQC CRYSTALS-Kyber
Autores: Rashid, Muhammad; Sonbul, Omar S.; Jamal, Sajjad Shaukat; Jaffar, Amar Y.; Kakhorov, Azamat
Idioma: Inglés
Editor: MDPI
Año: 2024
Acceso abierto
Artículo científico
2024
Un diseño de hardware en tuberías de FNTT e INTT del algoritmo PQC CRYSTALS-Kyber
Categoría
Gestión y administración
Subcategoría
Gestión de la tecnología y la inovación
Palabras clave
Criptografía post-cuántica
Multiplicaciones polinómicas basadas en NTT
Algoritmo PQC CRYSTALS-Kyber
Diseño de unidad mariposa
Validación de FPGA
Rendimiento
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 1
Citaciones: Sin citaciones
Los algoritmos de criptografía post-cuántica (PQC) basados en redes requieren multiplicaciones polinómicas basadas en la transformada numérica teórica (NTT). La multiplicación de polinomios basada en NTT depende del cálculo de la transformada numérica teórica hacia adelante (FNTT) y la transformada numérica teórica inversa (INTT), respectivamente. Por lo tanto, este trabajo presenta una arquitectura unificada de acelerador de hardware NTT para facilitar las multiplicaciones polinómicas del algoritmo PQC CRYSTALS-Kyber. Además, se propone un diseño unificado de unidad mariposa de configuraciones Cooley-Tukey y Gentleman-Sande para implementar las operaciones FNTT e INTT utilizando un sumador, un multiplicador y un restador, compartiendo cuatro multiplexores de enrutamiento y una unidad de reducción modular basada en Barrett. La ruta crítica de la unidad mariposa propuesta se minimiza utilizando tuberías. Se implementa un controlador eficiente para las funcionalidades de control. Los resultados de la simulación después del paso de colocación y enrutamiento se proporcionan en dispositivos de matriz de puertas programables en campo Xilinx Virtex-6 y Virtex-7. Además, el diseño propuesto se implementa físicamente para validación en FPGA Virtex-7. El número de slices utilizados en los dispositivos Virtex-6 y Virtex-7 es de 398 y 312, el número requerido de ciclos de reloj para un conjunto de cálculos FNTT e INTT es de 1410 y 1540, y la frecuencia de operación máxima es de 256 y 290 MHz, respectivamente. La figura de mérito promedio (FoM), donde FoM es la relación de rendimiento a slices, ilustra un 62% mejor rendimiento que el diseño NTT más relevante de la literatura.
Descripción
Los algoritmos de criptografía post-cuántica (PQC) basados en redes requieren multiplicaciones polinómicas basadas en la transformada numérica teórica (NTT). La multiplicación de polinomios basada en NTT depende del cálculo de la transformada numérica teórica hacia adelante (FNTT) y la transformada numérica teórica inversa (INTT), respectivamente. Por lo tanto, este trabajo presenta una arquitectura unificada de acelerador de hardware NTT para facilitar las multiplicaciones polinómicas del algoritmo PQC CRYSTALS-Kyber. Además, se propone un diseño unificado de unidad mariposa de configuraciones Cooley-Tukey y Gentleman-Sande para implementar las operaciones FNTT e INTT utilizando un sumador, un multiplicador y un restador, compartiendo cuatro multiplexores de enrutamiento y una unidad de reducción modular basada en Barrett. La ruta crítica de la unidad mariposa propuesta se minimiza utilizando tuberías. Se implementa un controlador eficiente para las funcionalidades de control. Los resultados de la simulación después del paso de colocación y enrutamiento se proporcionan en dispositivos de matriz de puertas programables en campo Xilinx Virtex-6 y Virtex-7. Además, el diseño propuesto se implementa físicamente para validación en FPGA Virtex-7. El número de slices utilizados en los dispositivos Virtex-6 y Virtex-7 es de 398 y 312, el número requerido de ciclos de reloj para un conjunto de cálculos FNTT e INTT es de 1410 y 1540, y la frecuencia de operación máxima es de 256 y 290 MHz, respectivamente. La figura de mérito promedio (FoM), donde FoM es la relación de rendimiento a slices, ilustra un 62% mejor rendimiento que el diseño NTT más relevante de la literatura.