Inclavare Container开源项目及其远程证明框架介绍

Inclavare Container开源项目及其远程证明框架介绍

Inclavare Containers 是一套基于 Enclave 硬件技术将可信的程序运行在容器中的工具,其目的在于实现机密计算集群,保护用户的数据隐私。 Inclavare Containers从今年五月开源再到九月初 0.4.0 release 的发布,先后发布了 rune、 sgx-tools、 shimrune、 ra-tls 等组件,发布对应组件的 rpm 和 deb 包及对应源码, 发布 EnclaveRuntime PAL API 标准。其核心组件 rune 和 shim-rune 基于 runc 和 containerd-shimrunc-v2 改造,其中 rune 已经成为 OCI Runtime 的一种参考实现并兼容 runc,并配合 shim-rune 实现 k8s 机密计算集群。rune 通过 Enclave Runtime PAL API 与 Occlum、 graphene-sgx 等 LibOS 对接,与自研 Skeleton Enclave Runtime 对接,也可以跟任何采用 Enclave Runtime PAL API 的Enclave Runtime 对接。
远程证明是 Enclave 硬件技术的一种向用户证明其自身清白的手段,比如 Intel 的SGX 借助 IAS 服务完成远程。远程证明在 Inclavare Containers 中也非常重要, rune扩展 attest 命令实现 OCI Runtime 级的远程证明,并跟 shim-rune, Enclave Runtime等组件一起完成 k8s 机密计算集群的远程证明。 ra-tls 用来建立云上机群与云下用户之间的双向可信通道, shelter 为下线用户的工具,用来发起远程证明以及验证远程证明的结果。此外, Inclavare Containers 还提供 sgx Enclave 相关的工具 sgx-tools,用来生成 Enclave 的 token、 targetInfo、 quote 以及远程证明结果。