Partial Reduction for Generic Elliptic Curve Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current elliptic curve cryptography (ECC) implementations face challenges in efficiently supporting generic elliptic curves over a wide range of binary polynomial fields, particularly in server-side applications, due to high computational demands and the need for flexible key sizes and security levels, which existing technologies have not adequately addressed.

Innovation Solution

A method for performing arithmetic operations on binary polynomials over GF(2) that includes partial reduction techniques to efficiently process elliptic curves, allowing for generic curve support through polynomial multiplications and additions, and the use of hardware accelerators to enhance performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If optimized implementations for specific named curves are used, then computational performance is improved, but adaptability to different curves and security requirements deteriorates

Engineering Contradiction:
Improvecomputational performanceVSAvoidsupport for generic curves
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements a universal reduction mechanism that can handle both specific named curves and generic curves over a wide range of binary polynomial fields GF(2^m). The reduction unit is designed to work with variable field degrees and support multiple curve types, allowing a single implementation to serve multiple cryptographic purposes without requiring separate optimized code paths for each curve.

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

Solution Approach 2:

The patent employs parameterized field degree m and variable irreducible polynomials to create a flexible reduction system. By changing the parameters (field degree, irreducible polynomial) rather than rewriting the entire reduction logic, the system can efficiently adapt to different curve requirements while maintaining optimized performance characteristics.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If full reduction is performed for all arithmetic operations, then cryptographic correctness is ensured, but computational complexity increases

Engineering Contradiction:
Improvecryptographic correctnessVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements partial reduction that reduces polynomial results to a degree less than a chosen integer n (where m ≤ n) rather than performing complete reduction to the field degree m. This partial reduction maintains cryptographic correctness for generic curve operations while significantly reducing computational complexity compared to full reduction, especially when n > m.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The reduction process is segmented into multiple stages: first performing polynomial multiplication to get an intermediate result, then applying reduction to bring the degree below n. This segmentation allows the system to handle large field degrees efficiently by breaking down the reduction into manageable steps rather than performing a single complex reduction operation.

Inventive Principle:
Principle #1Segmentation

3Speed

If hardware accelerators are implemented for specific curves, then processing speed is improved, but flexibility to support varying key sizes and curves deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidsupport for varying key sizes
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent designs a dynamic hardware accelerator where the field degree m and reduction parameters can be configured at runtime rather than being fixed during manufacturing. This dynamic configuration capability allows the same hardware to be optimized for different key sizes and curve types while maintaining high processing speeds, eliminating the need for multiple specialized hardware implementations.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7930335B2Generic implementations of elliptic curve cryptography using partial reduction
Publication Date: 2011.04.19 ORACLE AMERICAN INC
  • US7930335B2 patent drawing
  • US7930335B2 patent drawing
  • US7930335B2 patent drawing

AI summary

A reduction operation is utilized in an arithmetic operation on two binary polynomials X(t) and Y(t) over GF(2), where an irreducible polynomial Mm(t)=tm+am−1tm−1+am−2tm−2+ . . . +a1t+a0, where the coefficients ai are equal to either 1 or 0, and m is a field degree. The reduction operation includes partially reducing a result of the arithmetic operation on the two binary polynomials to produce a congruent polynomial of degree less than a chosen integer n, with m≦n. The partial reduction includes using a polynomial M′=(Mm(t)−tm)*tn−m, or a polynomial M″=Mm(t)*tn−m as part of reducing the result to the degree less than n and greater than or equal to m. The integer n can be the data path width of an arithmetic unit performing the arithmetic operation, a multiple of a digit size of a multiplier performing the arithmetic operation, a word size of a storage location, such as a register, or a maximum operand size of a functional unit in which the arithmetic operation is performed.