Paper 2017/505
Side-Channel Attacks on BLISS Lattice-Based Signatures -- Exploiting Branch Tracing Against strongSwan and Electromagnetic Emanations in Microcontrollers
Thomas Espitau, Pierre-Alain Fouque, Benoit Gerard, and Mehdi Tibouchi
Abstract
In this paper, we investigate the security of the BLISS lattice-based signature scheme, one of the most promising candidates for post-quantum-secure signatures, against side-channel attacks. Several works have been devoted to its efficient implementation on various platforms, from desktop CPUs to micro-controllers and FPGAs, and more recent papers have also considered its security against certain types of physical attacks, notably fault injection and cache attacks. We turn to more traditional side-channel analysis, and describe several attacks that can yield a full key recovery. We first identify a serious source of leakage in the rejection sampling algorithm used during signature generation. Existing implementations of that rejection sampling step, which is essential for security, actually leak the ``relative norm'' of the secret key. We show how an extension of an algorithm due to Howgrave-Graham and Szydlo can be used to recover the key from that relative norm, at least when the absolute norm is easy to factor (which happens for a significant fraction of secret keys). We describe how this leakage can be exploited in practice both on an embedded device (an 8-bit AVR microcontroller) using electromagnetic analysis (EMA), and a desktop computer (recent) Intel CPU running Linux) using branch tracing. The latter attack has been mounted against the open source VPN software strongSwan. We also show that other parts of the BLISS signing algorithm can leak secrets not just for a subset of secret keys, but for 100% of them. The BLISS Gaussian sampling algorithm in strongSwan is intrinsically variable time. This would be hard to exploit using a noisy source of leakage like EMA, but branch tracing allows to recover the entire randomness and hence the key: we show that a single execution of the strongSwan signature algorithm is actually sufficient for full key recovery. We also describe a more traditional side-channel attack on the sparse polynomial multiplications carried out in BLISS: classically, multiplications can be attacked using DPA; however, our target 8-bit AVR target implementation uses repeated shifted additions instead. Surprisingly, we manage to obtain a full key recovery in that setting using integer linear programming from a single EMA trace.
Metadata
- Available format(s)
- Category
- Implementation
- Publication info
- Published elsewhere. Minor revision. ACM CCS 2017
- DOI
- 10.1145/3133956.3134028
- Keywords
- BLISSbranch tracingSPAHowgrave-Graham & Szydlo algorithm
- Contact author(s)
- t espitau @ gmail com
- History
- 2018-07-13: last of 2 revisions
- 2017-06-02: received
- See all versions
- Short URL
- https://ia.cr/2017/505
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2017/505, author = {Thomas Espitau and Pierre-Alain Fouque and Benoit Gerard and Mehdi Tibouchi}, title = {Side-Channel Attacks on {BLISS} Lattice-Based Signatures -- Exploiting Branch Tracing Against {strongSwan} and Electromagnetic Emanations in Microcontrollers}, howpublished = {Cryptology {ePrint} Archive, Paper 2017/505}, year = {2017}, doi = {10.1145/3133956.3134028}, url = {https://eprint.iacr.org/2017/505} }