Secure Operand Comparison via Segmented Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cryptographic comparison methods in secure devices like smart cards cannot securely determine if two operands are equal or if one is greater or less than the other, and are vulnerable to attacks by fault injection.
Innovation Solution
A method that compares two operands by using a sequence of comparison operators to reduce the bit size of the operands, checking the values against a subset of possible combinations of reference values to determine equality, inferiority, or superiority, and storing the results in memory addresses for efficient validation, thereby enhancing resilience to fault injection attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional comparison methods are used to compare two operands, then the comparison can be performed, but the system becomes vulnerable to fault injection attacks and cannot securely determine equality or inequality relationships
Solution Approach 1:
The comparison operation is divided into multiple independent comparison steps, each comparing a subset of bits or words of the operands. This segmentation allows the system to perform comparisons in a way that is resistant to fault injection, as faults in one segment do not compromise the entire comparison result. The method uses a sequence of comparison operations that process operands in divided portions rather than as a single monolithic operation.
Solution Approach 2:
The method performs preliminary comparison operations to establish intermediate results before finalizing the comparison outcome. By performing comparisons in staged manner with intermediate validation steps, the system can detect and reject faulty results early in the process, preventing fault injection attacks from compromising the final comparison result.
2Measurement precision
If comparison operations are performed on high-bit operands, then precise comparison results can be obtained, but the complexity and time required for the comparison increases
Solution Approach 1:
High-bit operands are divided into smaller segments or words that can be compared in parallel or in sequence through multiple comparison operations. This segmentation allows the system to maintain precision for high-bit operands while reducing the time required by processing smaller units rather than the entire operand at once. The comparison operation breaks down the large-bit comparison into manageable chunks.
Solution Approach 2:
The comparison method dynamically adjusts the number and size of comparison operations based on the operand bit length and the specific comparison requirements. For high-bit operands, the system performs multiple comparison operations with varying granularities, allowing efficient processing by adapting the comparison strategy to the data size rather than using a fixed approach.
3Reliability
If all possible combinations of reference values are used for comparison validation, then complete coverage of comparison results is achieved, but the number of valid comparison combinations becomes too large to manage efficiently
Solution Approach 1:
The method extracts and stores only the essential comparison results in a dedicated memory area, filtering out redundant or invalid combinations. By taking out only the necessary reference combinations that represent valid comparison outcomes, the system maintains complete validation coverage while reducing the complexity of managing all possible combinations. Unnecessary reference combinations are discarded, leaving only the essential ones for validation.
Data Source
AI summary
A first operation of comparison of the first initial operand with the second initial operand uses at least one comparison operator in such a way as to obtain a first final result word. A second operation of comparison of the second initial operand with the first initial operand uses the at least one comparison operator in such a way as to obtain a second final result word. Another operation checks the values of the bits of the two final result words in relation to a part at least of r combinations of reference values taken from possible combinations of values of these two final result words. These reference combinations represent a valid result of comparison of the two operands including an equality, a relationship of inferiority and a relationship of superiority between the two operands.


