Fault Attack Detection Circuit Using Blinded Data Signatures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing circuits face difficulties in effectively combining data signature generation for fault attack detection with blinding techniques to counter side channel attacks, making it hard to protect sensitive information from both types of attacks simultaneously.
Innovation Solution
A method and circuitry that generate signatures by performing commutative non-Boolean arithmetic operations on both original and permuted data values, with the blinding block applying permutations like XOR or shifting to create blinded data values, and comparing these signatures to detect fault attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If signatures are generated using data values to detect fault attacks, then fault attack detection capability is improved, but the circuit becomes vulnerable to side channel attacks
Solution Approach 1:
A blinding value is introduced as an intermediary element between the data values and the signature generation process. The blinding value is combined with data values through XOR operation before signature generation, creating a blinded signature. This intermediary blinding value prevents direct observation of data values by side channel attackers while maintaining the integrity of fault detection, as the same blinding value is used consistently across all data values.
Solution Approach 2:
The patent changes the parameter of data values by applying a blinding transformation. Instead of using raw data values directly in signature generation, the patent transforms them into blinded data values through XOR operation with a blinding value. This parameter change makes the data values indistinguishable to side channel attackers while preserving the mathematical properties needed for fault detection.
2Object-affected harmful factors
If blinding is applied to protect against side channel attacks, then resistance to side channel attacks is improved, but fault attack detection capability deteriorates
Solution Approach 1:
The blinding value serves as a mediator that enables both functions to coexist. By applying the same blinding value to all data values before signature generation, the system achieves side channel attack resistance while maintaining fault detection capability. The blinding value acts as a consistent transformation layer that does not interfere with the mathematical relationships needed for fault detection.
Solution Approach 2:
The blinding mechanism is designed to serve multiple functions simultaneously: it protects against side channel attacks by obscuring data values, while also maintaining compatibility with fault detection mechanisms. The universal application of the blinding value across all data values ensures that both security functions can operate together without conflict.
3Measurement precision
If complex signature generation algorithms are used to improve detection accuracy, then fault attack detection accuracy is improved, but circuit complexity increases
Solution Approach 1:
The patent employs simple, efficient arithmetic operations (addition, multiplication, XOR) that are computationally inexpensive and can be implemented with simple circuit logic. These simple operations replace complex signature generation algorithms, achieving adequate detection accuracy without requiring complex computational resources or sophisticated circuit designs.
Solution Approach 2:
The patent changes the approach from complex algorithms to simple arithmetic operations. By using basic operations like addition, multiplication, and XOR on the blinded data values, the system achieves effective fault detection with minimal circuit complexity. The parameter change from algorithmic complexity to arithmetic simplicity is key to resolving this contradiction.
Data Source
AI summary
A method of detecting a fault attack including generating a first signature of a first group of data values by performing a single commutative non-Boolean arithmetic operation between all the data values of the first group; generating a second set of data values by performing a permutation of the first set of data values; generating a second signature of the second group of data values by performing said single commutative non-Boolean arithmetic operation between all the data values of the second group; and comparing the first and second signatures to detect a fault attack.


