Lattice Matrix Multiplication Fault Detection in Post-Quantum Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Fault attacks in lattice-based post-quantum cryptography can reveal information about secret keys by manipulating matrix multiplications, posing a risk to cryptographic security.

Innovation Solution

Implementing fault detection methods by introducing redundant information, shuffling matrix rows or columns, and using verification functions to identify faults during matrix/vector operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If fault detection methods are implemented by introducing redundant information and verification functions, then cryptographic security is improved, but computational complexity and processing time increase

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

Solution Approach 1:

The patent applies preliminary action by pre-calculating verification values during the matrix multiplication process itself. The verification function is integrated into the computation workflow, allowing fault detection to be performed simultaneously with the cryptographic operation rather than as a separate post-processing step. This reduces the overhead of fault detection while maintaining security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses verification values as intermediary elements that bridge the cryptographic computation and fault detection. These verification values are computed during the matrix multiplication and then used by the verification function to detect faults. This intermediary mechanism allows fault detection to be embedded within the computational flow without requiring separate dedicated detection hardware or processes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Difficulty of detecting and measuring

If verification functions are applied to detect faults in matrix multiplication, then fault detection capability is improved, but processing time increases

Engineering Contradiction:
Improvefault detection capabilityVSAvoidprocessing time
Core Design Contradiction:
Difficulty of detecting and measuringVSLoss of time

Solution Approach 1:

The patent implements continuity of useful action by making the verification function an integral part of the matrix multiplication process. The verification values are computed continuously during the multiplication operation, and the verification function is called at natural breakpoints in the computation flow. This ensures that fault detection does not interrupt the cryptographic operation but rather proceeds concurrently, minimizing total processing time.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent applies partial action by implementing fault detection at specific critical points within the matrix multiplication process rather than continuously monitoring every operation. The verification function is called after computing verification values that capture essential fault information, providing sufficient fault detection capability without the overhead of constant verification. This partial verification approach balances security with processing efficiency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12413399B2Fault detection in post-quantum cyptography
Publication Date: 2025.09.09 NXP BV
  • US12413399B2 patent drawing
  • US12413399B2 patent drawing
  • US12413399B2 patent drawing

AI summary

Various embodiments relate to a data processing system comprising instructions embodied in a non-transitory computer readable medium, the instructions for a cryptographic operation including matrix multiplication for lattice-based cryptography in a processor, the instructions, including: applying a first function to the rows of a matrix of polynomials to generate first outputs, wherein the first function excludes the identity function; adding an additional row to the matrix of polynomials to produce a modified matrix, wherein each element in the additional row is generated by a second function applied to a column of outputs associated with each element in the additional row; multiplying the modified matrix with a vector of polynomials to produce an output vector of polynomials; applying a verification function to the output vector that produces an indication of whether a fault occurred in the multiplication of the modified matrix with the vector of polynomials; and carrying out a cryptographic operation using output vector when the verification function indicates that no fault occurred in the multiplication of the modified matrix with the vector of polynomials.