Enabling FrodoKEM on Embedded Devices


  • Joppe W. Bos NXP Semiconductors, Leuven, Belgium
  • Olivier Bronchain NXP Semiconductors, Leuven, Belgium
  • Frank Custers NXP Semiconductors, Leuven, Belgium
  • Joost Renes NXP Semiconductors, Leuven, Belgium
  • Denise Verbakel NXP Semiconductors, Leuven, Belgium; Radboud University, Nijmegen, Netherlands
  • Christine van Vredendaal NXP Semiconductors, Leuven, Belgium




Post-Quantum Cryptography, Small-stack, FrodoKEM


FrodoKEM is a lattice-based Key Encapsulation Mechanism (KEM) based on unstructured lattices. From a security point of view this makes it a conservative option to achieve post-quantum security, hence why it is favored by several European authorities (e.g., German BSI and French ANSSI). Relying on unstructured instead of structured lattices (e.g., CRYSTALS-Kyber) comes at the cost of additional memory usage, which is particularly critical for embedded security applications such as smart cards. For example, prior FrodoKEM-640 implementations (using AES) on Cortex-M4 require more than 80 kB of stack making it impossible to run on some embedded systems. In this work, we explore several stack reduction strategies and the resulting time versus memory trade-offs. Concretely, we reduce the stack consumption of FrodoKEM by a factor 2–3x compared to the smallest known implementations with almost no impact on performance. We also present various time-memory trade-offs going as low as 8 kB for all AES parameter sets, and below 4 kB for FrodoKEM-640. By introducing a minor tweak to the FrodoKEM specifications, we additionally reduce the stack consumption down to 8 kB for all the SHAKE versions. As a result, this work enables FrodoKEM on more resource constrained embedded systems.




How to Cite

Bos, J. W., Bronchain, O., Custers, F., Renes, J., Verbakel, D., & van Vredendaal, C. (2023). Enabling FrodoKEM on Embedded Devices. IACR Transactions on Cryptographic Hardware and Embedded Systems, 2023(3), 74–96. https://doi.org/10.46586/tches.v2023.i3.74-96