论文标题
建立和维护第三方图书馆供应链,以实现生产和安全的SGX Enclave Development
Building and Maintaining a Third-Party Library Supply Chain for Productive and Secure SGX Enclave Development
论文作者
论文摘要
大数据行业正面临着新的挑战,因为人们对隐私泄漏的担忧飙升。隐私漏洞事件的补救措施之一是在硬件辅助信任的执行环境(TEE)中封装了对敏感数据的计算。这种TEE驱动的软件称为安全飞地。安全飞地具有各种优势,以争夺保护隐私的计算解决方案。但是,与普通软件相比,飞地的构建更具挑战性。原因是TEE软件的开发必须遵循限制性编程模型,以有效利用硬件强制执行的强内存加密和隔离。这些限制条件非常适用于软件的所有第三方依赖关系。如果这些依赖关系不正式支持T恤硬件,则T恤开发人员必须花费更多的工程工作来移植它们。高开发和维护成本是反对在生产中采用基于TEE的隐私保护解决方案的主要障碍之一。在本文中,我们介绍了关于为TEE开发人员构建和不断维护第三方图书馆供应链的经验和成就。特别是,我们将大量Rust的第三方库放入Intel SGX,这是最成熟的值得信赖的计算平台之一。我们的供应链通过SGX特定的安全审核及时接受上游补丁。我们已经能够以合理的运营成本维护159个开源生锈库中的SGX端口。我们的工作可以有效地降低开发SGX飞地进行隐私数据处理和交换的工程成本。
The big data industry is facing new challenges as concerns about privacy leakage soar. One of the remedies to privacy breach incidents is to encapsulate computations over sensitive data within hardware-assisted Trusted Execution Environments (TEE). Such TEE-powered software is called secure enclaves. Secure enclaves hold various advantages against competing for privacy-preserving computation solutions. However, enclaves are much more challenging to build compared with ordinary software. The reason is that the development of TEE software must follow a restrictive programming model to make effective use of strong memory encryption and segregation enforced by hardware. These constraints transitively apply to all third-party dependencies of the software. If these dependencies do not officially support TEE hardware, TEE developers have to spend additional engineering effort in porting them. High development and maintenance cost is one of the major obstacles against adopting TEE-based privacy protection solutions in production. In this paper, we present our experience and achievements with regard to constructing and continuously maintaining a third-party library supply chain for TEE developers. In particular, we port a large collection of Rust third-party libraries into Intel SGX, one of the most mature trusted computing platforms. Our supply chain accepts upstream patches in a timely manner with SGX-specific security auditing. We have been able to maintain the SGX ports of 159 open-source Rust libraries with reasonable operational costs. Our work can effectively reduce the engineering cost of developing SGX enclaves for privacy-preserving data processing and exchange.