Paper 2015/066

Arithmetic Addition over Boolean Masking - Towards First- and Second-Order Resistance in Hardware

Tobias Schneider, Amir Moradi, and Tim Güneysu


A common countermeasure to thwart side-channel analysis attacks is algorithmic masking. For this, algorithms that mix Boolean and arithmetic operations need to either apply two different masking schemes with secure conversions or use dedicated arithmetic units that can process Boolean masked values. Several proposals have been published that can realize these approaches securely and efficiently in software. But to the best of our knowledge, no hardware design exists that fulfills relevant properties such as efficiency and security at the same time. In this paper, we present two design strategies to realize a secure and efficient arithmetic adder for Boolean-masked values. First, we introduce an architecture based on the ripple-carry adder that targets low-cost applications. The second architecture is based on a pipelined Kogge-Stone adder and targets high-performance applications. In particular, all our implementations adopt the threshold implementation approach to improve their resistance against SCA attacks even in the presence of glitches. We evaluated the security of our designs practically against SCA using a non-specific statistical t-test. Based on our analysis, we show that our constructions not only achieve resistance against first- and (univariate) second-order attacks but also require fewer random bits per operation compared to any existing software-based approach.

Available format(s)
Publication info
Published elsewhere. ACNS 2015
side-channel analysisthreshold implementationBoolean maskingarithmetic modular addition
Contact author(s)
amir moradi @ rub de
2015-04-08: last of 2 revisions
2015-01-29: received
See all versions
Short URL
Creative Commons Attribution


      author = {Tobias Schneider and Amir Moradi and Tim Güneysu},
      title = {Arithmetic Addition over Boolean Masking - Towards First- and Second-Order Resistance in Hardware},
      howpublished = {Cryptology ePrint Archive, Paper 2015/066},
      year = {2015},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.