TDX Module Trusted Fault Buffer Queues for Confidential Paging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Confidential computing environments face challenges in supporting on-demand paging due to the virtual machine manager and host software stack being outside the trusted computing base, preventing proper operation of on-demand paging for trust domain virtual machines.

Innovation Solution

Incorporating additional hardware and software elements within the trusted computing base, including additional hardware registers that enforce Security Attributes of Initiator (SAI) and Secure Arbitration Mode (SEAM) operations, to enable a TDX module to maintain trusted fault buffer queues and I/O page fault queues, allowing secure data movement and management within the trust domain.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the virtual machine manager and host software stack are placed outside the trusted computing base, then system flexibility and manageability are improved, but security and reliability of on-demand paging operations deteriorate

Engineering Contradiction:
ImprovemanageabilityVSAvoidsecurity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system is segmented into trusted and untrusted components. The TDX module and fault buffer queues are placed within the trusted computing base, while the virtual machine manager and host software stack remain outside. This segmentation allows the untrusted components to manage virtual machines without compromising the security of paging operations, as the trusted components enforce security policies and protect sensitive data structures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The TDX module acts as an intermediary between the untrusted virtual machine manager and the trusted fault buffer queues. It receives paging requests from the virtual machine manager, validates them against security policies, and executes paging operations within the trusted computing base. This intermediary role allows flexible management while maintaining security, as the TDX module translates untrusted management operations into secure trusted operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If additional hardware registers and software elements are incorporated within the trusted computing base, then security and reliability of on-demand paging are improved, but device complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidcomplexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The critical security functions for on-demand paging are extracted and placed within the trusted computing base in the form of dedicated hardware registers and the TDX module. These extracted components handle only the essential security-critical operations (fault buffer management, page fault handling), while leaving the complex virtual machine management functions to the untrusted host software. This extraction minimizes the complexity within the trusted base while maximizing security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The TDX module and associated hardware registers are designed to handle multiple paging-related functions within the trusted computing base, including fault buffer queue management, page fault interception, address translation validation, and data movement coordination. By making these trusted components multi-functional, the patent reduces the need for additional separate security mechanisms, thereby limiting the increase in complexity while maintaining comprehensive security coverage.

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

Data Source

PatentUS12189726B2On-demand paging support for confidential computing
Publication Date: 2025.01.07 INTEL CORP
  • US12189726B2 patent drawing
  • US12189726B2 patent drawing
  • US12189726B2 patent drawing

AI summary

On-demand paging support for confidential computing is described. An example of an apparatus includes circuitry including one or more processors including a first processor, the first processor including a TEE and registers, wherein the one or more processors are to: receive a memory access request associated with a trust domain (TD), wherein one or more direct memory access payloads associated with the request being generated by a protocol engine (PE) of a peripheral device and written to a host interface (HIF), the HIF including an address translation engine (ATE); and, in response to a page fault being identified for a payload, divert the payload and forward a payload fault to one or more TD fault buffers in a set of registers, and resolve the page fault by an ATE driver and a virtual machine manager using the TEE.