Ciphering Algorithm Protection via Signature Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing ciphering algorithms are vulnerable to fault injection attacks, as detection methods can be detected by hackers and often result in repetitive countermeasures that block the circuit, allowing potential exploitation of subsequent executions.

Innovation Solution

A method that calculates a current signature of invariant values stored in non-volatile memory and combines it with a reference signature using a selected function, such as XOR, to ensure that any disturbance during algorithm execution prevents exploitation of subsequent executions by modifying the substitution tables with a random value, thereby propagating errors transparently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If detection methods are implemented to detect jumps in algorithm execution, then execution reliability is improved, but the circuit becomes detectable by hackers through power consumption analysis

Engineering Contradiction:
Improveexecution reliabilityVSAvoiddetectability by hackers
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The patent introduces an intermediary verification mechanism using pre-calculated verification values stored in non-volatile memory. Instead of directly detecting execution jumps, the system computes verification values during execution and compares them against stored references, acting as an intermediary layer that prevents direct detection of execution state by external attackers while maintaining reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameter being verified from direct execution state (which leaks information) to cryptographic verification values (which do not leak information). By transforming the verification object into a form that does not reveal execution state through power consumption analysis, the system maintains reliability while eliminating detectability.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the circuit is blocked as a countermeasure, then security against fault injection is improved, but subsequent executions can be exploited by hackers

Engineering Contradiction:
Improvesecurity against fault injectionVSAvoidexploitation window for subsequent executions
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary verification before each execution by comparing computed verification values against pre-stored reference values. This preliminary action detects faults before they can propagate to subsequent executions, preventing the exploitation window from opening while maintaining continuous operational capability unlike blocking mechanisms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by continuously verifying execution integrity through comparison of computed verification values with stored references. This feedback mechanism detects and responds to faults in real-time without requiring circuit blocking, thereby preventing exploitation of subsequent executions while maintaining system availability.

Inventive Principle:
Principle #23Feedback

3Reliability

If substitution tables are modified with random values, then protection against statistical analysis is improved, but the algorithm complexity increases

Engineering Contradiction:
Improveprotection against statistical analysisVSAvoidalgorithm complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces dynamic substitution tables that are modified with random values for each execution. This dynamic transformation provides protection against statistical analysis by preventing attackers from using static patterns, while the modification process is systematically managed through verification value computation, keeping the added complexity controllable and justified by the security benefit.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8582757B2Protection of a ciphering algorithm
Publication Date: 2013.11.12 STMICROELECTRONICS (ROUSSET) SAS
  • US8582757B2 patent drawing
  • US8582757B2 patent drawing
  • US8582757B2 patent drawing

AI summary

A method for protecting the execution of a ciphering or deciphering algorithm against the introduction of a disturbance in a step implementing one or several first values obtained from second values supposed to be invariant and stored in a non-volatile memory in which, during an execution of the algorithm: a current signature of the first values is calculated; this current signature is combined with a reference signature previously stored in a non-volatile memory; and the result of this combination is taken into account at least in the step of the algorithm implementing said first values.