Design space extension for secure implementation of block ciphers

Security has been identified as a critical dimension in the design of embedded systems for almost a decade. A well-recognised critical threat against the security of embedded systems is represented by ‘side-channel attacks (SCAs)’, which mandate the application of specially tailored countermeasures. These countermeasures are significantly demanding in terms of computation effort, and have traditionally been applied by hand. The recent introduction of a methodology to gauge the security margins provided by software cipher implementations, allows the integration of the automated application of countermeasures into platform-based system-level design methodologies. The authors introduce in the design space of block cipher implementations a new metric concerning the resistance against SCAs, provide a systematic method for the selection of the most appropriate cipher given the security and performance trade-offs, and point out the performance requirements for the random number generator. Moreover, they discuss the implications of the design space extension on system runtime adaptivity. The experimental evaluation demonstrates that a single cipher does not cover optimally a range of convenient operating points and that ciphers like a Serpent, which are considered slow in non-protected implementations, can outperform primitives like the Advanced Encryption Standard when implementations with equal security guarantees against SCAs are considered.

[1]  Mitsuru Matsui,et al.  Speci cation of Camellia | a 128-bit Block Cipher , 2001 .

[2]  Maurizio Palesi,et al.  Multi-objective design space exploration using genetic algorithms , 2002, Proceedings of the Tenth International Symposium on Hardware/Software Codesign. CODES 2002 (IEEE Cat. No.02TH8627).

[3]  Mahmut Kandemir,et al.  Performance aware secure code partitioning , 2007 .

[4]  Vincent Rijmen,et al.  The Design of Rijndael: AES - The Advanced Encryption Standard , 2002 .

[5]  Chantal Ykman-Couvreur,et al.  Linking run-time resource management of embedded multi-core platforms with automated design-time exploration , 2011, IET Comput. Digit. Tech..

[6]  Giovanni Agosta,et al.  A multiple equivalent execution trace approach to secure cryptographic embedded software , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[7]  Christian Boit,et al.  Security Risks Posed by Modern IC Debug and Diagnosis Tools , 2013, 2013 Workshop on Fault Diagnosis and Tolerance in Cryptography.

[8]  Chantal Ykman-Couvreur,et al.  An industrial design space exploration framework for supporting run-time resource management on multi-core systems , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[9]  Theo Ungerer,et al.  A Comparison of Multi-objective Algorithms for the Automatic Design Space Exploration of a Superscalar System , 2013 .

[10]  Yuval Ishai,et al.  Private Circuits: Securing Hardware against Probing Attacks , 2003, CRYPTO.

[11]  Patrick Schaumont,et al.  Programmable and Parallel ECC Coprocessor Architecture: Tradeoffs between Area, Speed and Security , 2009, CHES.

[12]  Ingrid Verbauwhede,et al.  A VLSI design flow for secure side-channel attack resistant ICs , 2005, Design, Automation and Test in Europe.

[13]  Alessandro Barenghi,et al.  On the security of partially masked software implementations , 2014, 2014 11th International Conference on Security and Cryptography (SECRYPT).

[14]  Chantal Ykman-Couvreur,et al.  MULTICUBE: Multi-objective Design Space Exploration of Multi-core Architectures , 2010, 2010 IEEE Computer Society Annual Symposium on VLSI.

[15]  Jean-Sébastien Coron,et al.  Analysis and Improvement of the Random Delay Countermeasure of CHES 2009 , 2010, CHES.

[16]  Giovanni Agosta,et al.  A code morphing methodology to automate power analysis countermeasures , 2012, DAC Design Automation Conference 2012.

[17]  Christof Paar,et al.  Higher Order Masking of the AES , 2006, CT-RSA.

[18]  Michael Tunstall,et al.  Compiler Assisted Masking , 2012, CHES.

[19]  Eli Biham,et al.  The Case for Serpent , 2000, AES Candidate Conference.

[20]  Giovanni Agosta,et al.  Compiler-based side channel vulnerability analysis and optimized countermeasures application , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[21]  Stefan Tillich,et al.  Attacking State-of-the-Art Software Countermeasures-A Case Study for AES , 2008, CHES.

[22]  Srivaths Ravi,et al.  Security in embedded systems: Design challenges , 2004, TECS.

[23]  K. Keutzer,et al.  System-level design: orthogonalization of concerns andplatform-based design , 2000, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[24]  Srivaths Ravi,et al.  Security as a new dimension in embedded system design , 2004, Proceedings. 41st Design Automation Conference, 2004..

[25]  Paolo Ienne,et al.  A first step towards automatic application of power analysis countermeasures , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

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