Boolean-Masked Arithmetic Addition for Non-Invasive Attack Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional masking approaches for cryptographic operations are agnostic to the operations being carried out, leading to large overheads and inadequate protection against non-invasive attacks.
Innovation Solution
A device and method for cryptographic operations that apply a mask to each operand component input using a masking logical operation, particularly XOR, and utilize a set of elementary adders with mask switching units to enhance security against non-invasive attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional masking approaches are used for cryptographic operations, then protection against attacks is provided, but large overheads and inadequate protection against non-invasive attacks occur
Solution Approach 1:
The patent changes the parameter of masking from conventional Boolean masking to arithmetic masking, where intermediate values are masked by adding a random value rather than XORing. This parameter change provides better protection against non-invasive attacks while maintaining computational efficiency for arithmetic operations.
Solution Approach 2:
The patent introduces dynamic mask switching between Boolean and arithmetic masking modes based on the operation being performed. The system dynamically adapts the masking approach to match the operational context, reducing overhead while maintaining security.
2Adaptability or versatility
If Boolean masking is used for symmetrical encryption, then compatibility with XOR operations and LUTs is achieved, but protection against non-invasive attacks is inadequate
Solution Approach 1:
The patent creates a universal masking framework that can operate in both Boolean and arithmetic modes. The system can switch between masking approaches depending on whether the operation is Boolean (XOR, LUT) or arithmetic (addition, multiplication), providing both compatibility and enhanced security.
Solution Approach 2:
The patent changes the masking parameter from Boolean XOR operation to arithmetic addition operation, where the masked value is computed as (intermediate value + random mask) mod 2^n. This parameter change provides better resistance to non-invasive attacks while maintaining compatibility with arithmetic cryptographic operations.
3Adaptability or versatility
If masking conversion from Boolean to arithmetic is performed, then compatibility with arithmetic operations is improved, but time cost increases
Solution Approach 1:
The patent applies masking at the beginning of each arithmetic operation sequence, so that subsequent arithmetic operations can be performed directly on the masked values without requiring conversion. The mask is switched to arithmetic mode in advance, eliminating the need for time-consuming conversions during the computation.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
There is provided a device of executing a cryptographic operation on bit vectors, the execution of the cryptographic operation comprising the execution of at least one arithmetic addition operation between a first operand and a second operand. Each operand comprises a set of components, each component corresponding to a given bit position of the operand. The device comprises a set of elementary adders (10), each elementary adder being associated with a given bit position of the operands and being configured to perform a bitwise addition between a component of the first operand at the given bit position and the corresponding component of the second operand at the given bit position using the carry generated by the computation performed by the elementary adder corresponding to the previous bit position. Each elementary adder has a sum output corresponding to the bitwise addition and a carry ouput, the result of the arithmetic addition operation being derived from the sum ouputs provided by each elementary adder. The device is configured to apply a mask to each operand component input of at least some of the elementary adders using a masking logical operation, the mask being a random number.