Mixed-coordinate point multiplication for ECC latency reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Elliptic curve cryptography (ECC) operations, particularly point multiplication, are computationally demanding and incur significant latency due to inversion operations in certain coordinate systems, which hinders the performance of cryptographic processes like digital signature verification and key generation.

Innovation Solution

The implementation of mixed-coordinate point multiplication, which uses mixed representations from multiple coordinate systems to accelerate point multiplication by converting only one operand to the Jacobian coordinate system, eliminating inversion operations and reducing the number of underlying calculations, thereby improving performance and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If point multiplication is performed using traditional coordinate systems (Affine or Jacobian), then the operation can be completed, but significant latency is incurred due to inversion operations and computational complexity

Engineering Contradiction:
ImprovelatencyVSAvoidcomputation efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent segments the point multiplication operation into distinct phases: converting the second operand to Jacobian coordinates once before the loop, performing point doubling and addition operations in the loop, and converting the result back to Affine coordinates after the loop. This segmentation allows inversion operations to be eliminated from the computationally intensive loop portion, significantly reducing latency while maintaining correctness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary conversion of the second operand from Affine to Jacobian coordinates before entering the main computation loop. This preliminary action eliminates the need for repeated inversion operations during the loop iterations, as the Jacobian coordinate system allows point addition and doubling without inversions. The conversion is done once upfront, and the benefits compound through each subsequent operation.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If point multiplication is performed in Jacobian coordinate system, then inversion operations are eliminated, but conversion overhead and storage requirements increase

Engineering Contradiction:
Improveinversion operation latencyVSAvoidcoordinate conversion logic
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies local quality by using different coordinate systems for different parts of the computation. Specifically, it converts only the second operand to Jacobian coordinates locally, performs operations in the mixed coordinate system where applicable, and converts the final result back to Affine coordinates. This localized application of coordinate transformation minimizes the complexity overhead while capturing the performance benefits where inversions would otherwise occur most frequently.

Inventive Principle:
Principle #3Local quality

3Loss of time

If both operands are converted to Jacobian coordinate system, then inversion operations are eliminated, but storage overhead and conversion complexity increase significantly

Engineering Contradiction:
Improveinversion operation latencyVSAvoidstorage overhead
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent applies partial action by converting only the second operand to Jacobian coordinates rather than both operands. This partial conversion is sufficient to eliminate inversion operations from the critical computation loop, as the first operand can remain in Affine coordinates and be converted to Jacobian only when needed for the addition operation. This approach achieves the performance benefit while minimizing the storage and conversion overhead associated with transforming both operands.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10635404B2Mixed-coordinate point multiplication
Publication Date: 2020.04.28 INTEL CORP
  • US10635404B2 patent drawing
  • US10635404B2 patent drawing
  • US10635404B2 patent drawing

AI summary

In one embodiment, an apparatus comprises a multiplier circuit to: identify a point multiply operation to be performed by the multiplier circuit, wherein the point multiply operation comprises point multiplication of a first plurality of operands; identify a point add operation associated with the point multiply operation, wherein the point add operation comprises point addition of a second plurality of operands, wherein the second plurality of operands comprises a first point and a second point, and wherein the first point and the second point are associated with a first coordinate system; convert the second point from the first coordinate system to a second coordinate system; perform the point add operation based on the first point associated with the first coordinate system and the second point associated with the second coordinate system; and perform the point multiply operation based on a result of the point add operation.