Ultra High-Speed Polynomial Multiplications for Lattice-based Cryptography on FPGAs

Research output: Contribution to journalArticlepeer-review

64 Citations (Scopus)

Abstract

Lattice-based cryptography (LBC) has emerged as the most viable substitutes to the classical cryptographic schemes as 5 out of 7 finalist schemes in the 3rd round of the NIST post-quantum cryptography (PQC) standardization process are lattice based in construction. This work explores novel architectural optimizations in the FPGA-based hardware implementation of polynomial multiplication, which is a bottleneck in every LBC construction. To target ultra-high throughput, both schoolbook polynomial multiplication (SPM) and number theoretic transform (NTT) are explored: a completely parallel architecture of an SPM is undertaken while for NTT, radix-2 and radix-22 multi-path delay commutator (MDC) based pipelined architectures are adopted. Our proposed high-speed SPM (HSPM) structure on latest Xilinx UltraScale+ FPGA is 5 faster than the state-of-the-art LBC designs. Whereas, the proposed high-speed NTT (HNTT) structure (i.e., R22MDC) takes only 0.63s for the encryption, hence achieving the highest throughput of 408 Mbps. Moreover, all of the proposed designs achieve highest design efficiencies (i.e., throughput per slice (TPS)) in comparison to available LBC designs.

Original languageEnglish
JournalIEEE Transactions on Emerging Topics in Computing
Early online date25 Jan 2022
DOIs
Publication statusEarly online date - 25 Jan 2022

Bibliographical note

Publisher Copyright:
IEEE

Keywords

  • Computer architecture
  • Cryptography
  • Encryption
  • Field programmable gate arrays
  • Hardware
  • Lattices
  • Throughput

ASJC Scopus subject areas

  • Computer Science (miscellaneous)
  • Information Systems
  • Human-Computer Interaction
  • Computer Science Applications

Fingerprint

Dive into the research topics of 'Ultra High-Speed Polynomial Multiplications for Lattice-based Cryptography on FPGAs'. Together they form a unique fingerprint.

Cite this