Implementing SPHINCS
with restricted memory
Joost Rijneveld
Abstract: There is an ever-growing chance that quantum computers will become a reality within the near future. As much of today's cryptography relies on the hardness of problems that can be solved orders of magnitudes faster using quantum algorithms, there is a need for new schemes. One of the candidate replacement digital signature schemes is SPHINCS: a stateless hash-based signature scheme with a practical key and signature size (1KB per key and 41KB for the signature), as well as fast performance. In this thesis, SPHINCS-256 is implemented on a Cortex M3-based system with only 16KB of RAM available, running at 32MHz. At 52 seconds, producing a signature takes a significant amount of time but is not entirely impractical. Moreover, these results are in line with what is to be expected of the given platform when comparing it to the settings and results described in the SPHINCS design paper. This thesis describes the relevant cryptographic context, provides an overview of the workings of SPHINCS and details the key implementation changes necessary to make the scheme run on the chosen platform.
Related talks:
Implementing SPHINCS with restricted memory
2015-05-28 – Master thesis presentation, Radboud University –