Guest OS Entropy Pool Aggregation for Cryptographic Randomness

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Guest operating systems running on virtual machines lack reliable random data sources due to low user interface interaction and reliance on host systems, which limits their ability to generate high-quality random numbers for applications like cryptography and gaming.

Innovation Solution

The system collects and combines random data from multiple clients and a hypervisor using communication channels like SSH and SPICE protocols, adding it to an entropy pool to increase randomness and ensure authorized access, thereby providing reliable random data to the guest operating system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If guest operating systems rely on host systems to provide random data, then the guest OS can obtain random data without complex entropy collection mechanisms, but the randomness quality deteriorates due to low user interface interaction and frequent reliance on host systems

Engineering Contradiction:
Improveease of random data generationVSAvoidrandomness quality
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent combines multiple entropy sources (host system entropy, guest OS entropy from user interactions, and cryptographic transformations) into a unified entropy pool for the guest OS. This merging approach allows the guest OS to maintain high randomness quality by aggregating entropy from diverse sources rather than relying on a single host-provided source.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If guest operating systems implement their own entropy collection mechanisms, then the randomness quality improves through diverse entropy sources, but the device complexity increases due to additional entropy collection and management components

Engineering Contradiction:
Improverandomness qualityVSAvoidentropy collection mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary entropy management layer that sits between the raw entropy sources and the random number generation process. This intermediary layer collects entropy from multiple sources, manages the entropy pool, and provides standardized random data to applications, thereby simplifying the overall system architecture while maintaining high randomness quality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The entropy management mechanism is designed to be universal and multi-functional, serving multiple guest OSes and various entropy sources through a single standardized interface. This approach reduces complexity by avoiding redundant entropy collection mechanisms in each guest OS while still providing high-quality randomness through diverse entropy aggregation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If multiple entropy sources are combined to enhance randomness, then the security improves as individual sources being tainted becomes less critical, but the system complexity increases due to multiple communication channels and protocols

Engineering Contradiction:
Improvecryptographic securityVSAvoidcommunication channel complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent converts the potential harm of individual entropy sources being compromised into a benefit by designing a system where multiple independent entropy sources are combined. Even if some sources are tainted or compromised, the combination of diverse sources through cryptographic mixing functions ensures that the overall entropy pool remains secure and unpredictable.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS9436529B2Providing random data to a guest operating system
Publication Date: 2016.09.06 RED HAT INC
  • US9436529B2 patent drawing
  • US9436529B2 patent drawing
  • US9436529B2 patent drawing

AI summary

Implementations for providing random data to a guest operating system are disclosed. In one implementation, a method of the disclosure comprises: receiving, by a processing device of a host computer system, a first random data item from an external computer system; updating an entropy pool using the first random data item; and providing a virtual machine running on the host computer system with a second random data derived from the host entropy pool.