Intel SGX
Last updated
Last updated
Intel Software Guard Extensions (SGX) was released in 2015 with the sixth-generation Intel Core microprocessors based on the Skylake microarchitecture. Initially, SGX was also available for desktop CPUs up to the 10th generation, referred to as SGX1, and is now only available for server CPUs with some modifications and tuning, referred to as SGX2.
Intel SGX is a set of instructions that extends Intel's x86 architecture with confidential computing and provides process-based TEE's. This means that a TEE is embedded in a process for application instances. This TEE is called an enclave and isolates the application inside it from the rest of the software stack. The figure below compares the attack surface of a normal application with that of an enclave and shows the drastically reduced attack surface of an enclave. Only the code running in the enclave and the CPU needs to be trusted and acts as an attack surface. An enclave resides in a protected memory region and can only be accessed if the trusted CPU allows it.