Tools

What Is Confidential Computing

Learn how confidential computing uses hardware-isolated TEEs to protect data in use — even from cloud providers, hypervisors, and privileged insiders.

Editorial Team ·
10 min read intermediate

Introduction

Encryption has long covered two of the three states of data: at rest (data on disk is encrypted with AES-256) and in transit (data over the network is protected by TLS). But the third state — data in use, while the CPU is actively processing it — has historically required trusting the entire software stack from the operating system up through the application. In a cloud environment — the exact case that confidential computing was invented to secure — that trust chain includes the cloud provider’s hypervisor, management plane, and the humans who operate the infrastructure. For many workloads — medical records, financial models, AI training on proprietary datasets, regulated financial data — that is an unacceptable exposure. Confidential computing closes this gap. By leveraging hardware-enforced memory encryption built into modern CPUs from Intel, AMD, and ARM, confidential computing lets workloads run in Trusted Execution Environments (TEEs) that the cloud provider, its hypervisor, and even its privileged administrators cannot read — even with physical access to the server. All three major cloud providers — AWS, Azure, and Google Cloud — now offer confidential computing instances, and the Confidential Computing Consortium, hosted by the Linux Foundation, is driving standards and tooling for the ecosystem.

What Is Confidential Computing?

Confidential computing is the hardware-based protection of data in use — ensuring that code and data are encrypted in CPU memory even from the operating system, hypervisor, and cloud provider. It extends the traditional “encrypt everything” security model to cover active computation, not just storage and transmission.

The enabling technology is the Trusted Execution Environment (TEE) — a hardware-isolated region of memory where the CPU enforces that only authorized code can access the contents. The CPU’s memory encryption engine encrypts all memory belonging to the TEE with keys that exist only inside the CPU package. Any attempt to read TEE memory from outside — including from the hypervisor, from a DMA-capable device, or by probing physical memory chips — yields only encrypted ciphertext.

TEEs also support remote attestation: a TEE can generate a cryptographically signed report containing the hash of its code and configuration, signed by a key that can only have been generated inside a genuine hardware TEE. A remote party can verify this report — via the CPU manufacturer’s attestation service — to confirm that specific, unmodified code is running in a real, hardware-isolated enclave before sending it sensitive data.

How Confidential Computing Works

The confidential computing workflow typically follows this pattern:

  1. TEE instantiation: A CPU instruction creates a new TEE — such as a secure enclave in Intel SGX or an encrypted VM in AMD SEV-SNP. The CPU allocates memory for the TEE and generates an ephemeral encryption key for that region.
  2. Code and data loading: The application or runtime loads code and initial data into the TEE. Each page is measured (hashed) as it is loaded, building a cumulative measurement of the enclave’s initial state.
  3. Attestation: The TEE generates a signed attestation report containing the measurement of its loaded code, signed by the CPU’s hardware-rooted attestation key. A remote party (a key management service, a data provider, or an auditor) verifies the attestation report via the CPU manufacturer’s attestation service to confirm the code is what it claims to be and runs in a genuine TEE.
  4. Secure key provisioning: After attestation succeeds, the remote party provisions decryption keys or sensitive data directly to the TEE’s encrypted memory. The TEE decrypts, processes, and re-encrypts the data — the plaintext never leaves the TEE’s hardware-isolated memory region.
  5. Compute and output: The TEE performs its computation and produces results, which are encrypted before being written outside the enclave boundary.
  6. TEE destruction: When the workload completes, the CPU destroys the TEE and the ephemeral encryption keys, leaving no recoverable plaintext in memory.
Confidential computing isolates workload memory at the CPU hardware level. The hypervisor and OS see only encrypted memory. Remote attestation lets a data provider verify exactly what code is running before releasing sensitive data to the TEE.
Intel Technology's deep-dive covers how TEEs are implemented at the silicon level, how attestation works end to end, and how confidential computing changes the trust model for cloud workloads — directly relevant to every concept in this article.

