Co-processor Polynomial Multiplication via NTT and Kronecker Substitution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current special-purpose co-processors for RSA or Elliptic-curve cryptography are inefficient in performing polynomial multiplications required for lattice-based post-quantum cryptography, as they are designed for large integer arithmetic rather than smaller coefficient polynomial operations, making them obsolete for lattice-based cryptography.

Innovation Solution

A method involving the use of number theoretic transforms (NTTs) and Kronecker substitution to map polynomials into smaller rings based on primitive roots of unity, allowing for efficient polynomial multiplication by splitting the operation into smaller multiplications that can be handled by existing co-processors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If existing co-processors designed for RSA or ECC algorithms are used, then hardware cost is reduced and device complexity is lowered, but polynomial multiplication efficiency deteriorates because they are designed for large integer arithmetic rather than smaller coefficient polynomial operations

Engineering Contradiction:
Improveco-processor design complexityVSAvoidpolynomial multiplication speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent transforms the polynomial multiplication problem by changing the parameter representation: it maps polynomials with small coefficients into a different domain using number theoretic transforms, where the computation can be performed using existing large integer arithmetic hardware. This parameter transformation allows existing co-processors to efficiently handle polynomial operations originally designed for different computational parameters.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces number theoretic transforms (NTT) and Kronecker substitution as intermediary mathematical operations that bridge between polynomial multiplication and integer multiplication. These intermediaries convert the polynomial operation into an equivalent integer operation that existing co-processors can handle efficiently, then convert the result back to polynomial form.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If new special-purpose co-processors are developed for lattice-based cryptography, then polynomial multiplication efficiency is improved, but development cost and time increase significantly

Engineering Contradiction:
Improvepolynomial multiplication speedVSAvoidco-processor development cost and time
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The patent makes existing co-processors universal by showing they can perform both their original large integer arithmetic functions and new polynomial multiplication functions through mathematical transformation. This multi-functionality eliminates the need for separate specialized hardware, reducing development costs and time while maintaining high polynomial multiplication efficiency.

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

Solution Approach 2:

The patent substitutes the physical hardware design approach with a mathematical transformation approach. Instead of redesigning the mechanical/computational structure of co-processors, it replaces the computational methodology by introducing NTT and Kronecker substitution, allowing existing hardware to perform new cryptographic operations efficiently.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If polynomials are mapped into smaller rings using NTT and Kronecker substitution, then computation efficiency is improved by enabling use of existing co-processors, but the computational steps and transformation overhead increase

Engineering Contradiction:
Improvecryptographic operation efficiencyVSAvoidtransformation steps
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the polynomial multiplication process into distinct transformation stages: forward NTT transformation, integer multiplication in transformed domain, inverse NTT transformation, and Kronecker substitution. This segmentation allows each stage to be optimized independently and enables the use of existing hardware for the integer multiplication stage while managing the transformation overhead systematically.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11847938B2Combining regular and symbolic NTTs using co-processors
Publication Date: 2023.12.19 NXP BV
  • US11847938B2 patent drawing
  • US11847938B2 patent drawing

AI summary

Various embodiments relate to a method for multiplying a first and a second polynomial in a ring q [X]/(Xn+1) where q is a positive integer. The method comprising: mapping the first polynomial into k smaller third polynomials over k smaller rings based upon primitive roots of unity, where k is a positive integer; mapping the second polynomial into k smaller fourth polynomials over the k smaller rings based upon primitive roots of unity; applying an isomorphism to the k third polynomials resulting in k fifth polynomials; applying the isomorphism to the k fourth polynomials resulting in k sixth polynomials; applying a Kronecker substitution on the k fifth polynomials and the k sixth polynomials and perform the multiplication of the k fifth polynomials and the k sixth polynomials to produce a multiplication result; applying an inverse of the isomorphism to the multiplication result to obtain the multiplication of the first polynomial and the second polynomial; and mapping the k inverted polynomials to a single polynomial in the ring.