Composite Enclaves: Towards Disaggregated Trusted Execution
This addresses the problem of expanding TEE applicability to heterogeneous hardware in datacenters for security researchers and practitioners, representing a novel method rather than incremental.
The paper tackles the limitation of trusted execution environments (TEEs) being confined to CPUs by proposing composite enclaves with a configurable hardware and software TCB, enabling access to multiple computing and IO resources, and demonstrates feasibility with a small TCB (2.5 KLoC) and low overhead (around 220 cycles for context switch).
The ever-rising computation demand is forcing the move from the CPU to heterogeneous specialized hardware, which is readily available across modern datacenters through disaggregated infrastructure. On the other hand, trusted execution environments (TEEs), one of the most promising recent developments in hardware security, can only protect code confined in the CPU, limiting TEEs' potential and applicability to a handful of applications. We observe that the TEEs' hardware trusted computing base (TCB) is fixed at design time, which in practice leads to using untrusted software to employ peripherals in TEEs. Based on this observation, we propose \emph{composite enclaves} with a configurable hardware and software TCB, allowing enclaves access to multiple computing and IO resources. Finally, we present two case studies of composite enclaves: i) an FPGA platform based on RISC-V Keystone connected to emulated peripherals and sensors, and ii) a large-scale accelerator. These case studies showcase a flexible but small TCB (2.5 KLoC for IO peripherals and drivers), with a low-performance overhead (only around 220 additional cycles for a context switch), thus demonstrating the feasibility of our approach and showing that it can work with a wide range of specialized hardware.