Integrated Circuit Program Execution Protection via Counter Interrupts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for protecting integrated circuits from fault injection attacks, which disturb calculations to extract confidential data, are inefficient as they require lengthy wait sequences that slow down program execution and can be vulnerable to further disturbances, compromising integrity checks.

Innovation Solution

A method that initializes a counter to randomly select a time or instruction point for interrupting the program flow to perform an integrity check, minimizing time loss and ensuring security without structural modifications, using a time or instruction counter to generate interrupts for integrity checks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a wait sequence is introduced between calculation execution and integrity check to prevent fault injection attacks, then security against fault injection is improved, but program execution speed deteriorates

Engineering Contradiction:
Improvesecurity against fault injectionVSAvoidprogram execution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by performing integrity checks at predetermined points during program execution before potential fault injection can occur. The counter mechanism pre-establishes check points that trigger integrity verification automatically, eliminating the need for lengthy wait sequences while maintaining security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through a counter that monitors program execution and triggers integrity checks when predetermined conditions are met. This feedback mechanism allows the system to dynamically adjust execution flow based on detected conditions, performing security checks without requiring fixed wait times that would slow down normal operation.

Inventive Principle:
Principle #23Feedback

2Reliability

If a wait sequence is used to space calculation from integrity check, then protection against disturbance is improved, but time loss increases

Engineering Contradiction:
Improveprotection against disturbanceVSAvoidtime loss
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs integrity checks at predetermined execution points before fault injection can disrupt the calculation. By pre-establishing check points through the counter mechanism, the system eliminates the need for time-consuming wait sequences while ensuring protection against disturbance is maintained.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces static wait sequences with a dynamic counter-based timing mechanism. The counter adapts to the actual program execution flow and triggers integrity checks at appropriate moments, reducing time loss while maintaining effective protection against disturbance.

Inventive Principle:
Principle #15Dynamics

3Productivity

If integrity check is performed immediately after calculation, then execution speed is maintained, but vulnerability to fault injection increases

Engineering Contradiction:
Improveexecution speedVSAvoidvulnerability to fault injection
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs integrity checks at predetermined points during program execution before potential fault injection can occur. This preliminary action ensures that calculations are verified at critical moments without requiring delays, maintaining both speed and security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The counter mechanism provides feedback about program execution state, triggering integrity checks at predetermined points. This feedback system enables the system to perform security verification at optimal moments in the execution flow, balancing speed and security.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8161293B2Protection of the execution of a program executed by an integrated circuit
Publication Date: 2012.04.17 STMICROELECTRONICS FRANCE
  • US8161293B2 patent drawing
  • US8161293B2 patent drawing

AI summary

A method and a circuit for protecting the execution of a program, including initializing at least one counter, carrying on with the normal program execution, interrupting this execution when the counter reaches a given value, and executing at least one integrity check of the calculation after this interrupt.