Hardware Designer's Guide to Fault Attacks

Hardware designers invest a significant design effort when implementing computationally intensive cryptographic algorithms onto constrained embedded devices to match the computational demands of the algorithms with the stringent area, power, and energy budgets of the platforms. When it comes to designs that are employed in potential hostile environments, another challenge arises-the design has to be resistant against attacks based on the physical properties of the implementation, the so-called implementation attacks. This creates an extra design concern for a hardware designer. This paper gives an insight into the field of fault attacks and countermeasures to help the designer to protect the design against this type of implementation attacks. We analyze fault attacks from different aspects and expose the mechanisms they employ to reveal a secret parameter of a device. In addition, we classify the existing countermeasures and discuss their effectiveness and efficiency. The result of this paper is a guide for selecting a set of countermeasures, which provides a sufficient security level to meet the constraints of the embedded devices.

[1]  Glen G. Langdon,et al.  Concurrent error detection for group look-ahead binary adders , 1970 .

[2]  George S. Taylor,et al.  Improving smart card security using self-timed circuits , 2002, Proceedings Eighth International Symposium on Asynchronous Circuits and Systems.

[3]  Jasper G. J. van Woudenberg,et al.  Practical Optical Fault Injection on Secure Microcontrollers , 2011, 2011 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[4]  Ingrid Verbauwhede,et al.  An In-depth and Black-box Characterization of the Effects of Clock Glitches on 8-bit MCUs , 2011, 2011 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[5]  Erich Wenger,et al.  A Hardware Processor Supporting Elliptic Curve Cryptography for Less than 9 kGEs , 2011, CARDIS.

[6]  Jean-Jacques Quisquater,et al.  How can we overcome both side channel analysis and fault attacks on RSA-CRT? , 2007, Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC 2007).

[7]  Berk Sunar,et al.  Tate Pairing with Strong Fault Resiliency , 2007, Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC 2007).

[8]  Wei Wang,et al.  A CRT-RSA Algorithm Secure against Hardware Fault Attacks , 2006, 2006 2nd IEEE International Symposium on Dependable, Autonomic and Secure Computing.

[9]  Frederik Vercauteren,et al.  A Fault Attack on Pairing-Based Cryptography , 2006, IEEE Transactions on Computers.

[10]  Ingrid Verbauwhede,et al.  Systematic security evaluation method against C safe-error attacks , 2011, 2011 IEEE International Symposium on Hardware-Oriented Security and Trust.

[11]  Jean-Jacques Quisquater,et al.  Safe-Error Attack on SPA-FA Resistant Exponentiations Using a HW Modular Multiplier , 2007, ICISC.

[12]  David Naccache,et al.  Experimenting with Faults, Lattices and the DSA , 2005, Public Key Cryptography.

[13]  Christophe Giraud Differential Fault Analysis of the Advanced Encryption Standard , 2012, Fault Analysis in Cryptography.

[14]  Jörn-Marc Schmidt,et al.  A Fault Attack on ECDSA , 2009, 2009 Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC).

[15]  Ingrid Verbauwhede,et al.  Low-cost fault detection method for ECC using Montgomery powering ladder , 2011, 2011 Design, Automation & Test in Europe.

[16]  JaeCheol Ha,et al.  Hardware Fault Attackon RSA with CRT Revisited , 2002, ICISC.

[17]  David Vigilant,et al.  RSA with CRT: A New Cost-Effective Solution to Thwart Fault Attacks , 2008, CHES.

[18]  Patrick Schaumont,et al.  Securing embedded systems , 2006, IEEE Security & Privacy.

[19]  Jörn-Marc Schmidt,et al.  Fault Attacks on the Montgomery Powering Ladder , 2010, ICISC.

[20]  Israel Koren,et al.  An efficient hardware-based fault diagnosis scheme for AES: performances and cost , 2004, 19th IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, 2004. DFT 2004. Proceedings..

[21]  Matthieu Rivain,et al.  Securing RSA against Fault Analysis by Double Addition Chain Exponentiation , 2009, CT-RSA.

[22]  Moti Yung,et al.  A Comparative Cost/Security Analysis of Fault Attack Countermeasures , 2006, FDTC.

[23]  Jacques Stern,et al.  Probing Attacks on Tamper-Resistant Devices , 1999, CHES.

[24]  Sylvain Guilley,et al.  Fault Injection Resilience , 2010, 2010 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[25]  Cécile Canovas,et al.  Public Key Perturbation of Randomized RSA Implementations , 2010, CHES.

[26]  Aviad Kipnis,et al.  Attacks on Authentication and Signature Schemes Involving Corruption of Public Key (Modulus) , 2008, 2008 5th Workshop on Fault Diagnosis and Tolerance in Cryptography.

[27]  Nevine Maurice Ebeid,et al.  Securing the Elliptic Curve Montgomery Ladder against Fault Attacks , 2009, 2009 Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC).

[28]  Marc Joye,et al.  The Montgomery Powering Ladder , 2002, CHES.

[29]  Christophe Clavier,et al.  Why One Should Also Secure RSA Public Key Elements , 2006, CHES.

