蚂蚁集团宣布云原生大规模集群化机密计算框架 KubeTEE 开源

蚂蚁集团宣布云原生大规模集群化机密计算框架 KubeTEE 开源

近日蚂蚁集团在上海外滩大会可信原生技术论坛上宣布开源 KubeTEE。编程

KubeTEE 是一个云原生大规模集群化机密计算框架,旨在解决在云原生环境中 TEE 可信执行环境技术特有的从开发、部署到运维总体流程中的相关问题。这是业界首个开源的 TEE 大规模集群总体解决方案。安全

背景:

2018年,蚂蚁集团开始全面转型云原生架构。2020 年,该集团又提出了“可信原生(Trust-Native)”的理念,将可信任性渗透到云原生架构的各层之中,打造全栈可信赖的云计算基础设施。网络

而做为保护应用的运行安全的技术,机密计算理念以及可信执行环境TEE (Trusted Execution Environment) 也被蚂蚁引入并积极实践,造成了 SOFAEnclave 机密计算技术栈。架构

SOFAEnclave 包括三大组件:框架

  • Occlum LibOS:解决业务开发过程当中的问题,如传统TEE应用开发须要切分重构,依赖SDK特定编程语言等问题;
  • HyperEnclave:解决TEE部署环境问题,如硬件TEE不普及、软硬件TEE使用一致性等问题;
  • KubeTEE:解决TEE集群问题,包括云原生环境特有的从开发、部署到运维总体流程中的相关问题。

此前,Occlum LibOS 已经开源,并捐献给了 CCC(Confidential Computing Consortium)机密计算联盟。CCC 机密计算联盟隶属于 Linux 基金会,由业界多家科技巨头发起,致力于保护计算数据安全。Occlum 捐献给 CCC,则将成为 CCC 社区首个中国发起的开源项目。less

提到KUbeTEE的话,首先要了TEE表明什么?运维

随着云计算的快速发展,愈来愈多的关键性服务和高价值数据被迁移到了云端。云安全也所以成为学术界和工业界关注的一个焦点。编程语言

近年来,云安全领域最重要的一项技术进展名为机密计算(Confidential Computing)。机密计算填补了当前云安全的一项空白——使用中数据(Data-in-use)的加密。过去通行的作法是对数据在存储中(好比硬盘)和传输中(好比网络)加密,而在使用中(好比内存)解密,以便处理。而机密计算能够保护使用中数据的机密性和完整性。ide

目前,多家云计算巨头都在不约而同地推广这项技术:微软已于 2017 年 7 月宣布开始接受 Azure 机密计算的早期试用申请;IBM 于 2017 年 12 月宣布 IBM 云数据保护(Cloud Data Guard)的预览版;谷歌也于 2018 年 5 月开源了名为 Asylo 的机密计算框架。微服务

那么,机密计算到底是如何实现的呢?

实际上,上述全部云计算巨头在实现机密计算时都离不开一种称为“可信执行环境(TEE)”的技术。

顾名思义,TEE 提供一种与不可信环境隔离的安全计算环境,正是这种隔离和可信验证机制使得机密计算成为可能。

TEE 通常是直接基于硬件实现的,好比 Intel SGX,AMD SEV,ARM TrustZone,以及 RISC-V Keystone 等;基于虚拟化技术也能够构造 TEE,好比微软的 VSM,Intel 的 Trusty for iKGT & ACRN,但尚不能匹敌硬件 TEE 的安全性。

其中,Intel 软件防御拓展(Software Guard Extensions,简称 SGX)是目前商用 CPU 中最为先进的 TEE 实现,它提供了一套新的指令集使得用户能够定义称为 Enclave 的安全内存区域。CPU 保证 Enclave 与外界隔离,从而保护其中的代码和数据的机密性、完整性和可验证性。不一样于以前的 TEE 实现,好比 ARM TrustZone,SGX 每一个 APP 均可以有本身独立的 TEE,甚至能够建立多个 TEE,而 TrustZone 是整个系统有一个 TEE;这里也省去了向设备厂商申请将 TA 装入 TEE 的过程。因为 SGX 的先进性,目前云端机密计算领域甚至已公认用 Enclave 这个词来指代 TEE。

KubeTEE 则是云原生场景下如何使用 TEE 技术的一套总体解决方案,包括多个框架、工具和微服务的集合。其结合了 Kubernetes 和 TEE 两个重要技术方向,解决可信应用从单点到容器化集群实施过程当中的相关问题。

KubeTEE 的目标之一是提供 Serverless 形态的机密计算服务,好比 Trusted FaaS,让业务方只须要实现业务核心逻辑,就能够简单地将之提交到 TEE 环境中运行,而不用重复整套的业务服务开发、部署和运维的流程。

KubeTEE:金融级云原生的机密计算集群

针对 Enclave 集群化方面的问题,蚂蚁集团去年就开始思考如何能更高效和简洁的使用 TEE 资源提供机密计算服务,他们的解决方法是 KubeTEE——结合云原生,提供机密计算集群服务。

一方面避免了业务用户重复进行基础设施建设,另外一方面用户注册帐号便可使用机密计算集群服务,大大下降了机密计算门槛,提升了易用性和利用率。KubeTEE 为了更高效的使用物理资源,基于 k8s + container 更优雅地部署和管理机密计算镜像和 EPC 资源。基于 k8s 的容器调度能力,KubeTEE 能够快速实现机密计算服务资源的横向扩缩容。归纳来讲,他们但愿以一种更加云原生的方式来使用 Enclave 和机密计算集群资源。

提供基于 Enclave Container 的业务部署能力,基础设施运维和业务无感知升级等能力;

提供 Serverless 机密计算服务,基于通用的机密计算资源池支持业务服务;

基于通用的机密计算组件、中间件服务和研发流程结合提供平台化的业务开发能力;

image

实现 Serverless 机密计算集群的过程,咱们一方面提供最终态的机密计算服务,同时将过程当中积累的组件抽象化为可复用模块,应对不一样业务的定制化需求,提高机密计算业务的 Enclave 开发效率。


蚂蚁集团方面表示,目前,虽然 KubeTEE 已经能够较大程度帮助业务方下降 TEE 开发复杂度,但还有很大的进步空间。KubeTEE 下一阶段将更多关注云原生场景和机密计算的结合,持续贡献更多组件以及通用服务,让 TEE 的使用更高效、更简单、更云原生化。也 KubeTEE 能和业界携手,共建更完整的云端安全计算生态。

image.png