VM-Peripheral Key Exchange for Secure Encrypted DMA Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional virtualization systems experience significant latency and security vulnerabilities due to data copying between un-encrypted host memory and DMA buffers during VM-peripheral device communication, and malicious hypervisors can access private VM data by emulating trusted devices.

Innovation Solution

Implement secure communication by exposing a peripheral device's public cryptographic key to the VM, generating a shared cryptographic key through a nonce value encrypted with this key, and using it to access a shared memory space for direct memory access, thereby eliminating unnecessary data copying and preventing unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If data copying between un-encrypted host memory and DMA buffers is performed during VM-peripheral device communication, then device compatibility and ease of operation are maintained, but system latency increases significantly

Engineering Contradiction:
Improvesystem latencyVSAvoiddevice compatibility
Core Design Contradiction:
Loss of timeVSEase of operation

Solution Approach 1:

The patent extracts the cryptographic key verification and encryption operations from the traditional data copying path. By using DMA agents that can directly access encrypted VM memory through cryptographic keys, the system eliminates the intermediate un-encrypted host memory copy step, thereby reducing latency while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces cryptographic keys and DMA agents as intermediaries between the VM and peripheral devices. These intermediaries enable direct encrypted access to VM memory, replacing the traditional un-encrypted copying mechanism and reducing system latency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If un-encrypted host memory is used for data transmission, then device compatibility is maintained, but security vulnerabilities increase allowing malicious hypervisors to access private VM data

Engineering Contradiction:
ImprovesecurityVSAvoiddevice compatibility
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent applies preliminary anti-action by encrypting VM memory with cryptographic keys before any data transmission occurs. This pre-encryption prevents malicious hypervisors from accessing private VM data, as the data remains encrypted throughout the transmission process without requiring un-encrypted intermediate storage.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The patent replaces the mechanical system of un-encrypted memory copying with a cryptographic system. DMA agents use cryptographic keys to directly access and transmit encrypted data, substituting the traditional un-encrypted memory access mechanism and thereby enhancing security while maintaining device compatibility.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If cryptographic key verification and encrypted DMA are implemented, then security is enhanced, but device complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidcommunication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling peripheral devices and DMA agents to autonomously perform cryptographic key verification and encrypted data access. The DMA agents automatically use the peripheral device's cryptographic key to access the appropriate encrypted VM memory regions without requiring complex external verification mechanisms, thereby reducing overall system complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12498954B2Secure virtual machine and peripheral device communication
Publication Date: 2025.12.16 RED HAT LLC
  • US12498954B2 patent drawing
  • US12498954B2 patent drawing
  • US12498954B2 patent drawing

AI summary

A method includes exposing a public cryptographic key associated with a peripheral device of a computing system to a guest running on the computing system. The method further includes receiving, from the guest, a message including a cryptographic nonce value encrypted with the public cryptographic key. The method further includes producing the cryptographic nonce value by decrypting the message using a private cryptographic key associated with the public cryptographic key. The method further includes using a shared cryptographic key generated from the cryptographic nonce value to access contents of a direct memory access (DMA) buffer associated with the peripheral device.