1. Intel SGX(Software Guard Extensions)的 enclave,用户态加密内存区域(MEE,Memory Encryption Engine)的工程语义如何?
请解释 Intel SGX 的 enclave 概念,说明其用户态加密内存区域如何由 MEE(Memory Encryption Engine)保护,及其工程语义?
- enclave 的用户态受保护内存
- MEE 硬件加密
- 可信边界与隔离
SGX 的 enclave 是受硬件保护的用户态内存区域,代码和数据在其中执行与存储,即使操作系统或 hypervisor 被攻破也无法读写 enclave 内容。Enclave 内存由 MEE(Memory Encryption Engine)在内存总线上加密,防止物理内存攻击(cold boot、DMA 攻击)与恶意软件读取。Enclave 建立了新的信任边界:CPU 是信任根,应用代码与数据在 enclave 内保持机密性和完整性,OS 被视为不可信。工程语义上,SGX 让云租户在自己的程序内隔离敏感数据,如密钥、算法参数,即使云平台被攻破也保护数据。
"用户态加密内存 + 硬件 MEE"使 SGX 在不受信任的操作系统之上提供机密计算能力,是可信执行环境(TEE)的代表。