Software countermeasures against the multiple instructions skip fault model
Abstract
In this work, we proposed two software countermeasures (CMs) for the detection of multiple instructions skips caused by Fault Injection (FI). The first CM is based on code duplication and uses a hardware dedicated counter. The implementation of this method consists in the duplication of instructions previously turned into an idempotent form and the insertion of dedicated instructions incrementing a hardware counter in between the groups of duplicated instructions. The second CM is based on the insertion of Sensitive instruction (SI)s into a block of instructions as sensors of instruction skips. The SI is chosen based on the observed Fault Model (FM) at bit level. We experimentally validated the effectiveness of the two CMs in a 32-bit Microcontroller Unit (MCU) using Laser Fault Injection (LFI) and Electromagnetic Fault Injection (EMFI). First, the skip of multiple instructions was obtained with a fault rate of 100%. The FM at bit level was identified to be bit-reset rather than bit-set. Second, we carried out LFI and EMFI experiments to the protected codes to validate the effectiveness of the CMs. In both cases, the results showed that the proposed methods are effective to detect multiple instructions skip faults.
- Publication:
-
Microelectronics Reliability
- Pub Date:
- April 2024
- DOI:
- 10.1016/j.microrel.2024.115370
- Bibcode:
- 2024MiRe..15515370K
- Keywords:
-
- Fault injection;
- Laser fault injection;
- Electromagnetic fault injection;
- Microcontroller;
- Instruction skip;
- Software countermeasure