Lattice Matrix Multiplication Fault Detection in Post-Quantum Cryptography
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
Data Source
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.