Intel SGX vs AMD SEV vs ARM TrustZone

FeatureIntel SGXAMD SEV-SNPARM TrustZone
Isolation granularityUser-space process enclaveFull virtual machineTwo execution worlds (Normal/Secure)
Memory encryptionEnclave memory onlyEntire VM memorySecure World memory
Enclave size limit128–256 MB (expandable with SGX2)Full VM RAMNo fixed limit
Application changes neededSignificant — enclave rewriteMinimal — guest OS changeDepends on use case
AttestationIntel DCAP / IASAMD SEV-SNP attestationPlatform-specific
Primary useCloud functions, AI inference, key managementCloud VMs, confidential containersMobile, IoT, embedded
Cloud availabilityAzure DCsv3, AWS Nitro EnclavesAzure DCasv5, GCP C2D, AWS (AMD instances)Mobile devices (Qualcomm, Apple)
Side-channel historyForeshadow, LVI, SGAxePLATYPUS (mitigated)Limited public research

Real-World Use Cases

Privacy-preserving machine learning: Training AI models on sensitive data — patient records, financial transactions, proprietary source code — has historically required the data owner to trust the model trainer completely. With confidential computing, the training computation runs inside a TEE. The data owner verifies via attestation that the correct, audited training code is running and that no data exfiltration path exists before releasing the data. This enables federated learning and collaborative ML across organizations that cannot legally share raw data.

Secure multi-party computation in the cloud: Multiple organizations can contribute encrypted datasets to a confidential computing workload that performs joint analysis — a joint fraud detection model between competing banks, for instance — without any party ever seeing another’s raw data. The TEE enforces that only the agreed computation runs on the combined data. This is complementary to the cryptographic approach described in the broader Zero-Knowledge cluster; see Zero-Knowledge Encryption: What It Is and How It Works for the mathematical side.

Regulatory isolation for cloud workloads: Industries subject to data residency and access control regulations — healthcare (HIPAA), financial services (PCI DSS), and government contracts (FedRAMP) — often cannot move sensitive workloads to public cloud because the cloud provider’s access constitutes a disclosure risk. Confidential computing instances, combined with attestation-based key management, allow these workloads to run in public cloud while giving compliance auditors verifiable proof that the cloud provider cannot access the data. For compliance context, see PCI DSS Compliance: What You Must Implement.

Common Mistakes to Avoid

Assuming the TEE eliminates all attack surfaces: TEEs protect against hypervisor and OS-level access, but they have their own attack surface. Intel SGX has been the subject of multiple serious academic attacks — Foreshadow (2018), Load Value Injection (LVI, 2020), and SGAxe (2020) — that exploited CPU microarchitectural behavior to leak enclave data. Confidential computing is a powerful tool, not a silver bullet. Always check the CPU’s firmware microcode version and apply available mitigations.

Forgetting to verify attestation before provisioning secrets: The security model of confidential computing depends entirely on verifying the attestation report before sending sensitive data into the TEE. Skipping or weakly implementing attestation verification — for example, trusting the enclave’s own report of its code hash without checking it against an expected value — completely defeats the purpose. Attestation verification must be implemented at the data-provisioning side, not just trusted on the TEE side.

Treating TEE memory limits as fixed: Intel SGX originally limited enclave memory to 128 MB (the Enclave Page Cache). Workloads that exceed this size incur expensive page swapping that can degrade performance by 10×. SGX2 and newer hardware increase this, but you must architect your application with memory constraints in mind. AMD SEV has no such limit — the entire VM memory is encrypted.

Ignoring side-channel attacks within the TEE boundary: Even inside a TEE, code that is not written to be constant-time can leak information through cache timing — the same risk described in Side-Channel Attacks Explained. The TEE boundary protects against external reads of memory, but internal timing behavior is still observable by a co-located attacker through shared CPU resources.

Getting Started

To explore confidential computing for your workloads:

