Unified Random Number Generation Instruction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing random number generation technologies in computing environments rely on either pseudorandom number generators, which are deterministic, or true random number generators, which may not efficiently provide both raw and conditioned entropy for secure data encryption and other processing needs.
Innovation Solution
A computer program product that executes a single instruction to produce true random numbers, providing raw entropy directly from a noise source and conditioned entropy processed by a pseudorandom number generator, along with a raw-to-conditioned ratio, facilitating secure data encryption and other processing requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a pseudorandom number generator (PRNG) is used, then the generation process is deterministic and computationally efficient, but the randomness quality is insufficient for high-security applications
Solution Approach 1:
The patent combines a pseudorandom number generator (PRNG) with a true random number generator (TRNG) into a hybrid system. The TRNG provides high-entropy seed values from physical noise sources, while the PRNG expands these seeds into long sequences of pseudorandom numbers. This merging allows the system to achieve both computational efficiency (from PRNG) and high randomness quality (from TRNG), resolving the contradiction between productivity and reliability.
2Reliability
If a true random number generator (TRNG) is used, then high-quality randomness is achieved, but the system complexity increases and entropy management becomes challenging
Solution Approach 1:
The patent segments the random number generation system into distinct functional components: a TRNG module for generating raw entropy from noise sources, a conditioning module for processing the raw entropy into usable random numbers, and a PRNG module for efficient sequence generation. This segmentation allows each component to be optimized independently and managed separately, reducing overall system complexity while maintaining high randomness quality.
Solution Approach 2:
The patent introduces an entropy pool as an intermediary buffer between the TRNG and the PRNG. This entropy pool accumulates and conditions raw entropy from the TRNG, providing a stable supply of high-quality random seeds to the PRNG. The intermediary entropy pool simplifies entropy management by decoupling the TRNG from the PRNG, allowing independent optimization and reducing system complexity.
3Ease of operation
If separate instructions are used for raw entropy and conditioned entropy generation, then functional clarity is achieved, but the instruction overhead and processing time increase
Solution Approach 1:
The patent implements a universal random number generation instruction that can perform multiple functions: generating raw entropy from the TRNG, conditioning the entropy through the entropy pool, and generating pseudorandom sequences from the PRNG. This multi-functional instruction reduces instruction overhead and processing time by eliminating the need for separate instructions for each operation, while maintaining functional clarity through a unified interface.
Data Source
Figure 1A
Figure 1B
Figure 2A~2B
AI summary
An instruction configured to perform a plurality of functions is executed. Based on a function code associated with the instruction having a selected value, one or more inputs of the instruction are checked to determine which one or more functions of the plurality of functions are to be performed. Based on a first input of the one or more inputs having a first value, a function of providing raw entropy is performed, in which the providing of raw entropy includes storing a number of raw random numbers. Further, based on a second input of the one or more inputs having a second value, a function of providing conditioned entropy is provided, in which the providing of conditioned entropy includes storing a number of conditioned random numbers.