共计 2807 个字符,预计需要花费 8 分钟才能阅读完成。
文 / 周亮,云原生秘密计算 SIG 核心成员。
在云原生场景下,基于 HW-TEE(如 Intel SGX, Intel TDX 和 AMD SEV)的秘密容器技术(如 Inclavare Containers 秘密容器和 Kata CC 秘密容器)能够为用户在应用(计算)过程中的敏感数据提供了机密性和完整性的爱护。
然而在云环境中,仍旧存在如下的问题:
怎么证实用户的秘密容器的确运行在云上实在 HW-TEE 环境中?
怎么证实运行在云上 HW-TEE 环境中的程序或者容器内容是合乎预期的或者没有被篡改?
更进一步,如果须要在云上 HW-TEE 环境里启动一个加密容器,如何在启动过程中获取容器的解密密钥?
Inclavare Containers 现已是龙蜥社区云原生秘密计算 SIG 的我的项目之一。而 Inclavare Containers 的组件 Enclave Attestation Architecture (EAA) 正是为解决这些简单的问题而生的。其设计指标是在解决上述问题的根底上,提供一个反对不同类型秘密容器和 HW-TEE 环境的通用近程证实架构。
EAA 设计
RATS 参考架构
秘密计算联盟定义了 RATS 参考架构,并倡议所有近程证实服务都应该遵循 RATS 的参考架构,RATS 架构如下:
EAA 架构
因而 EAA 的架构设计遵循了 RATS 参考架构,EAA 架构如下:
其次要组件和性能:
Attestation Agent(Attester):运行在 HW-TEE 中的组件。作用是获取 HW-TEE 中运行程序的度量值信息,该度量值信息由 HW-TEE 进行签名。
Chip Manufacturer Specific Attestation Service(Endorser):运行在私有网络中,由芯片厂商提供的服务。作用是验证度量值信息的签名,以确定度量值信息的确是由实在 HW-TEE 生成的。
Verdict & Reproducible Build Infrastructure(Reference Value Provider):运行在用户可信环境中的服务。作用是生成 HW-TEE 中运行程序的度量值的参考值,以断定在 HW-TEE 环境中的运行程序是合乎预期的或者程序是没有被篡改过的。
Verdictd(Relying Party + Relying Party Owner + Verifier Owner):运行在用户可信侧环境中的服务。职责是调用 Chip Manufacturer Specific Attestation Service 和 Verdict & Reproducible Build Infrastructure 查看度量值信息的签名和其内容,以实现整个近程证实流程。
KMS:运行在用户可信侧环境或者私有网络中的密钥治理服务。作用是进行密钥的治理。
EAA 工作原理
1、当须要进行近程证实时,运行在云上 HW-TEE 环境中的 Attestation Agent 获取以后 HW-TEE 运行环境的度量值信息并发送给 Verdictd 服务进行相干验证。
2、当 Verdictd 收到度量值信息后会把它发送给 Chip Manufacturer Specific Attestation Service 来查看度量值信息的签名,以验证生成度量值信息的 HW-TEE 是一个实在的 HW-TEE。目标是避免黑客伪造一个 TEE 环境来骗取用户的信赖。
3、如果度量值信息的签名验证胜利,Verdictd 会查看度量值的具体信息。目标是确定云上 HW-TEE 环境中的运行程序是合乎预期的或者程序是没有被篡改过的。
4、如果上述查看都胜利,则近程证实流程曾经胜利实现,用户能够确定云上 HW-TEE 环境是一个实在的 HW-TEE,并且运行在 HW-TEE 环境中的程序满足:
是用户本人部署的程序,并且该程序没有被黑客篡改。
是第三方部署的程序,但这些程序是合乎预期的,比方这些程序是通过代码审核并确定是没有破绽的。
5、近程证实流程曾经胜利,所以 Attestation Agent 和 Verdictd 之间能够建设一个平安并可信的通道。Attestation Agent 能够发送申请给 Verdictd 以获取一些秘密数据,比方加密容器镜像的解密密钥。
奉献
EAA 致力于通过和开源社区奉献和单干以实现落地实际能力,它作为首个反对 Intel TDX 近程证实的 Key Broker Service(KBS),是 confidential-containers 首个反对 TDX HW-TEE 的 E2E demo 的 KBS 服务,并胜利地实现了 confidential-containers V0 阶段 E2E Demo 要害节点。
完结
EAA 填补了基于 HW-TEE 的秘密容器在云原生场景下利用的最初一环,为秘密容器在云环境中的平安部署和启动提供了必要的根底。
目前 EAA 作为 Inclavare Containers(CNCF 我的项目)的子模块,反对的 HW-TEE 环境包含 Intel SGX 和 Intel TDX,反对的秘密容器包含 Inclavare Containers 和 Kata CC。将来,EAA 将继续演进,以反对新的不同的秘密容器计划,并反对新的 HW-TEE 环境,让 EAA 成为秘密容器畛域内真正的通用近程证实架构。
网址链接:
Inclavare Containers:
https://github.com/alibaba/in…
confidential-containers:
https://github.com/confidenti…
龙蜥社区 SIG 地址:
https://openanolis.cn/sig/coco
Demo 视频:
https://www.youtube.com/watch…
—— 完 ——
退出龙蜥社群
退出微信群:增加社区助理 - 龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】拉你入群;退出钉钉群:扫描下方钉钉群二维码。欢送开发者 / 用户退出龙蜥社区(OpenAnolis)交换,独特推动龙蜥社区的倒退,一起打造一个沉闷的、衰弱的开源操作系统生态!
对于龙蜥社区
龙蜥社区 (OpenAnolis) 是由企事业单位、高等院校、科研单位、非营利性组织、集体等依照被迫、平等、开源、合作的根底上组成的非盈利性开源社区。龙蜥社区成立于 2020 年 9 月,旨在构建一个开源、中立、凋谢的 Linux 上游发行版社区及翻新平台。
短期指标是开发龙蜥操作系统 (Anolis OS) 作为 CentOS 代替版,从新构建一个兼容国内 Linux 支流厂商发行版。中长期指标是摸索打造一个面向未来的操作系统,建设对立的开源操作系统生态,孵化翻新开源我的项目,凋敝开源生态。
龙蜥 OS 8.4 已公布,反对 x86_64、ARM64、LoongArch 架构,欠缺适配 Intel、飞腾、海光、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密反对。
欢送下载:
https://openanolis.cn/download
退出咱们,一起打造面向未来的开源操作系统!
https://openanolis.cn