Secure OS Isolating Quantum Random Number Generator
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mobile devices using pseudo-randomly generated encryption keys and initialization vectors are vulnerable to attacks, as these can be predicted by attackers gaining access to the operating system, and quantum random number generators are exposed through drivers, allowing interception of entropy inputs.
Innovation Solution
Implementing a secure operating system that interfaces with a quantum random number generator using a secure driver, isolating the quantum random number generator from the high-level operating system and executing a pseudo-random number generator within the secure operating system or a Secure Element to prevent exposure and interception.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a quantum random number generator is directly interfaced with the host processor, then high entropy random numbers can be generated for encryption, but the entropy input can be intercepted by attackers gaining access to the driver
Solution Approach 1:
A secure operating system is introduced as an intermediary layer between the quantum random number generator and the high-level operating system. The secure OS receives entropy input directly from the QRNG, generates random numbers through a pseudo-random number generator, and then provides these to the high-level OS. This mediator architecture prevents attackers with driver access from intercepting the entropy input, as the secure OS controls the interface to the QRNG.
Solution Approach 2:
The system is segmented into two distinct operating system environments: a secure operating system that has exclusive access to the quantum random number generator, and a high-level operating system that uses the generated random numbers but cannot access the QRNG directly. This segmentation isolates the entropy source from potential attackers in the high-level OS environment.
2Productivity
If pseudo-random number generation is used in the high-level operating system, then random numbers can be generated for encryption, but attackers can predict the keys and initialization vectors by accessing the operating system
Solution Approach 1:
The secure operating system acts as a trusted intermediary that executes the pseudo-random number generator in a protected environment. It receives entropy from the QRNG, processes it through the PRNG algorithm, and outputs random numbers to the high-level OS. Attackers cannot predict the output because they cannot access or manipulate the entropy source or the PRNG execution environment.
Solution Approach 2:
The secure operating system creates a copy of the random number generation functionality within its own protected environment. Instead of allowing the high-level OS to execute the PRNG directly (where it would be vulnerable), the secure OS implements its own PRNG instance that operates on securely sourced entropy, then shares the results with the high-level OS.
Data Source
AI summary
A device may receive, at an operating system, a request for a random number from an application. The device may provide a command to generate an entropy input, based on the request for the random number and through a driver that is isolated from the operating system, to a quantum random number generator that is isolated from one or more processors hosting the operating system. Accordingly, the device may receive the entropy input, from the quantum random number generator, using the driver, and may generate the random number based at least in part on the entropy input. The device may provide the random number to the application.


