๐ก๏ธ Intel SGX Technology โ
Intelยฎ Software Guard Extensions (Intelยฎ SGX) is the first-generation TEE technology that enables Trusted Computing and Confidential Computing. On the iExec platform, SGX is the production-ready, widely-supported TEE technology that powers secure, privacy-preserving applications in the decentralized cloud.
Why SGX Matters for iExec โ
iExec has chosen SGX as its primary TEE technology because it provides the perfect balance of security, stability, and accessibility for decentralized computing:
๐ Decentralized Security โ
- Hardware-Level Protection: SGX provides hardware-level security guarantees regardless of who owns the worker hardware
- Trust in Untrusted Environments: Users can trust computation results even from unknown workers in the network
- Proof of Contribution: SGX enables verifiable proof that computations were executed correctly
๐ฐ Data Monetization Platform โ
- Protected Data Processing: Data owners can safely monetize their data without losing control
- Secure Computation: Sensitive data remains encrypted during processing
- Access Control: Fine-grained control over who can access and process data
๐ Global Computing Network โ
- Wide Worker Support: SGX is supported by the majority of iExec workers
- Reliable Execution: Production-ready technology with proven stability
- Cost-Effective: Standard pricing due to wide availability
What is Intel SGX? โ
Intelยฎ SGX is a technology that enables Trusted Computing and Confidential Computing. At its core, it relies on the creation of a special zone in the memory called an "enclave". This enclave can be considered as a vault, to which only the CPU can have access. Neither privileged access-levels such as root, nor the operating system itself is capable of inspecting the content of this region. The code, as well as the data inside the protected zone, is totally unreadable and unalterable from the outside. This guarantees non-disclosure of data as well as tamper-proof execution of the code.
An application's code can be separated into "trusted" and "untrusted" parts where sensitive data is manipulated inside the protected area.
SGX: The "Application-Level" Security โ
Intel SGX is like having a small, specialized safe inside your office for specific valuable items. It protects individual applications or parts of applications.
Key Characteristics โ
- Scope: Protects specific parts of your application
- Memory: Limited secure memory (like a small safe)
- Code Changes: Requires significant modifications to your application
- Use Case: Perfect for focused, lightweight applications
Analogy: SGX is like installing a small, specialized safe inside your office for specific valuable items.
Visual Representation โ
SGX Technology Details โ
How SGX Works โ
- Enclave Creation: SGX creates a secure memory region (enclave) that only the CPU can access
- Code Isolation: Sensitive code runs inside the enclave, isolated from the rest of the system
- Memory Encryption: All data in the enclave is automatically encrypted
- Integrity Protection: The enclave can prove it's running the correct, unmodified code
SGX Limitations โ
With native Intelยฎ SGX technology, the OS is not a part of the Trusted Computing Base (TCB), hence system calls and kernel services are not available from an Intelยฎ SGX enclave. This can be limiting as the application will not be able to use File System and sockets directly from the code running inside the enclave.
SGX with iExec and Scone โ
iExec has built a comprehensive SGX infrastructure that makes it easy for developers to create secure, privacy-preserving applications without deep SGX expertise.
iExec's SGX Infrastructure โ
iExec provides a complete SGX ecosystem that includes:
- ๐ Secret Management Service (SMS): Secure storage for encryption keys and secrets
- ๐ก๏ธ SGX Workers: Computing nodes with SGX hardware support
- ๐ Task Verification: Proof of contribution system that verifies SGX execution
- ๐ Blockchain Integration: Decentralized coordination and payment
- ๐ฆ Scone Framework: High-level development framework for SGX applications
Why iExec Uses Scone โ
To build Confidential Computing (TEE) applications with SGX, iExec uses the high-level Scone framework instead of requiring developers to manipulate the Intelยฎ SGX SDK directly.
Scone Framework Benefits โ
At a high-level, Scone protects the confidentiality and integrity of the data and the code without needing to modify or recompile the application. The Scone framework resolves the limitations of native SGX and reduces the burden of porting the application to Intelยฎ SGX.
How Scone Works โ
More precisely, Scone provides a C standard library interface to container processes. System calls are executed outside of the enclave, but they are shielded by transparently encrypting/decrypting application data. Files stored outside of the enclave are therefore encrypted, and network communication is protected by Transport Layer Security (TLS).
For a deeper understanding, you can have a look to the official Scone documentation.
iExec SGX Workflow โ
SGX Use Cases on iExec โ
Best For โ
- โ Production Applications: SGX is production-ready and stable on iExec
- โ Lightweight Applications: Perfect for focused, high-assurance modules
- โ Crypto Operations: Wallets, cryptographic key operations
- โ Small AI Models: Lightweight machine learning applications
- โ Maximum Compatibility: Widely supported by iExec workers
When to Use SGX โ
SGX is ideal for:
- โ Building production applications
- โ Need proven, stable technology
- โ Working with lightweight applications
- โ Require maximum worker availability
- โ Need focused security for specific application parts
What's Next? โ
Learn about the next generation:
- Intel TDX Technology - Next-generation VM-level TEE technology
- SGX vs TDX Comparison - Detailed comparison of both technologies
Ready to build with SGX? Check out the practical guides:
- Build & Deploy - Create your first SGX application
- Advanced SGX Development - Deep dive into SGX development