Fast and Efficient Hardware Implementation of HQC

Abstract

This work presents a hardware design for constant-time implementation of the HQC (Hamming Quasi-Cyclic) code-based key encapsulation mechanism. HQC has been selected for the fourth-round of NIST’s Post-Quantum Cryptography standardization process and this work presents first, hand-optimized design of HQC key generation, encapsulation, and decapsulation written in Verilog targeting implementation on FPGAs. The three modules further share a common SHAKE256 hash module to reduce area overhead. All the hardware modules are parametrizable at compile time so that designs for the different security levels can be easily generated. The architecture of the hardware modules includes novel, dual clock domain design, allowing the common SHAKE module to run at slower clock speed compared to the rest of the design, while other faster modules run at their optimal clock rate. The design currently outperforms the other hardware designs for HQC, and many of the fourth-round Post-Quantum Cryptography standardization process, with one of the best time-area products as well. For the combined HighSpeed design targeting lowest security level, we show that the HQC design can perform key generation in 0.1 ms, encapsulation in 0.14 ms, and decapsulation in 0.23 ms when synthesized for an Xilinx Artix 7 FPGA. As this work shows, code-based algorithms can be competitive with other schemes when optimized hardware is developed. The presented design will further be made available under open-source license.

Type
Publication
Cryptology ePrint Archive
Chuanqi Xu
Chuanqi Xu
Ph.D. Student

I am a PhD candidate at Yale University. My current research focuses on quantum computing and computer security, where I design novel attacks and defenses targeting quantum computers and quantum cloud providers. Specifically, my work explores security and privacy across the entire technology stack of quantum computers:

  1. Investigating vulnerabilities in quantum processors and qubit technologies.
  2. Developing secure and private quantum computer systems and architecture.
  3. Ensuring the security of quantum algorithms, with a focus on quantum machine learning (QML).

Previously, I worked on RTL design (Verilog) for FPGAs, implementing Post-Quantum Cryptography (PQC) that is secure to both classical and quantum computer attacks.

I am actively seeking roles as a research scientist, software engineer, and quant researcher. I am broadly interested in developing systems and infrastructure, especially for ML/GenAI infrastructure and systems.