A Masked Ring-LWE Implementation

Authors: 
O. Reparaz, S. Sinha Roy, R. De Clercq, I. Verbauwhede, and F. Vercauteren (KU Leuven)

Published in the book: Cryptographic Hardware and Embedded Systems -- CHES 2015, pp.683-702

Lattice-based cryptography has been proposed as a postquantum public-key cryptosystem. In this paper, we present a masked ringLWE decryption implementation resistant to first-order side-channel attacks. Our solution has the peculiarity that the entire computation is performed in the masked domain. This is achieved thanks to a new, bespoke masked decoder implementation. The output of the ring-LWE decryption are Boolean shares suitable for derivation of a symmetric key. We have implemented a hardware architecture of the masked ring-LWE processor on a Virtex-II FPGA, and have performed side channel analysis to confirm the soundness of our approach. The area of the protected architecture is around 2000 LUTs, a 20% increase with respect to the unprotected architecture. The protected implementation takes 7478 cycles to compute, which is only a factor ×2.6 larger than the unprotected implementation.