Paper 2022/412
Complete and Improved FPGA Implementation of Classic McEliece
Abstract
We present the first specification-compliant constant-time FPGA implementation of the Classic McEliece cryptosystem from the third-round of NIST's Post-Quantum Cryptography standardization process. In particular, we present the first complete implementation including encapsulation and decapsulation modules as well as key generation with seed expansion. All the hardware modules are parametrizable, at compile time, with security level and performance parameters. As the most time consuming operation of Classic McEliece is the systemization of the public key matrix during key generation, we present and evaluate three new algorithms that can be used for systemization while complying with the specification: hybrid early-abort systemizer (HEA), single-pass early-abort systemizer (SPEA), and dual-pass early-abort systemizer (DPEA). All of the designs outperform the prior systemizer designs for Classic McEliece by 2.2x to 2.6x in average runtime and by 1.7x to 2.4x in time-area efficiency. We show that our complete Classic McEliece design for example can perform key generation in 5.2-20ms, encapsulation in 0.1-0.5ms, and decapsulation in 0.7-1.5ms for all security levels on an Xlilinx Artix 7 FPGA. The performance can be increased even further at the cost of resources by increasing the level of parallelization using the performance parameters of our design.
Note: Fixing of errata in TCHES version.
Metadata
- Available format(s)
- Category
- Implementation
- Publication info
- A minor revision of an IACR publication in TCHES 2022
- DOI
- 10.46586/tches.v2022.i3.71-113
- Keywords
- Classic McEliece Encapsulation Mechanism Code-Based Cryptography PQC FPGA Hardware Implementation
- Contact author(s)
- ruben @ polycephaly org
- History
- 2022-09-05: last of 2 revisions
- 2022-03-31: received
- See all versions
- Short URL
- https://ia.cr/2022/412
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2022/412, author = {Po-Jen Chen and Tung Chou and Sanjay Deshpande and Norman Lahr and Ruben Niederhagen and Jakub Szefer and Wen Wang}, title = {Complete and Improved {FPGA} Implementation of Classic {McEliece}}, howpublished = {Cryptology {ePrint} Archive, Paper 2022/412}, year = {2022}, doi = {10.46586/tches.v2022.i3.71-113}, url = {https://eprint.iacr.org/2022/412} }