[30]  M. Kuhn,et al.  The Advanced Computing Systems Association Design Principles for Tamper-resistant Smartcard Processors Design Principles for Tamper-resistant Smartcard Processors , 2022 .

[31]  Kaijie Wu,et al.  LOEDAR: A low cost error detection and recovery scheme for ECC , 2011, 2011 Design, Automation & Test in Europe.

[32]  Helena Handschuh,et al.  Blinded Fault Resistant Exponentiation Revisited , 2009, 2009 Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC).

[33]  Jean-Pierre Seifert,et al.  Sign Change Fault Attacks on Elliptic Curve Cryptosystems , 2006, FDTC.

[34]  Martin Otto,et al.  Fault attacks and countermeasures , 2005 .

[35]  Jean-Guillaume Dumas,et al.  Fault Attacks on RSA Public Keys: Left-To-Right Implementations Are Also Vulnerable , 2009, CT-RSA.

[36]  I. K. Proudler Idempotent AN codes , 1989 .

[37]  François-Xavier Standaert,et al.  Fresh Re-keying: Security against Side-Channel and Fault Attacks for Low-Cost Devices , 2010, AFRICACRYPT.

[38]  Jean-Jacques Quisquater,et al.  Fault Attacks on Public Key Elements: Application to DLP-Based Schemes , 2008, EuroPKI.

[39]  Matthieu Rivain Differential Fault Analysis of DES , 2012, Fault Analysis in Cryptography.

[40]  Sergei Skorobogatov Low temperature data remanence in static RAM , 2002 .

[41]  Ramesh Karri,et al.  Fault-based side-channel cryptanalysis tolerant Rijndael symmetric block cipher architecture , 2001, Proceedings 2001 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems.

[42]  Arnaud Tisserand,et al.  Error Detection for Borrow-Save Adders Dedicated to ECC Unit , 2008, 2008 5th Workshop on Fault Diagnosis and Tolerance in Cryptography.

[43]  Robert H. Deng,et al.  RSA-type Signatures in the Presence of Transient Faults , 1997, IMACC.

[44]  Todd M. Austin,et al.  Fault-based attack of RSA authentication , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[45]  Ramesh Karri,et al.  Concurrent error detection schemes for fault-based side-channel cryptanalysis of symmetric block ciphers , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[46]  Wieland Fischer,et al.  Fault Attacks on RSA with CRT: Concrete Results and Practical Countermeasures , 2002, CHES.

[47]  Nigel P. Smart,et al.  Lattice Attacks on Digital Signature Schemes , 2001, Des. Codes Cryptogr..

[48]  Daisuke Suzuki,et al.  Circuit Simulation for Fault Sensitivity Analysis and Its Application to Cryptographic LSI , 2012, 2012 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[49]  Patrick Schaumont,et al.  Design methods for Security and Trust , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[50]  Denis Réal,et al.  Fault Attack on Elliptic Curve Montgomery Ladder Implementation , 2008, 2008 5th Workshop on Fault Diagnosis and Tolerance in Cryptography.

[51]  Bernd Meyer,et al.  Differential Fault Attacks on Elliptic Curve Cryptosystems , 2000, CRYPTO.

[52]  Eli Biham,et al.  Differential Fault Analysis of Secret Key Cryptosystems , 1997, CRYPTO.

[53]  Hareesh Khattri,et al.  HSDL: A Security Development Lifecycle for hardware technologies , 2012, 2012 IEEE International Symposium on Hardware-Oriented Security and Trust.

[54]  Seungjoo Kim,et al.  RSA Speedup with Chinese Remainder Theorem Immune against Hardware Fault Cryptanalysis , 2003, IEEE Trans. Computers.

[55]  Tanja Lange,et al.  Handbook of Elliptic and Hyperelliptic Curve Cryptography , 2005 .

[56]  Christophe Giraud,et al.  An RSA Implementation Resistant to Fault Attacks and to Simple Power Analysis , 2006, IEEE Transactions on Computers.

[57]  Marc Joye,et al.  Elliptic Curve Cryptosystems in the Presence of Permanent and Transient Faults , 2005, Des. Codes Cryptogr..

[58]  Jörn-Marc Schmidt,et al.  A Practical Fault Attack on Square and Multiply , 2008, 2008 5th Workshop on Fault Diagnosis and Tolerance in Cryptography.

[59]  Jörn-Marc Schmidt,et al.  Coding Schemes for Arithmetic and Logic Operations - How Robust Are They? , 2009, WISA.

[60]  Richard J. Lipton,et al.  On the Importance of Checking Cryptographic Protocols for Faults (Extended Abstract) , 1997, EUROCRYPT.

[61]  Takeshi Sugawara,et al.  High-Performance Concurrent Error Detection Scheme for AES Hardware , 2008, CHES.

[62]  Ingrid Verbauwhede,et al.  A Hybrid Scheme for Concurrent Error Detection of Multiplication over Finite Fields , 2010, 2010 IEEE 25th International Symposium on Defect and Fault Tolerance in VLSI Systems.

[63]  Frederik Vercauteren,et al.  To Infinity and Beyond: Combined Attack on ECC Using Points of Low Order , 2011, CHES.

