Cryptology ePrint Archive: Report 2015/475

Randomizing scalar multiplication using exact covering systems of congruences

Eleonora Guerrini and Laurent Imbert and Théo Winterhalter

Abstract: A covering system of congruences can be defined as a set of congruence relations of the form: $\{r_1 \pmod{m_1}, r_2 \pmod{m_2}, \dots, r_t \pmod{m_t}\}$ for $m_1, \dots, m_t \in \N$ satisfying the property that for every integer $k$ in $\Z$, there exists at least an index $i \in \{1, \dots, t\}$ such that $k \equiv r_i \pmod{m_i}$. First, we show that most existing scalar multiplication algorithms can be formulated in terms of covering systems of congruences. Then, using a special form of covering systems called exact $n$-covers, we present a novel uniformly randomized scalar multiplication algorithm that may be used to counter differential side-channel attacks, and more generally physical attacks that require multiple executions of the algorithm. This algorithm can be an alternative to Coron's scalar blinding technique for elliptic curves, in particular when the choice of a particular finite field tailored for speed compels to use a large random factor.

Category / Keywords: Scalar multiplication, side-channel attacks, randomized algorithms, covering systems of congruence

Date: received 19 May 2015, last revised 12 Feb 2016

Contact author: laurent imbert at lirmm fr

Available format(s): PDF | BibTeX Citation

Note: Updated version

Version: 20160212:150549 (All versions of this report)

Short URL:

[ Cryptology ePrint archive ]