Side Channel Attacks and Their Low Overhead Countermeasures on Residue Number System Multipliers

Due to the natural parallelism and the speed enhancement, Residue Number System (RNS) has been introduced to perform the modular multiplications in public-key cryptography. In this work, we examine the secure performance of RNS under side channel attacks, expose the vulnerabilities, and propose countermeasures accordingly. The proposed methods improve the resistance against side channel attacks without great area overhead or loss of speed performance, and are compatible to other countermeasures on both the logic level and the algorithm level. We prototype the proposed design on FPGA, and presented the implementation results confirm the efficiency of the proposed countermeasures.

[1]  Reinhard Posch,et al.  Modulo Reduction in Residue Number Systems , 1995, IEEE Trans. Parallel Distributed Syst..

[2]  N. Koblitz Elliptic curve cryptosystems , 1987 .

[3]  Reinhard Posch,et al.  Base extension using a convolution sum in residue number systems , 1993, Computing.

[4]  Kazuhiro Yokoyama,et al.  Elliptic curve cryptosystem , 2000 .

[5]  Paul C. Kocher,et al.  Differential Power Analysis , 1999, CRYPTO.

[6]  Victor S. Miller,et al.  Use of Elliptic Curves in Cryptography , 1985, CRYPTO.

[7]  Thanos Stouraitis,et al.  An RNS Implementation of an $F_{p}$ Elliptic Curve Point Multiplier , 2009, IEEE Transactions on Circuits and Systems I: Regular Papers.

[8]  Denis Réal,et al.  Practical Electromagnetic Template Attack on HMAC , 2009, CHES.

[9]  Adi Shamir,et al.  RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis , 2014, CRYPTO.

[10]  Atsushi Shimbo,et al.  Cox-Rower Architecture for Fast Parallel Montgomery Multiplication , 2000, EUROCRYPT.

[11]  Jean-Sébastien Coron,et al.  Resistance against Differential Power Analysis for Elliptic Curve Cryptosystems , 1999, CHES.

[12]  Laurent Imbert,et al.  Leak Resistant Arithmetic , 2004, CHES.

[13]  Ingrid Verbauwhede,et al.  FPGA Implementation of Pairings Using Residue Number System and Lazy Reduction , 2011, CHES.

[14]  Ingrid Verbauwhede,et al.  Faster Pairing Coprocessor Architecture , 2012, Pairing.

[15]  Filippo Gandino,et al.  A General Approach for Improving RNS Montgomery Exponentiation Using Pre-processing , 2011, 2011 IEEE 20th Symposium on Computer Arithmetic.

[16]  Jean-Pierre Seifert,et al.  Simple photonic emission analysis of AES , 2013, Journal of Cryptographic Engineering.

[17]  Jean-Pierre Seifert,et al.  Simple Photonic Emission Analysis of AES - Photonic Side Channel Analysis for the Rest of Us , 2012, CHES.

[18]  Nicolas Guillermin A coprocessor for secure and high speed modular arithmetic , 2011, IACR Cryptol. ePrint Arch..

[19]  Nicolas Guillermin A High Speed Coprocessor for Elliptic Curve Scalar Multiplications over \mathbbFp\mathbb{F}_p , 2010, CHES.

[20]  Antoine Joux,et al.  A One Round Protocol for Tripartite Diffie–Hellman , 2000, Journal of Cryptology.

[21]  Adi Shamir,et al.  A method for obtaining digital signatures and public-key cryptosystems , 1978, CACM.

[22]  Paul C. Kocher,et al.  Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems , 1996, CRYPTO.

[23]  Ian F. Blake,et al.  Elliptic curves in cryptography , 1999 .

[24]  Jean-Sébastien Coron,et al.  Statistics and Secret Leakage , 2000, Financial Cryptography.

[25]  Tim Güneysu,et al.  Utilizing hard cores of modern FPGA devices for high-performance cryptography , 2011, Journal of Cryptographic Engineering.

[26]  Stefan Mangard,et al.  Power analysis attacks - revealing the secrets of smart cards , 2007 .

[27]  Atsushi Shimbo,et al.  Implementation of RSA Algorithm Based on RNS Montgomery Multiplication , 2001, CHES.

[28]  P. L. Montgomery Modular multiplication without trial division , 1985 .

[29]  Ingrid Verbauwhede,et al.  A logic level design methodology for a secure DPA resistant ASIC or FPGA implementation , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.