Implementação em FPGA de um mecanismo de encapsulamento de chave pós-quântico utilizando HLS
Criptografia pós-quântica; PQC; CRYSTALS-Kyber; acelerador; FPGA; HLS.
Essa dissertação apresenta a especificação de um acelerador para o CRYSTALS-Kyber, o primeiro mecanismo de encapsulamento de chaves (KEM) padronizado pelo National Institute of Standards and Technology (NIST) como criptografia pós-quântica (PQC). O acelerador, que foi desenvolvido com síntese de alto nível (HLS), é composto pelas operações de cifração e decifração presentes nos algoritmos de encapsulamento e desencapsulamento do KEM Kyber. A arquitetura desenvolvida faz uso de 33733 LUTs, 22810 FFs e 151 DSPs, sendo implementada em uma FPGA de baixo custo PYNQ-Z1 (XC7Z020- 1 CLG400C). Em uma simulação de troca de chaves realizada com a ferramenta Vitis HLS, o acelerador gastou o tempo total de aproximadamente 3,81 milissegundos, operando a 100MHz. Nessa mesma simulação, a arquitetura desenvolvida teve um consumo estimado de 2,243W de potência. Com a implementação do acelerador na FPGA, o tempo observado para realização das operações de cifração e decifração foi de 5,01 e 2,24 milissegundos, respectivamente. O consumo de energia nesse processo foi de aproximadamente 6,2 Joules.