Antonio Guimarães

Optimized implementation of QC-MDPC code-based cryptography

Antonio Guimarães, Diego F. Aranha, Edson Borin

Concurrency and Computation: Practice and Experience, 31(18), 2019 · doi:10.1002/cpe.5089

Abstract

This paper presents a new enhanced version of the QcBits key encapsulation mechanism, which is a constant-time implementation of the Niederreiter cryptosystem using QC-MDPC codes. In this version, we updated the implementation parameters to meet the 128-bit quantum security level, replaced some of the core algorithms to avoid using slower instructions, vectorized the entire code using the AVX-512 instruction set extension, and applied several other techniques to achieve a competitive performance level. Our implementation takes 928, 259, and 5008 thousand Skylake cycles to perform batch key generation (cost per key), encryption, and uniform decryption, respectively. Comparing with the current state-of-the-art implementation for QC-MDPC codes, BIKE, our code is 1.9 times faster when decrypting messages.

BibTeX

@article{guimaraes2019optimized,
  author  = {Antonio Guimarães and Diego F. Aranha and Edson Borin},
  title   = {{Optimized implementation of QC-MDPC code-based cryptography}},
  journal = {Concurrency and Computation: Practice and Experience, 31(18), 2019},
  year    = {2019},
  doi     = {10.1002/cpe.5089},
  url     = {https://doi.org/10.1002/cpe.5089}
}

Cite as: Antonio Guimarães, Diego F. Aranha, Edson Borin. Optimized implementation of QC-MDPC code-based cryptography. Concurrency and Computation: Practice and Experience, 31(18), 2019.

Related

CBC 2019
Antonio Guimarães, Edson Borin, Diego F. Aranha
WSCAD 2017
Antonio Guimarães, Diego F. Aranha, Edson Borin
PQCrypto 2026
A–Z Antonio Guimarães, Gabriela M. Jacob, Hilder V. L. Pereira