Frontiers of Systems Programming

confidential computing

When you run your program on someone else's computer - a cloud server - you are trusting whoever controls that machine. The operating system, the hypervisor, and the cloud operator can normally see and modify everything in your program's memory while it runs. Confidential computing is a set of hardware techniques that aim to break that assumption: to protect your data and code while they are being used, even from the very system and administrator running them.

Concretely, confidential computing protects data in use, completing the trio with the long-solved problems of protecting data at rest (encryption on disk) and data in transit (encryption on the wire). The mechanism is hardware-enforced isolation: the CPU itself creates a protected region - a trusted execution environment or enclave - whose memory is encrypted and access-controlled by the chip, so that code and data inside it are shielded from everything outside, including the OS and hypervisor. The threat model is the striking part: it treats the host system, the hypervisor, and the operator as untrusted, trusting only the CPU hardware and the small code inside the protected region. You also get attestation - a way for the hardware to prove to a remote party which code is really running inside the protected region before any secret is sent to it.

It matters because it could let you run sensitive workloads - medical data, keys, private models - on infrastructure you do not control, with a much smaller trust base. But be scrupulous about the limits, because the marketing overshoots. The protection rests entirely on trusting the CPU vendor's hardware and firmware, which is a real and non-trivial root of trust; these systems have repeatedly been broken by side-channel attacks (timing, cache, speculative-execution leaks) that the enclave model does not inherently stop; the protected code itself can still have ordinary bugs; and 'the operator cannot see your data' is a claim about a specific threat model with specific assumptions, not a magic guarantee. Real, advancing technology (Intel SGX, AMD SEV, ARM CCA) - with genuine, documented caveats.

data at rest: encrypted on disk (long solved) data in transit: encrypted on the wire (long solved) data IN USE: encrypted/isolated by the CPU while running <- confidential computing threat model: trust the CPU hardware; do NOT trust the OS, hypervisor, or cloud operator

Confidential computing protects data while it is being computed on, under a threat model that distrusts even the host OS, hypervisor, and operator - trusting only the CPU.

The protection rests on trusting the CPU vendor's hardware/firmware - a real root of trust, not magic. These systems have been broken repeatedly by side-channel attacks the enclave model does not inherently prevent, and the protected code can still have ordinary bugs; 'the operator can't see your data' holds only within a specific, assumption-laden threat model.

Also called
confidential cloud computing保密運算