Cryptology ePrint Archive: Report 2014/790

Fault Attack revealing Secret Keys of Exponentiation Algorithms from Branch Prediction Misses

Sarani Bhattacharya and Debdeep Mukhopadhyay

Abstract: Performance monitors are provided in modern day computers for observing various features of the underlying microarchitectures. However the combination of underlying micro-architectural features and performance counters lead to side-channels which can be exploited for attacking cipher implementations. In this paper, to the best of our knowledge we study for the first time, the combination of branch-predictor algorithms and performance counters to demonstrate a fault attack on the popular square-and-multiply based exponentiation algorithm, used in the RSA. The attacks exploiting branching event like branch taken can be foiled by Montgomery Ladder based implementation of the exponentiation algorithm, while attacks based on branch miss are more devastating. We demonstrate the power of the attack exploiting branch misses from performance monitors by formalizing a fault attack model, where the adversary is capable of performing a bit flip at a desired bit position of the secret exponent. The paper characterizes the branch predictors using the popular two-bit predictor and formulates the dependence on the number of branch misses on the fault induced. This characterization is exploited to develop an iterative attack algorithm where knowledge of the previously determined key-bits and the difference of branch misses (as gathered from the performance counters) are utilised to determine the next bit. The attack has been validated on several standard Intel platforms, and puts to threat several implementations of exponentiation algorithms ranging from standard square-and-multiply, Montgomery Ladder to RSA-CRT and which are often used as side-channel counter measures. The attacks show that using the fault attack model featuring branch predictors one can attack implementations of exponentiation: both square and multiply, and Montgomery ladder, which forms the central algorithm for several standard public key ciphers.

Category / Keywords: public-key cryptography / Fault attacks, branch misses, performance counters, Branch Prediction Unit, Square and Multiply Algorithm, Montgomery Ladder Algorithm, RSA-CRT

Date: received 4 Oct 2014

Contact author: sarani bhattacharya at cse iitkgp ernet in

Available format(s): PDF | BibTeX Citation

Version: 20141010:041209 (All versions of this report)

Short URL: ia.cr/2014/790

Discussion forum: Show discussion | Start new discussion


[ Cryptology ePrint archive ]