Barrett Modular Reduction for Lattice Cryptography NTT Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cryptographic protocols, such as the New Hope protocol, face performance bottlenecks due to the computational inefficiency of exact modular reduction operations, particularly in lattice-based cryptography systems, which can be mitigated by employing approximate modular reductions.

Innovation Solution

Implementing a Barrett-type modular reduction after multiplication operations in Number Theoretic Transformations (NTT) and inverse-NTT, eliminating the need for modular reductions after addition operations, thereby reducing the overall number of modular reductions required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If exact modular reduction operations are applied in cryptographic protocols, then correctness and security are ensured, but computational efficiency deteriorates

Engineering Contradiction:
ImprovecorrectnessVSAvoidcomputational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent employs Barrett reduction as a computationally inexpensive approximation of exact modular reduction. This approximate reduction is used for intermediate calculations where perfect precision is not critical, sacrificing some mathematical exactness for significant computational speedup. The expensive exact modular reduction is reserved only for final results where correctness is paramount.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The patent changes the parameter of modular reduction from exact to approximate by introducing Barrett reduction with precomputed parameters (mu and k). This allows the system to operate in an approximate regime during intermediate steps, improving computational efficiency while maintaining sufficient correctness for cryptographic applications.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If modular reductions are applied after every multiplication operation in NTT, then mathematical correctness is maintained, but computational overhead increases

Engineering Contradiction:
Improvemathematical correctnessVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies modular reduction only partially - specifically after multiplication operations in NTT and inverse-NTT, but deliberately omits it after addition operations. This partial application maintains mathematical correctness where needed while avoiding unnecessary computational overhead in operations where reduction is less critical.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent segments the NTT computation into distinct operation types (multiplication vs. addition) and applies modular reduction selectively to multiplication steps. This segmentation allows the system to optimize computational flow by reducing only at critical junctures rather than uniformly at every operation.

Inventive Principle:
Principle #1Segmentation

3Productivity

If approximate modular reduction is used, then computational efficiency improves, but precision of remainder calculation decreases

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidprecision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent uses Barrett reduction as a disposable approximate computation for intermediate steps where full precision is not required. The approximate remainder is sufficient for continuing cryptographic computations, and only the final output requires exact precision, which is ensured by applying reduction only at critical points.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS9942039B1Applying modular reductions in cryptographic protocols
Publication Date: 2018.04.10 ISARA CORP
  • US9942039B1 patent drawing
  • US9942039B1 patent drawing
  • US9942039B1 patent drawing

AI summary

In a general aspect, approximate modular reductions are applied in cryptographic protocols. In some aspects, an array of integers defined for a lattice-based cryptography system is obtained. A transformation is applied to the array of integers, which includes applying a modular reduction to a product of a first integer and a second integer. The first integer is based on the array of integers, and the second integer is based on the transformation. Applying the modular reduction includes operations mathematically equivalent to multiplying the product by a first constant to yield a first intermediate value, applying a bit shift operation to the first intermediate value to yield a second intermediate value, multiplying the second intermediate value by a modulus value to yield a third intermediate value, and subtracting the third intermediate value from the product.