Encryption Device Masking Register Power Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing encryption devices are vulnerable to power analysis attacks, such as Differential Power Analysis (DPA) and Correlation Power Analysis (CPA), which can reveal the encryption key by analyzing power consumption during encryption processing.
Innovation Solution
The encryption device employs a method where intermediate data is transformed and stored in a register, and then inverse-transformed when read, breaking the correlation between power consumption and intermediate data, thereby enhancing resistance against power analysis attacks. This involves using first and second transform units to process and decrypt data, ensuring that power consumption does not correlate with intermediate data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If intermediate data is directly stored in a register during encryption processing, then encryption processing speed is improved, but power consumption correlates with intermediate data making the device vulnerable to power analysis attacks
Solution Approach 1:
The patent introduces a mask value as an intermediary element that is XORed with intermediate data before storage in the register. This mask value acts as a mediator that breaks the direct correlation between power consumption and intermediate data, while allowing the encryption processing to continue efficiently without fundamental changes to the register storage mechanism.
Solution Approach 2:
The patent changes the parameter being stored in the register from raw intermediate data to masked intermediate data (intermediate data XORed with mask value). This parameter transformation ensures that power consumption no longer directly reflects the intermediate data values, thereby preventing power analysis attacks while maintaining processing speed.
2Reliability
If a mask method is applied to eliminate correlation between power consumption and intermediate data, then resistance against power analysis is improved, but device complexity increases due to additional transform units
Solution Approach 1:
The patent segments the encryption device into distinct functional units: a first transform unit for masking intermediate data before register storage, and a second transform unit for unmasking data when retrieved. This segmentation allows the masking functionality to be added as separate, modular components rather than integrating complexity into the core encryption logic.
Solution Approach 2:
The patent applies masking as a preliminary action before intermediate data is stored in the register. By pre-processing the data with XOR masking before storage, the system eliminates power analysis vulnerabilities upfront, rather than requiring complex post-processing or continuous monitoring mechanisms.
3Reliability
If transform units are added to mask and unmask data, then security against power analysis is enhanced, but processing time increases due to additional transformation steps
Solution Approach 1:
The patent uses simple XOR operations with mask values that can be rapidly generated and discarded. The mask values are temporary, single-use elements that require minimal processing power and time to generate and apply, making the security enhancement computationally inexpensive and time-efficient.
Solution Approach 2:
The patent replaces complex cryptographic transformations with simple bitwise XOR operations for masking and unmasking. This substitution of mechanical/computational complexity with basic logical operations significantly reduces processing time while maintaining effective protection against power analysis attacks.
Data Source
AI summary
According to an embodiment, an encryption device performs encryption processing using an encryption key and calculates encrypted data from plain data. The encryption device includes: a register; an input unit configured to receive plain data; a first partial encryption unit configured to calculate first intermediate data from the plain data; a second partial encryption unit configured to calculate (i+1)-th intermediate data based on i-th intermediate data and the encryption key; a first transform unit configured to: transform j-th intermediate data into j-th transformed data; and store the j-th transformed data in the register; and a second transform unit configured to transform the j-th transformed data into the j-th intermediate data; a third partial encryption unit configured to calculate encrypted data from the N-th intermediate data. The second partial encryption unit is configured to repeat processing to calculate (j+1)-th intermediate data while j is equal to from 1 to N−1.


