Error Vector Random Value Generation Circuit
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems face challenges in generating strong encryption keys due to limited sources of entropy in digital systems, particularly in data storage devices, where data errors can lead to unreliable randomness, affecting data security.
Innovation Solution
A circuit and method that generate random values by calculating an error vector from input and corrected data using error correction operations, which is then used as a seed for random number generators or encryption keys, leveraging data channel errors to enhance entropy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data errors are used to generate random values, then entropy and randomness are improved, but reliability and predictability worsen
Solution Approach 1:
The patent converts data transmission errors, which are traditionally harmful and unwanted, into a beneficial source of entropy for random number generation. The error correction circuit's correction values, which represent the differences between corrupted and corrected data, are extracted and used as random values. This transforms the harmful effect of data errors into a useful resource for generating high-entropy random numbers, directly resolving the contradiction between improving randomness quality and dealing with data errors.
2Measurement precision
If error correction operations are performed, then data accuracy is improved, but processing complexity increases
Solution Approach 1:
The error correction circuit is designed to perform dual functions: correcting data errors to ensure data accuracy and generating random values from the correction process. By making the error correction circuit multi-functional, the patent eliminates the need for separate random number generation hardware, thereby reducing overall system complexity while maintaining high data accuracy through error correction.
Solution Approach 2:
The error correction process itself generates the random values without requiring additional dedicated resources. The correction values produced during error correction are directly utilized as random numbers, allowing the system to serve its own random number generation needs through its existing error correction functionality, thus avoiding increased processing complexity.
3Reliability
If dedicated random number generation hardware is added, then randomness quality is improved, but device complexity and cost increase
Solution Approach 1:
The error correction circuit performs both error correction and random number generation functions, eliminating the need for dedicated random number generation hardware. This multi-functional approach maintains high randomness quality by utilizing the inherent entropy in data transmission errors while avoiding the increased device complexity and cost that would result from adding separate hardware components.
Solution Approach 2:
The correction values from the error correction process serve as an intermediary resource that bridges data accuracy requirements and random number generation needs. These correction values, which represent the differences between erroneous and corrected data, are extracted and used as high-entropy random values, providing a mediator solution that satisfies both error correction and randomness requirements without additional hardware.
Data Source
AI summary
Random values can be very beneficial in systems needing to generate random number or encryption keys. Systems and methods are presented herein that can generate a random value based on errors in data. For example, an error vector can be generated when data having errors (e.g. stored data, data received by a receiver, etc.) is compared with corresponding corrected data. A circuit, such as a data channel, can generate the corrected data by applying error correcting codes to the data with errors. One or more error vectors may be used to produce a random value. In some cases, multiple error vectors can be combined to produce a random value.


