Embedded Device Boot Randomization Against Fault Injection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Embedded devices in critical applications are vulnerable to fault injection attacks due to deterministic execution times during boot processes, making them susceptible to unauthorized access and difficult to defend against repeated attacks.

Innovation Solution

The implementation of a randomization mechanism that introduces nondeterministic execution times in the boot process of embedded devices by using a randomizer component to generate timeout signals after random intervals, randomizing the order of boot code execution, and inserting random delays between boot functions, thereby making the execution behavior unpredictable.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If deterministic execution time is used during boot process, then system operation is efficient and predictable, but vulnerability to fault injection attacks increases

Engineering Contradiction:
Improvesecurity against fault injection attacksVSAvoidexecution time randomization mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by making the boot process execution time non-deterministic through randomization. A random delay generator introduces variable time delays at specific points during the boot process, causing the execution timeline to change dynamically with each reset rather than following a fixed deterministic pattern. This directly addresses the security vulnerability by preventing attackers from predicting when critical functions will execute.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the time parameter of the boot process from a fixed deterministic value to a randomized variable. By introducing random delay values that vary between boot operations, the execution time parameter becomes unpredictable. This parameter change effectively counters fault injection attacks that rely on precise timing to disrupt critical security functions.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If random delays are inserted between boot functions, then fault injection attack replication is prevented, but boot process duration increases

Engineering Contradiction:
Improveprevention of attack replicationVSAvoidboot process execution time
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The patent applies partial action by introducing random delays only at specific strategic points during the boot process rather than throughout the entire sequence. The random delay generator is activated at selected locations where timing predictability would be most harmful to security, allowing the system to maintain reasonable overall boot time while still achieving the goal of preventing attack replication.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If execution order of boot functions is randomized, then security function timing becomes unpredictable, but system initialization complexity increases

Engineering Contradiction:
Improvetiming unpredictability of security functionsVSAvoidboot function execution management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the boot process into distinct segments or phases, with randomization applied to specific segments rather than the entire process. The execution order randomization is implemented in controlled portions of the boot sequence, allowing critical security functions to maintain their relative ordering while other non-critical functions are randomized. This reduces the overall complexity compared to complete randomization.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11308217B2Randomized execution countermeasures against fault injection attacks during boot of an embedded device
Publication Date: 2022.04.19 TEXAS INSTRUMENTS INC
  • US11308217B2 patent drawing
  • US11308217B2 patent drawing
  • US11308217B2 patent drawing

AI summary

An embedded device is provided that is configured to randomize execution time of a boot process of the embedded device performed responsive to a reset signal, wherein reset release time is nondeterministic. The embedded device may include a randomizer component configured to generate a timeout signal after a random interval, wherein to randomize execution time, the embedded device is further configured to execute a first portion of a reset process, signal the randomizer component to generate the timeout signal after a first random interval, wait for the timeout signal, and execute a second portion of the reset process responsive to the timeout signal.