Uno de los objetivos del proyecto DRAC es promover la adopción de la criptografía post-cuántica (PQC), mediante la aceleración de los esquemas PQC y de su despliegue en entornos RISC-V. La mejora de la eficiencia de los esquemas PQC puede motivar a los actores tecnológicos a adoptar su uso, y a producir tecnologías más seguras contra ataques con ordenadores cuánticos. Con este fin, las últimas investigaciones en el proyecto DRAC [1] proponen una aceleración que aplica co-diseño HW/SW y técnicas HLS a un importante esquema post-cuántico, llamado Classic McEliece (CM).
En los últimos años, las tecnologías cuánticas se han desarrollado a un ritmo acelerado. Aunque la informática cuántica puede beneficiar muchas disciplinas computacionales, ésta representa una amenaza alarmante para la infraestructura criptográfica actual. Esto se debe a que se podrían utilizar algoritmos cuánticos conocidos para romper la seguridad de los criptosistemas de clave pública de uso corriente y actual. Afortunadamente, una rápida adopción de la PQC ayudaría a prevenir esta amenaza futura. Con estas consideraciones en mente, en 2017 el Instituto Nacional de Estándares y Tecnología (del inglés, NIST) lanzó un concurso abierto para elegir los futuros estándares PQC [2]. Este proceso se encuentra actualmente en su última ronda de evaluación, y el esquema CM es uno de los siete criptosistemas finalistas restantes.
Classic McEliece es un esquema criptográfico orientado al intercambio seguro de claves. Tiene la seguridad más robusta de entre los candidatos al proceso del NIST, además de un cifrado y descifrado rápido, y textos cifrados muy pequeños. Es especialmente atractivo para aplicaciones como las VPN, donde un tamaño grande de claves no se convierte en un problema. Sin embargo, prácticamente no existen estudios donde se evalúe su rendimiento, especialmente en plataformas heterogéneas. La investigación del proyecto DRAC cubre esta carencia, acelerando el esquema CM en plataformas que contienen CPU y FPGA.
La aceleración hardware propuesta afecta la parte más pesada de cada algoritmo de CM, según un perfil de rendimiento preliminar, y usa co-diseño HW/SW y codificación de síntesis de alto nivel (del inglés, HLS). La HLS consiste en generar hardware a partir de una descripción escrita en un lenguaje software, produciendo una mejora de rendimiento considerable a cambio de un esfuerzo de diseño menor que en implementaciones RTL. Se ha utilizado el código C originalmente entregado al NIST, y se ha aplicado la metodología de co-diseño HW/SW para explotar el tiempo de inactividad de los recursos de hardware, para desarrollar y canalizar bucles computacionalmente intensivos, para utilizar particionado matricial en datos grandes, y para paralelizar los cálculos en diferentes aceleradores. En este proceso, se ha balanceado cuidadosamente la seguridad, la aceleración y el hardware utilizado. Los aceleradores obtenidos se han desplegado en la plataforma Xilinx zcu 102, que comprende un ARM Cortex-A53 de cuatro núcleos, que funciona a 1.1 GHz, y un FPGA Zynq-Ultrascale+, conectándose dos DRAMs de 4 y 512 GB.
Los resultados de aceleración obtenidos son significativos, y muestran una mejora respecto a las implementaciones existentes para todos los algoritmos de CM. No se sacrifica rendimiento a cambio de seguridad, ya que los niveles de seguridad más elevados de CM admiten aceleraciones mayores. Los resultados muestran aceleraciones de hasta 55,2x, 3,3x y 8,7x para los algoritmos CM de generación, encapsulación y descapsulación de claves, en comparación a una implementación escalar puramente software. Este enfoque proporciona una velocidad considerable, incluso si se compara con código manualmente vectorizado, obteniendo una aceleración de 2,3x, 0,5x y 0,1x para cada uno de los algoritmos CM, respectivamente. El diseño es muy portable, y se puede implementar en plataformas heterogéneas CPU+FPGA actuales.
Referencias:
[1] HLS-Based HW/SW Co-Design of the Post-Quantum Classic McEliece Cryptosystem. Vatistas Kostalampros, Jordi Ribes-González, Oriol Farràs, Miquel Moretó and Carles Hernández. FPL 2021 https://cfaed.tu-dresden.de/fpl2021/program.
[2] National Institute of Standards and Technology, Information Technology Laboratory, Computer Security Resource Center. Post-Quantum Cryptography, Round 3 Submissions. 2020. https://csrc.nist.gov/projects/post-quantum-cryptography/round-3-submissions.