Elliptic Curve Scalar Multiplication Side-Channel Countermeasures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cryptographic operations, such as ECDSA Sign and ECDH, are vulnerable to side-channel attacks due to algorithmic weaknesses, data-dependent vulnerabilities, and implementation-specific leakages, which can reveal the secret scalar values through power and electromagnetic side channels.

Innovation Solution

Implementing balanced execution, point randomization, and scalar splitting techniques in the elliptic curve scalar multiplication process to mitigate these vulnerabilities, including a revised Montgomery ladder operation, data randomization, and splitting the scalar value to introduce randomness and reduce side-channel leakage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional ECDSA Sign and ECDH operations are implemented, then cryptographic security is provided, but vulnerability to side-channel attacks increases

Engineering Contradiction:
Improvecryptographic securityVSAvoidside-channel attack vulnerability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The scalar value is split into multiple components (e.g., high-order and low-order parts) and processed separately through different Montgomery ladder iterations. This segmentation prevents side-channel attacks by ensuring that no single execution reveals the complete scalar value, as each segment is processed independently and combined only at the end.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Dummy iterations are performed before the actual scalar multiplication to initialize the Montgomery ladder in a way that masks the true computation path. These preliminary operations ensure that the first real iteration does not leak information about the scalar's most significant bits, and all iterations follow the same balanced pattern regardless of actual scalar values.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 3:

The implementation uses balanced Montgomery ladder arithmetic where both addition and doubling operations are performed in every iteration regardless of the scalar bit value. This parameter change in the computation pattern ensures constant-time execution and equal power consumption characteristics for all scalar values, eliminating side-channel leakage.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If scalar multiplication operations are performed, then key exchange and signature operations are enabled, but power consumption patterns reveal secret scalar values

Engineering Contradiction:
Improvecryptographic operation capabilityVSAvoidsecret scalar leakage through power consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The Montgomery ladder implementation performs both point addition and point doubling operations in every iteration, regardless of the scalar bit value. This uniform operation pattern ensures that power consumption remains constant across all iterations and does not correlate with the secret scalar bits, preventing power analysis attacks while maintaining full cryptographic functionality.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The Montgomery ladder uses intermediate points (e.g., R0 and R1) that are computed in a balanced manner and combined only at the end. These intermediary computations act as masks, ensuring that the final result depends on the complete scalar value without revealing intermediate secret information through power consumption patterns.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If electromagnetic emissions are monitored, then side-channel attacks can be performed, but additional countermeasures increase implementation complexity

Engineering Contradiction:
Improveprotection against electromagnetic attacksVSAvoidcountermeasure implementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The same balanced Montgomery ladder algorithm that protects against power analysis also protects against electromagnetic attacks by ensuring constant-time execution and uniform operation patterns. This single algorithmic change provides comprehensive protection against multiple side-channel attack vectors without requiring separate countermeasures for each attack type, thereby limiting the increase in implementation complexity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The balanced Montgomery ladder implementation serves multiple security functions simultaneously: it provides constant-time execution to prevent timing attacks, uniform power consumption to prevent power analysis, and consistent operation patterns to prevent electromagnetic attacks. This multi-functional approach achieves broad side-channel protection through a single unified algorithm rather than separate countermeasures for each threat.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3930252B1Countermeasures for side-channel attacks on protected sign and key exchange operations
Publication Date: 2025.06.25 INTEL CORP
  • EP3930252B1 patent drawingFigure 1A~1B
  • EP3930252B1 patent drawingFigure 2A
  • EP3930252B1 patent drawingFigure 2B

AI summary

Embodiments are directed to countermeasures for side-channel attacks on protected sign and key exchange operations. An embodiment of storage mediums includes instructions for commencing a process including an elliptic curve scalar multiplication (ESM) operation including application of a secret scalar value; splitting the secret scalar value into two random scalar values; counting a number of leading '0' bits in the scalar value and skipping the number of leading '0' bits in processing; performing an ESM iteration for each bit of the secret scalar value beginning with a most significant ' 1' bit of the scalar value including a Point Addition operation and a Point Double operation for each bit on randomized points; performing ESM operation dummy iterations equal to the number of leading '0' bits; and returning an output result for the ESM operation.