Aceleración de operaciones en el algoritmo de criptografía postcuántica CRYSTALS-KYBER

Aceleración de operaciones en el algoritmo de criptografía postcuántica CRYSTALS-KYBER

Adriana Pérez Navarro
 

Texto completo de la Tesis    

 

 


Resumen

Hoy en día, los criptosistemas de clave pública como RSA y la criptografía de curva elíptica, representan los estándares para el intercambio seguro de claves y firmas digitales. Sin embargo con los avances en computación cuántica, se espera que se vuelvan inseguros. Ante esta preocupación, surge la Criptografía Postcuántica como una nueva área de investigación para desarrollar sistemas criptográficos resistentes a ataques convencionales y cuánticos y que puedan así sustituir las soluciones tradicionales de criptografía de clave pública. El Instituto Nacional de Estándares y Tecnología en 2017 inició un proceso para estandarizar nuevos algoritmos de clave pública que sean robustos frente a ataques cuánticos; el ganador de la tercera ronda de competencias fue el algoritmo CRYSTALS-KYBER. En este trabajo se propone diseñar e implementar un codiseño HW/SW para acelerar operaciones en el algoritmo de criptografía postcuántica CRYSTALS-KYBER. El diseño e implementación de una partición eficiente entre hardware y software maximizó el desempeño del algoritmo CRYSTALS-KYBER, en donde el hardware fue responsable de acelerar la Transformada Teórica de Números (NTT, por sus siglas en inglés) y su inversa (NTT−1), así como las primitivas SHA3-256, SHA3-512, SHAKE-128 Y SHAKE-256 de la familia SHA-3, fundamentales en CRYSTALS-Kyber para la generación de claves, hashes y expansión de semillas.

 

Abstract

Today, public key cryptosystems such as RSA and elliptic curve cryptography represent the standards for the secure exchange of keys and digital signatures. However, with advances in quantum computing, they are expected to become insecure. Given this concern, Post-Quantum Cryptography emerges as a new area of research to develop cryptographic systems that are resistant to conventional and quantum attacks and can replace traditional public key cryptographic solutions. The National Institute of Standards and Technology in 2017 initiated a process to standardize new public-key algorithms that are robust against quantum attacks; the winner of the third round of competitions was the CRYSTALS-KYBER algorithm. In this paper, we propose to design and implement a HW/SW codesign to accelerate operations on the CRYSTALSKYBER post-quantum cryptography algorithm. The design and implementation of an efficient partition between hardware and software maximized the performance of the CRYSTALS-KYBER algorithm, where the hardware was responsible for accelerating the Theoretical Number Transform (NTT, and its inverse (NTT−1), as well as the SHA3-256, SHA3-512, SHAKE-128 and SHAKE-256 primitives of the SHA-3 family, fundamental in CRYSTALS-Kyber for key generation, hashes and seed expansion..