**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: **ia.cr/2015/475

[ Cryptology ePrint archive ]