usenix conference policies
Automatic Code Recognition for Smartcards Using a Kohonen Neural Network
A processor can leak information by different ways. Although, the possibility of attacking smart cards by analyzing their power consumption [Kocher] or their electromagnetic radiations is now commonly accepted [Gandolfi]. A lot of publications recognize the possibility to recover the signature of an instruction in a side channel trace. It seems that no article demonstrate how to automate reverse engineering of software code, using this assumption. Our work describes a method to recognize the instructions carried out by the processor. In a general way, a classifier permits to identify the right or wrong value during the comparison of a pin code or large parts of a software code. On a few microcontrollers, using a classical correlation between the power trace and a dictionary, we show how to identify the CPU's actions. Sometimes, silicon manufacturers hide specific opcodes deliberately. The EM investigation and the template attack demonstrated by IBM, at Cryptographic Hardware and Embedded Systems 2002, rely on multi-variate signal processing for electromagnetic and power traces. The method presented in this article is based on a self organizing map. On a CISC processor, it is then obvious to find a hidden instruction looking for a hole or a bad construction of the map. The case of pipelined processors is a little bit different: as they decode, execute, fetch, several parts of different opcodes at the same time, it is more difficult to recognize a specific signature.
author = {Jean-Jacques Quisquater and David Samyde},
title = {Automatic Code Recognition for Smartcards Using a Kohonen Neural Network},
booktitle = {5th Smart Card Research and Advanced Application Conference (CARDIS 02)},
year = {2002},
address = {San Jose, CA},
url = {https://www.usenix.org/conference/cardis-02/automatic-code-recognition-smartcards-using-kohonen-neural-network},
publisher = {USENIX Association},
month = nov
}
connect with us