Runtime Code Polymorphism as a Protection against Physical Attacks - Mines Saint-Étienne
Conference Poster Year : 2015

Runtime Code Polymorphism as a Protection against Physical Attacks

Abstract

We present a generic framework for runtime code polymorphism, applicable to a large class of computing platforms up to embedded systems with low computing resources (e.g. microcontrollers with few kilo-bytes of memory). Code polymorphism is de ned as the ability to change the observable behaviour of a software component without changing its functional properties. In our framework, code polymorphism is achieved thanks to runtime code generation, which o ers many levers for code transformations: we describe the use of random register allocation, random instruction selection, instruction shuing and insertion of noise instructions.We evaluate the e ectiveness of our framework against di erential power analysis and its overhead impact. As compared to a reference implementation of AES where the cipher key could be recovered by DPA in less than 50 traces in average, in our implementation the key cipher could not be extracted after 10000 traces. Our experimental evaluation shows a moderate impact in terms of performance overhead.
Fichier principal
Vignette du fichier
Courousse2015-CHES-poster.pdf (6.7 Mo) Télécharger le fichier
Origin Files produced by the author(s)
Loading...

Dates and versions

emse-01232662 , version 1 (23-11-2015)

Identifiers

  • HAL Id : emse-01232662 , version 1

Cite

Damien Couroussé, Bruno Robisson, Thierno Barry, P Jaillon, Olivier Potin. Runtime Code Polymorphism as a Protection against Physical Attacks. Workshop on Cryptographic Hardware and Embedded Systems, Sep 2015, Saint-Malo, France. . ⟨emse-01232662⟩
2318 View
198 Download

Share

More