First, identify your highest-risk computation. Confidential computing is most valuable for code that processes sensitive data that you currently cannot run in cloud environments due to trust concerns. AI inference on regulated medical data, cryptographic key processing, and multi-party data analysis are prime candidates.

Second, choose the right TEE technology for your workload size. For small, high-security workloads (key management, authentication services) where a full rewrite is feasible, Intel SGX with the Open Enclave SDK or Gramine library OS is a mature choice. For lifting existing Linux workloads into the cloud with minimal changes, AMD SEV-SNP VMs (available on Azure DCasv5 and Google Cloud C2D) require only a confidential-VM-enabled guest OS.

Third, implement attestation rigorously. Use a hardware-rooted attestation service — Intel’s DCAP, AMD’s KDS, or a cloud-managed attestation service like AWS Nitro Attestation, Azure Attestation Service, or GCP Confidential Space — and verify the TEE’s measurement against a known-good reference value before provisioning any secrets. Never ship code that skips attestation in production.

Fourth, plan for a defense-in-depth architecture. Combine confidential computing with encryption at rest, key management services, and network isolation. TEEs protect the computation; the surrounding infrastructure must still be hardened. Confidential computing is one layer in a complete security architecture, not a replacement for it.

FAQ

Common questions — answered in plain English.

What is confidential computing?
Confidential computing is a hardware-based security paradigm that protects data while it is being actively processed — in addition to data at rest and in transit. It uses CPU-level trusted execution environments (TEEs) to isolate workloads so that even the cloud provider's hypervisor, firmware, and privileged administrators cannot access the data or code running inside the enclave.
What is a Trusted Execution Environment (TEE)?
A TEE is a secure, isolated region of CPU memory where code and data are protected by hardware encryption enforced by the CPU itself. Code inside the TEE can read and write its own memory, but the hypervisor, OS kernel, and other processes see only encrypted ciphertext when they access the TEE's memory. The TEE also supports attestation — proving to a remote party that specific code is running inside a genuine hardware-isolated enclave.
What is the difference between Intel SGX, AMD SEV, and ARM TrustZone?
Intel SGX creates small isolated user-space enclaves within a process; it is precise but limited in enclave memory size. AMD SEV encrypts entire virtual machines in memory so the hypervisor cannot read VM contents; it protects larger workloads with less code change. ARM TrustZone creates two execution worlds (Normal World and Secure World) on mobile and embedded CPUs, primarily used for device security rather than cloud workloads.
Can the cloud provider see my data with confidential computing?
No — that is the core guarantee. In a confidential computing environment, the cloud provider operates the physical infrastructure but cannot access the contents of your TEE-protected workload. Even a malicious cloud administrator with physical access to the server cannot extract data from a running enclave because the CPU's memory encryption keys are managed by the hardware and never exposed to software, including the hypervisor.
What does confidential computing protect against that encryption at rest does not?
Encryption at rest protects data stored on disk; encryption in transit protects data moving over a network. Neither protects data while it is actively being processed by the CPU — at that point, it must be in plaintext in RAM to be computed on. Confidential computing is the third leg of the encryption triangle, protecting data during active computation by keeping it encrypted in hardware even inside the CPU's memory.
What are the limitations of confidential computing?
TEEs have significant limitations: Intel SGX enclaves have restricted memory (historically 128–256 MB), require rewriting applications to use enclave SDKs, and have been subject to side-channel attacks including Spectre, Foreshadow, and LVI. Performance overhead from memory encryption ranges from 10–30%. AMD SEV-SNP (the strongest AMD variant) requires hardware support not available on all cloud instances. The technology is evolving rapidly and not all attack surfaces are fully understood.

References

  1. [1]
    Confidential Computing: Hardware-Based Trusted Execution for Applications and DataConfidential Computing Consortium (Linux Foundation), 2023
  2. [2]
  3. [3]
  4. [4]
  5. [5]