Systolic Array Gaussian Elimination for Post-Quantum Cryptography
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems for post-quantum cryptography face challenges in efficiently utilizing memory and reducing hardware requirements during matrix decomposition operations, particularly in generating public keys for encryption algorithms like McEliece, BIKE, FrodoKEM, HQC, and NTRU Prime, where existing methods do not effectively manage memory usage and computational efficiency.
Innovation Solution
A Gaussian elimination computing system and method that employs a systolic array and control circuit to perform matrix decomposition, saving memory by decomposing an operation matrix into lower and upper triangular matrices and storing them in a memory block of the same size as the operation matrix, allowing for early-abortion of computations when the matrix is not full rank, thus optimizing memory usage and computational efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If traditional matrix decomposition methods are used, then computation can be performed, but memory requirements are excessive and hardware requirements are high
Solution Approach 1:
The patent segments the matrix decomposition process into distinct phases (LU decomposition, inversion of triangular matrices, matrix multiplication) and implements a systolic array that processes data in a structured, phased manner. This segmentation allows for optimized memory usage at each stage, where intermediate results are stored efficiently in the systolic array's internal registers rather than in external memory, thereby reducing overall memory requirements while maintaining computational efficiency.
Solution Approach 2:
The patent transitions from traditional sequential or simple parallel computation to a two-dimensional systolic array architecture. This dimensional change enables simultaneous processing of multiple matrix elements across the array, improving computational throughput while the regular structure of the systolic array allows for compact data storage and reuse, reducing external memory requirements.
2Reliability
If full matrix decomposition is performed, then accurate results are obtained, but computation time is excessive for non-invertible matrices
Solution Approach 1:
The patent implements preliminary detection during the LU decomposition process to check whether the matrix is invertible (by detecting zero or near-zero pivot elements). This preliminary action allows the system to abort the computation early when the matrix is determined to be non-invertible, avoiding wasted computation time while ensuring accurate results are obtained when the matrix is invertible.
Solution Approach 2:
The patent incorporates feedback mechanisms where the results of intermediate computational steps (such as pivot element values during decomposition) are monitored and used to control the continuation of the computation. When feedback indicates a singular matrix condition, the system responds by aborting further computation, thus saving time while maintaining reliability for valid cases.
Data Source
AI summary
A Gaussian elimination computing system and a Gaussian elimination computing method are provided. The Gaussian elimination computing system includes a control circuit, a systolic array, and a memory. The control circuit receives an operation matrix. The systolic array includes a square array formed by a plurality of operating cells. The systolic array is configured to perform a matrix decomposition operation to the operation matrix, to decompose the operation matrix into a lower triangular matrix and an upper triangular matrix. The memory is configured with an operation data block with the same size as the operation matrix for storing the lower triangular matrix and the upper triangular matrix after decomposition.


