Safe VM Entropy Sources Through Encrypted Guest Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual machines (VMs) face security vulnerabilities due to unauthorized access to guest memory, particularly when using dedicated entropy sources that can deceive VMs with predictable data, compromising sensitive information.

Innovation Solution

A processing device encrypts and decrypts data using the VM's encryption key to ensure randomness, writing to encrypted guest memory pages and scrambling data to prevent unauthorized access, even when multiple requests are made.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a hypervisor provides access to guest memory of VMs, then communication between virtual devices and VMs is facilitated, but security vulnerabilities arise allowing unauthorized access to sensitive information

Engineering Contradiction:
Improvecommunication between virtual devices and VMsVSAvoidunauthorized access to guest memory
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent segments guest memory into encrypted pages and unencrypted pages, allowing different access controls and security levels for different portions of memory, thereby enabling communication while protecting sensitive information

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an entropy source as an intermediary component that provides random data to VMs through controlled access, acting as a mediator between the hypervisor and VM memory systems to enable secure communication

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If dedicated entropy sources provide random data to VMs, then cryptographic security is enhanced, but the entropy sources can deceive VMs with predictable data compromising security

Engineering Contradiction:
Improvecryptographic securityVSAvoidrandomness of entropy data
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent performs preliminary encryption of entropy data before writing it to encrypted guest memory pages, ensuring that the data maintains its randomness properties while being securely stored and transmitted to the VM

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements validation mechanisms that provide feedback to verify the randomness of entropy data, ensuring that the entropy source is not providing predictable data and maintaining cryptographic security

Inventive Principle:
Principle #23Feedback

3Reliability

If SEV encrypts guest memory pages, then VM isolation and confidentiality are improved, but data access and processing become more complex

Engineering Contradiction:
ImproveVM isolation and confidentialityVSAvoiddata access and processing operations
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the encryption/decryption operations from the general memory access path and handles them specifically for entropy data, reducing the complexity impact on general data access while maintaining security for sensitive operations

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12393440B2Safe entropy source for encrypted virtual machines
Publication Date: 2025.08.19 RED HAT LLC
  • US12393440B2 patent drawing
  • US12393440B2 patent drawing
  • US12393440B2 patent drawing

AI summary

Systems and methods for ensuring that data received from a virtual device is random are provided. A processing device may be used to generate, by a virtual device executing on a hypervisor, data intended for a virtual machine (VM) having a guest memory that includes one or more encrypted pages and one or more unencrypted pages. Data written to an encrypted page of the guest memory by the VM is encrypted using an encryption key assigned to the VM and information read from the encrypted page by the VM is decrypted using the encryption key. The hypervisor may write the data to the encrypted page, wherein the data is not encrypted by the encryption key assigned to the VM because it is written by the hypervisor. The VM reads the data from the encrypted page as randomized data because it cannot be properly decrypted by the encryption key.