Verifying Post Quantum Signatures in 8kB of RAM
2021-07-15·,,,,,,,·
1 min read
Ruben Gonzalez
Andreas Hülsing
Juliane Krämer
Tanja Lange
Marc Stöttinger
Elisabeth Waitz
Bo-Yin Yang
Abstract
In this paper, we study implementations of post-quantum signature schemes on
resource-constrained devices. We focus on verification of signatures and
cover NIST PQC round-3 candidates Dilithium, Falcon, Rainbow, GeMSS, and
SPHINCS+. We assume an ARM Cortex-M3 with 8 kB of memory and 8 kB of flash for
code; a practical and widely deployed setup in, for example, the automotive
sector. This amount of memory is insufficient for most schemes. Rainbow and
GeMSS public keys are too big; SPHINCS+ signatures do not fit in this memory.
To make signature verification work for these schemes, we stream in public
keys and signatures. Due to the memory requirements for efficient Dilithium
implementations, we stream in the public key to cache more intermediate
results. We discuss the suitability of the signature schemes for streaming,
adapt existing implementations, and compare performance.
Type
Publication
PQCrypto 2021
This work was also presented at the third NIST post-quantum cryptography standardization workshop.
Authors
Ruben Gonzalez
Authors
Andreas Hülsing
Authors
Authors
Juliane Krämer
Authors
Tanja Lange
Authors
Marc Stöttinger
Authors
Elisabeth Waitz

Authors
Senior Cryptography Researcher
Thom Wiggers is a cryptography researcher at PQShield.
His PhD thesis was on the interactions of post-quantum cryptography with protocols, under the supervision of Peter Schwabe, at the Institute of Computing and Information Sciences, Radboud University in The Netherlands.
Authors
Bo-Yin Yang