Abstract
FrodoKEM is a lattice-based key encapsulation mechanism, currently a semi-finalist in NIST’s post-quantum standardisation effort. A condition for these candidates is to use NIST standards for sources of randomness (i.e. seed-expanding), and as such most candidates utilise SHAKE, an XOF defined in the SHA-3 standard. However, for many of the candidates, this module is a significant implementation bottleneck. Trivium is a lightweight, ISO standard stream cipher which performs well in hardware and has been used in previous hardware designs for lattice-based cryptography. This research proposes optimised designs for FrodoKEM, concentrating on high throughput by parallelising the matrix multiplication operations within the cryptographic scheme. This process is eased by the use of Trivium due to its higher throughput and lower area consumption. The parallelisations proposed also complement the addition of first-order masking to the decapsulation module. Overall, we significantly increase the throughput of FrodoKEM; for encapsulation we see a 16 × speed-up, achieving 825 operations per second, and for decapsulation we see a 14 × speed-up, achieving 763 operations per second, compared to the previous state of the art, whilst also maintaining a similar FPGA area footprint of less than 2000 slices.
Original language | English |
---|---|
Pages (from-to) | 317-327 |
Number of pages | 11 |
Journal | Journal of Cryptographic Engineering |
Volume | 11 |
Issue number | 4 |
Early online date | 20 Mar 2021 |
DOIs | |
Publication status | Published - Nov 2021 |
Bibliographical note
Funding Information:This research was partially funded by the Innovate UK Project 105747 (Hardware assisted post-quantum cryptography for embedded system devices), the EPSRC via Grant EP/N011635/1 (LADA), and the ERC via Grant 725042 (SEAL).
Publisher Copyright:
© 2021, The Author(s).
Keywords
- FPGA
- FrodoKEM
- Hardware Security
- Lattice-Based Cryptography
- Post-Quantum Cryptography
- Side-Channel Analysis
ASJC Scopus subject areas
- Software
- Computer Networks and Communications