Montgomery Domain Conversion for Elliptic Curve Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Elliptic curve cryptography operations, such as point addition and doubling, are time-consuming due to the computational expense of modular division and reduction, even when using Montgomery multiplication, which requires extensive preprocessing and conversion to Montgomery form.

Innovation Solution

Converting input coordinates (x,y) to quotient-based representations like Jacobian coordinates (X′,Y′,Z′) using Montgomery multiplications by selected conversion factors, allowing for efficient elliptic curve operations within the Montgomery domain, with further Montgomery multiplications enabling operations and result conversion back to canonical form.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If modular division and reduction are used for point addition and doubling operations, then the operations can be performed correctly over the finite field, but the computational time and complexity increase significantly

Engineering Contradiction:
Improvecorrectness of elliptic curve operationsVSAvoidcomputational time for point operations
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-converting the input coordinates (x, y) to Montgomery form (x', y') before performing the elliptic curve operations. This preprocessing step transforms the coordinates into a domain where operations can be performed more efficiently using Montgomery multiplication, avoiding the need for expensive modular division and reduction during the actual point operations. The conversion is done once beforehand, enabling subsequent operations to proceed faster.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If Jacobian coordinates are used to represent elliptic curve points, then point addition and doubling can be performed as modular additions and multiplications, but the coordinate conversion and representation complexity increase

Engineering Contradiction:
Improveefficiency of point operationsVSAvoidcomplexity of coordinate representation and conversion
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces Montgomery form as an intermediary coordinate system between the standard Weierstrass form and the final result. Instead of directly working with Jacobian coordinates or other quotient-based representations that require complex conversions, the patent uses Montgomery form as a mediator that simplifies the arithmetic operations. This intermediary representation enables efficient computation while managing complexity through structured conversion processes.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If Montgomery multiplication is used for elliptic curve operations, then the number of modular reduction operations is reduced, but preprocessing to convert to Montgomery form is required

Engineering Contradiction:
Improvespeed of multiplication operationsVSAvoidcomplexity of preprocessing and conversion steps
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing the coordinate conversion to Montgomery form as a preprocessing step before the main elliptic curve operations. This upfront conversion enables the subsequent point addition and doubling operations to proceed using efficient Montgomery multiplication without requiring repeated conversions. The one-time preprocessing cost is offset by the significant speedup in the actual cryptographic operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10057064B2Computational method, computational device and computer software product for montgomery domain
Publication Date: 2018.08.21 WINBOND ELECTRONICS CORP
  • US10057064B2 patent drawing
  • US10057064B2 patent drawing
  • US10057064B2 patent drawing

AI summary

In Elliptic Curve Cryptography (ECC), one performs a great number of modular multiplications. These are usually done by Montgomery Multiplication algorithm, which needs the operands to be preprocessed (namely, converted to the Montgomery Domain), which is normally done by an equivalent of a long division. We provide a method to perform this conversion by a single Montgomery multiplication on the raw data. The method is formulated for elliptic curve points represented in Jacobian coordinates but can be extended to other representations.