Binary Compatibility For SGX Enclaves

09/02/2020
by   Shweta Shinde, et al.
0

Enclaves, such as those enabled by Intel SGX, offer a powerful hardware isolation primitive for application partitioning. To become universally usable on future commodity OSes, enclave designs should offer compatibility with existing software. In this paper, we draw attention to 5 design decisions in SGX that create incompatibility with existing software. These represent concrete starting points, we hope, for improvements in future TEEs. Further, while many prior works have offered partial forms of compatibility, we present the first attempt to offer binary compatibility with existing software on SGX. We present Ratel, a system that enables a dynamic binary translation engine inside SGX enclaves on Linux. Through the lens of Ratel, we expose the fundamental trade-offs between performance and complete mediation on the OS-enclave interface, which are rooted in the aforementioned 5 SGX design restrictions. We report on an extensive evaluation of Ratel on over 200 programs, including micro-benchmarks and real applications such as Linux utilities.

READ FULL TEXT
research
03/29/2021

Dynamic Binary Translation for SGX Enclaves

Enclaves, such as those enabled by Intel SGX, offer a hardware primitive...
research
12/06/2022

Binary-level Software Compatibility Tool Agreement

Application Binary Interface (ABI) compatibility is essential for system...
research
09/02/2023

Data Repurposing through Compatibility: A Computational Perspective

Reuse of data in new contexts beyond the purposes for which it was origi...
research
01/21/2020

Occlum: Secure and Efficient Multitasking Inside a Single Enclave of Intel SGX

Intel Software Guard Extensions (SGX) enables user-level code to create ...
research
05/15/2018

SGX-Aware Container Orchestration for Heterogeneous Clusters

Containers are becoming the de facto standard to package and deploy appl...
research
09/20/2023

Software Compartmentalization Trade-Offs with Hardware Capabilities

Compartmentalization is a form of defensive software design in which an ...

Please sign up or login with your details

Forgot password? Click here to reset