Elliptic Curve Cryptography Side Channel Attack Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing elliptic curve cryptography methods are vulnerable to side channel attacks, such as simple power analysis (SPA) and differential power analysis (DPA), which can leak secret keys by measuring time or power consumption during encryption operations, and current countermeasures often increase hardware requirements and complexity.
Innovation Solution
An elliptic curve cryptography method that changes the secret key to an odd number, encodes it with a most significant bit (MSB) of 1 and other bits as 1 or -1, and performs scalar multiplication using a predetermined point on the elliptic curve, ensuring that all bits undergo either doubling or addition operations, thereby masking the secret key leakage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional elliptic curve cryptography is used, then encryption functionality is provided, but the system becomes vulnerable to side channel attacks that can leak secret keys
Solution Approach 1:
The patent transforms the secret key representation from conventional binary form to a signed-digit form where digits can be -1, 0, or 1. This parameter change in the key representation ensures that during scalar multiplication, both addition and doubling operations are performed uniformly regardless of the actual key bits, preventing side channel attacks from detecting key information through operation timing or power consumption patterns.
Solution Approach 2:
The patent performs preliminary encoding of the secret key into signed-digit form before the scalar multiplication operation. By pre-processing the key into a form that enables uniform operation execution, the system eliminates the vulnerability to SPA and DPA attacks that would otherwise occur during the multiplication process, as the encoded form ensures consistent computational patterns regardless of the actual key value.
2Reliability
If countermeasures against side channel attacks are implemented, then security is improved, but hardware requirements and system complexity increase
Solution Approach 1:
The patent changes the mathematical representation parameters of the secret key to signed-digit form, which enables the use of a simplified scalar multiplication algorithm that performs uniform addition and doubling operations. This parameter transformation provides side channel attack resistance without requiring additional hardware components, thereby avoiding increased device complexity while maintaining security.
Solution Approach 2:
The patent replaces complex hardware-based countermeasures with a mathematical algorithmic solution. Instead of using additional encryption layers or hardware security modules that would increase complexity, the system uses the encoded key representation combined with a modified scalar multiplication algorithm to achieve the same security goal more efficiently.
3Reliability
If uniform addition and doubling operations are performed for all key bits, then side channel leakage is prevented, but computational efficiency may be reduced
Solution Approach 1:
The patent uses signed-digit representation where digits are -1, 0, or 1, which allows the scalar multiplication to proceed with uniform addition and doubling operations. Although this masking of key leakage patterns may increase computational steps compared to conventional methods, the structured approach of the signed-digit system maintains reasonable efficiency while achieving security against side channel attacks.
Solution Approach 2:
The patent performs preliminary conversion of the secret key to signed-digit form before scalar multiplication. This pre-processing step, while adding some computational overhead, enables the subsequent multiplication to proceed with uniform operations that prevent side channel leakage, achieving a balance between security and efficiency by preparing the key in an optimal form beforehand.
Data Source
AI summary
An elliptic curve cryptography method which generates a public key for use in a communication encryption using an elliptic curve, including: changing a number of a secret key (d) of (k) bits to an odd number; encoding the secret key to yield an encoded secret key (d) in which a most significant bit (MSB) is (1) and a rest positional number is (1) or (−1); and computing the public key (Q=Dp) by multiplying the encoded secret key (d) by a predetermined point (P) on the elliptic curve by a scalar multiplication.


