GPU Trust-Domain Memory Protection with Encrypted Translation Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies face challenges in ensuring confidentiality and integrity of GPU workloads while maintaining performance, particularly in virtualized environments where trust domains are involved, as VMM and PF KMD entities are not trusted.

Innovation Solution

Implementing secure translation tables with encryption keys and memory encryption blocks to protect GPU local memory, ensuring confidentiality and integrity, and using separate keys for trust domains to prevent unauthorized access and attacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory encryption blocks and secure translation tables are implemented to protect GPU local memory, then confidentiality and integrity are improved, but device complexity increases

Engineering Contradiction:
Improveconfidentiality and integrityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A memory encryption block is introduced as an intermediary component between the GPU and device memory. This block transparently encrypts and decrypts memory accesses without requiring changes to the GPU architecture or application code, thereby improving confidentiality while adding minimal complexity through a dedicated security component.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The translation table system is segmented into secure and non-secure versions. Secure translation tables are used for trust domain accesses and are protected by encryption keys, while non-secure tables handle regular accesses. This segmentation allows selective application of security measures, improving integrity for critical data while managing overall system complexity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If separate encryption keys are allocated for each trust domain, then security against unauthorized access is improved, but device complexity and key management overhead increase

Engineering Contradiction:
Improvesecurity against unauthorized accessVSAvoidkey management overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Each trust domain is allocated a unique encryption key specifically for its secure translation tables, creating localized security zones. This ensures that compromise of one trust domain does not affect others, improving security isolation while the memory encryption block automates key management to reduce operational overhead.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The memory encryption block automatically manages encryption and decryption operations using the allocated keys without requiring manual intervention. The system self-manages the cryptographic operations, reducing the burden on system administrators while maintaining strong security through domain-specific keys.

Inventive Principle:
Principle #25Self-service

3Reliability

If secure translation tables are used for all memory accesses, then confidentiality is improved, but processing performance deteriorates due to encryption overhead

Engineering Contradiction:
ImproveconfidentialityVSAvoidprocessing performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically selects between secure and non-secure translation tables based on the trust domain status of the accessing entity. Trust domain processes automatically use secure tables with encryption, while non-trust processes use standard tables, optimizing performance by applying encryption only when necessary rather than universally.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the security parameter (encryption enabled/disabled) based on the access context. When a trust domain process accesses memory, encryption is activated; for regular processes, encryption is bypassed. This parameter switching maintains confidentiality for sensitive operations while preserving performance for non-sensitive workloads.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP4254203B1Device memory protection for supporting trust domains
Publication Date: 2025.07.30 INTEL CORP
  • EP4254203B1 patent drawingFigure 1A
  • EP4254203B1 patent drawingFigure 1B
  • EP4254203B1 patent drawingFigure 2A

AI summary

Device memory protection for supporting trust domains is described. An example of a computer-readable storage medium includes instructions for allocating device memory for one or more trust domains (TDs) in a system including one or more processors and a graphics processing unit (GPU); allocating a trusted key ID for a TD of the one or more TDs; creating LMTT (Local Memory Translation Table) mapping for address translation tables, the address translation tables being stored in a device memory of the GPU; transitioning the TD to a secure state; and receiving and processing a memory access request associated with the TD, processing the memory access request including accessing a secure version of the address translation tables.