TY - GEN
T1 - Verifying Software Integrity in Embedded Systems: A Side Channel Approach
AU - Msgna, Mehari
AU - Markantonakis, Konstantinos
AU - Naccache, David
AU - Mayes, Keith
PY - 2014/4/13
Y1 - 2014/4/13
N2 - In the last few decades embedded processors have invaded the modern lifestyle. Embedded systems have hardware and software components. Assuring the integrity of the software is very important as it is the component that controls what the hardware does through its instructions. Although there exist a number of software integrity verification techniques, they often fail to work in embedded environment. One main reason is, the memory read protection, frequently implemented in today’s microprocessors, that prevent the verifier from reading out the necessary software parts. In this paper we show that side channel leakage (power consumption) can be used to verify the integrity of the software component without prior knowledge of the software code. Our approach uses instruction-level power consumption templates to extract information about executed instructions by the processor. Then this information together with pre-computed signatures are used to verify the integrity of the executed application using RSA signature screening algorithm. The instruction-level templates are constructed ahead of time using few authentic reference processors.
AB - In the last few decades embedded processors have invaded the modern lifestyle. Embedded systems have hardware and software components. Assuring the integrity of the software is very important as it is the component that controls what the hardware does through its instructions. Although there exist a number of software integrity verification techniques, they often fail to work in embedded environment. One main reason is, the memory read protection, frequently implemented in today’s microprocessors, that prevent the verifier from reading out the necessary software parts. In this paper we show that side channel leakage (power consumption) can be used to verify the integrity of the software component without prior knowledge of the software code. Our approach uses instruction-level power consumption templates to extract information about executed instructions by the processor. Then this information together with pre-computed signatures are used to verify the integrity of the executed application using RSA signature screening algorithm. The instruction-level templates are constructed ahead of time using few authentic reference processors.
KW - Side channel leakage
KW - Power analysis
KW - Application integrity
KW - Templates
KW - Principal components analysis
KW - RSA signature screening
U2 - 10.1007/978-3-319-10175-0_18
DO - 10.1007/978-3-319-10175-0_18
M3 - Conference contribution
T3 - Lecture Notes in Computer Science
SP - 261
EP - 280
BT - Constructive Side Channel Analysis and Secure Design
CY - Paris, France
ER -