[64]  David Naccache,et al.  The Sorcerer's Apprentice Guide to Fault Attacks , 2006, Proceedings of the IEEE.

[65]  M. Anwar Hasan,et al.  Error Detection and Fault Tolerance in ECSM Using Input Randomization , 2009, IEEE Transactions on Dependable and Secure Computing.

[66]  Michael Hutter,et al.  Optical and EM Fault-Attacks on CRT-based RSA : Concrete Results , 2007 .

[67]  Elena Trichina,et al.  Multi Fault Laser Attacks on Protected CRT-RSA , 2010, 2010 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[68]  Takeshi Sugawara,et al.  An on-chip glitchy-clock generator for testing fault injection attacks , 2011, Journal of Cryptographic Engineering.

[69]  Guillaume Fumaroli,et al.  Blinded Fault Resistant Exponentiation , 2006, FDTC.

[70]  Patrick Schaumont,et al.  Domain-Specific Codesign for Embedded Security , 2003, Computer.

[71]  Iwan M. Duursma,et al.  Tate Pairing Implementation for Hyperelliptic Curves y2 = xp-x + d , 2003, ASIACRYPT.

[72]  Michael Gössel,et al.  On-Line Error Detection for Bit-Serial Multipliers in GF(2m) , 1998, J. Electron. Test..

[73]  Benoit Feix,et al.  Passive and Active Combined Attacks: Combining Fault Attacks and Side Channel Analysis , 2007, Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC 2007).

[74]  Christophe Clavier,et al.  Passive and Active Combined Attacks on AES Combining Fault Attacks and Side Channel Analysis , 2007 .

[75]  Marc Joye,et al.  Checking Before Output May Not Be Enough Against Fault-Based Cryptanalysis , 2000, IEEE Trans. Computers.

[76]  David A. Wagner,et al.  Fault attacks on dual-rail encoded systems , 2005, 21st Annual Computer Security Applications Conference (ACSAC'05).

[77]  Yang Li,et al.  Fault Sensitivity Analysis , 2010, CHES.

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

[79]  Mark G. Karpovsky,et al.  Non-linear Residue Codes for Robust Public-Key Arithmetic , 2006, FDTC.

[80]  Emmanuel Prouff,et al.  CRT RSA Algorithm Protected Against Fault Attacks , 2007, WISTP.

[81]  Ingrid Verbauwhede,et al.  A systematic M safe-error detection in hardware implementations of cryptographic algorithms , 2012, 2012 IEEE International Symposium on Hardware-Oriented Security and Trust.

[82]  Marc Joye,et al.  Secure Evaluation of Modular Functions , 1998 .

[83]  Thomas Roche,et al.  Combined Fault and Side-Channel Attack on Protected Implementations of AES , 2011, CARDIS.

[84]  Jörn-Marc Schmidt,et al.  A Generic Fault Countermeasure Providing Data and Program Flow Integrity , 2008, 2008 5th Workshop on Fault Diagnosis and Tolerance in Cryptography.

[85]  Jean-Pierre Seifert,et al.  Fault Based Cryptanalysis of the Advanced Encryption Standard (AES) , 2003, Financial Cryptography.

[86]  Ramesh Karri,et al.  Register Transfer Level Concurrent Error Detection in Elliptic Curve Crypto Implementations , 2007 .

[87]  Jörn-Marc Schmidt,et al.  Countermeasures for Symmetric Key Ciphers , 2012, Fault Analysis in Cryptography.

[88]  David A. Wagner,et al.  Cryptanalysis of a provably secure CRT-RSA algorithm , 2004, CCS '04.

[89]  Jean-Pierre Seifert,et al.  A new CRT-RSA algorithm secure against bellcore attacks , 2003, CCS '03.

[90]  Ross J. Anderson,et al.  Optical Fault Induction Attacks , 2002, CHES.

[91]  Paolo Maistri,et al.  Countermeasures against fault attacks: The good, the bad, and the ugly , 2011, 2011 IEEE 17th International On-Line Testing Symposium.

[92]  Israel Koren,et al.  Error Analysis and Detection Procedures for a Hardware Implementation of the Advanced Encryption Standard , 2003, IEEE Trans. Computers.

[93]  Jean-Pierre Seifert,et al.  On authenticated computing and RSA-based authentication , 2005, CCS '05.

[94]  Agustin Dominguez-Oviedo,et al.  On Fault-based Attacks and Countermeasures for Elliptic Curve Cryptosystems , 2008 .

[95]  Johannes Blömer,et al.  Fault Based Collision Attacks on AES , 2006, FDTC.

[96]  Rafael Tonicelli,et al.  A Fault Analytic Method against HB+ , 2010, IACR Cryptol. ePrint Arch..

[97]  Seungjoo Kim,et al.  A Countermeasure against One Physical Cryptanalysis May Benefit Another Attack , 2001, ICISC.

[98]  P. L. Montgomery Speeding the Pollard and elliptic curve methods of factorization , 1987 .

[99]  Ivars Peterson,et al.  Chinks in digital armor: Exploiting faults to break smart‐card cryptosystems , 1997 .