Truncated Table Random Number Generator for Lattice Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing devices for generating random numbers according to a nonuniform, discrete, and bounded probability distribution, such as Gaussian distributions, are not fast enough for applications in cryptography based on Euclidean lattices.

Innovation Solution

A device comprising a random number generator, a fast-sampling level with a truncated table, and a slow-sampling level, which uses inversion sampling and pre-stored tables to quickly identify samples that meet specific conditions, allowing for the generation of random numbers efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional random number generation methods are used, then the generation process is simple, but the speed is too slow for cryptographic applications

Engineering Contradiction:
Improverandom number generation speedVSAvoiddevice structure complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The device is divided into multiple independent sampling levels (fast-sampling level with truncated table, medium-sampling level, and slow-sampling level with complete table), each handling different ranges of the random number generation process. This segmentation allows parallel processing and significantly increases overall generation speed while keeping each individual level relatively simple.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention pre-computes and stores sampling tables (truncated table in fast-sampling level, complete table in slow-sampling level) that contain pre-calculated random numbers drawn from the required nonuniform distribution. During operation, the system performs lookup operations in these pre-prepared tables rather than generating random numbers in real-time, dramatically improving speed.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a complete sampling table is used, then all possible samples can be found, but the table size becomes too large for efficient storage and access

Engineering Contradiction:
Improvecompleteness of sample coverageVSAvoidstorage table size
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The sampling table is segmented into a truncated table (stored in fast-sampling level with limited size) and a complete table (stored in slow-sampling level). The truncated table covers the most frequently accessed ranges, providing fast access for common cases, while the complete table handles edge cases and ensures full coverage when needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different parts of the system use different table sizes and completeness levels according to their specific needs. The fast-sampling level uses a small truncated table for speed-critical operations, while the slow-sampling level uses a larger complete table for comprehensive coverage, optimizing the trade-off between storage size and reliability locally in each sampling level.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11907682B2Device and method for generating a random number drawn according to a nonuniform distribution
Publication Date: 2024.02.20 COMMISSARIAT A LENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES
  • US11907682B2 patent drawing
  • US11907682B2 patent drawing
  • US11907682B2 patent drawing

AI summary

This device comprises a fast sampler comprising:a truncated table associating with truncated random numbers rmsb coded on Nmsb bits, the only sample k for which, whatever the number rlsb belonging to the interval [0; 2Nr−Nmsb−1], the following condition is met: F(k−1)<(rmsb, rlsb)≤F(k), where:(rmsb, rlsb) is the binary number coded on Nr bits and the Nmsb most significant bits of which are equal to the truncated random number rmsb and the (Nr−Nmsb) least significant bits of which are equal to the number rlsb,Nmsb is an integer number lower than Nr,a module for searching for a received truncated random number rmsb in the truncated table, and able to transmit the sample k, associated, by the truncated table, with the received truncated random number rmsb, by way of random number drawn according to the probability distribution ρ.