Hybrid Masking Encryption Engine for Side Channel Attack Resistance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Portable, battery-powered devices used in artificial reality systems are vulnerable to side channel attacks due to their low-power design and portable form factor, which makes them susceptible to non-invasive hacking using off-the-shelf equipment that exploits power consumption data and other trace information.
Innovation Solution
Implementing a hybrid masking scheme in the encryption and decryption pipelines of these devices, which applies Boolean and multiplicative masks at specific computational stages to obfuscate power trace information, thereby disrupting the correlation between the data being processed and the power consumption metrics, without incurring the resource costs of converting between different masking methodologies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If hybrid masking is applied throughout the entire encryption/decryption pipeline, then side channel attack resistance is improved, but device complexity and resource consumption increase
Solution Approach 1:
The encryption/decryption pipeline is divided into distinct stages (e.g., data processing stages, key expansion stages), and different masking methodologies (Boolean masking for some stages, multiplicative masking for other stages) are applied to each segment based on its specific security requirements and computational characteristics. This segmentation allows optimized masking without uniform complexity throughout the entire system.
Solution Approach 2:
Different masking techniques are applied to different parts of the pipeline according to local requirements. Boolean masking is applied where additive operations dominate, while multiplicative masking is applied where multiplicative operations are critical. This local optimization ensures that each segment receives the appropriate masking level without unnecessary resource expenditure in other segments.
2Adaptability or versatility
If mask conversion between different masking methodologies is implemented, then adaptability is improved, but resource consumption and operational overhead increase
Solution Approach 1:
The system dynamically selects and switches between different masking methodologies based on the current operational stage and security requirements. The mask management unit can transition between Boolean and multiplicative masking as needed, allowing the system to adapt to varying security demands while minimizing unnecessary conversions that would consume additional energy and resources.
3Reliability
If multiple masking methodologies are used simultaneously, then side channel attack resistance is improved, but device complexity and implementation overhead increase
Solution Approach 1:
A unified mask management unit is implemented that handles both Boolean and multiplicative masking operations, as well as the transitions between them. This universal component consolidates what would otherwise be separate complex subsystems into a single coordinated unit, reducing overall system complexity while maintaining the benefits of multiple masking methodologies.
Data Source
AI summary
A system on a chip (SoC) includes a security processor configured to form a Boolean mask, to form a shifted-row Boolean mask from the Boolean mask, and to add the shifted-row Boolean mask to cipher text to form Boolean-masked cipher text. The SoC includes a decryption engine configured to apply a shift rows operation to the Boolean-masked cipher text to form byte-aligned Boolean-masked cipher text, to apply a product of the Boolean mask and a multiplicative mask to the byte-aligned Boolean-masked cipher text to form multiplicatively masked cipher text, to perform an inverse byte substitution operation on the multiplicatively masked cipher text by applying a product of the Boolean mask and an inverse of the multiplicative mask to the multiplicatively masked cipher text to form Boolean-masked intermediate data, and to apply mix columns logic to the Boolean-masked intermediate data to form byte-shifted Boolean-masked output data.


