一文解读机密容器的崛起和发展

news2024/10/7 16:20:13

在 2022 云栖大会龙蜥峰会云原生专场上,来自阿里云操作系统技术专家冯世舫和Intel 系统软件工程部高级研发经理朱江云分享了《机密容器的崛起和发展》技术演讲,以下为本次演讲内容:

机密容器是 CNCF 的 一个 Sandbox 项目,用于解决云原生场景下的数据安全问题,满足数据合规、数据隐私保护、算法和模型等创新 IP 保护,数据可用但是不可见等使用需求,以及解决云厂商的信任依赖问题。

机密容器具备以下几个特性:

1. 安全性。机密容器基于硬件可信执行环境来保护容器中数据安全,云厂商以及具备高权限的第三方均无法直接窃取和篡改容器中的数据。

2. 易用性。用户应用无需进行任何改造,即可从传统容器环境中迁移到机密容器环境中。

3. 能够解决租户和云厂商之间的信任依赖问题。租户数据对于云厂商而言不再透明。

4. 可自证性。用户可以通过远程证明等手段证实当前使用的容器环境是真实可信的。

机密容器的安全性很大程度上依赖于硬件的可信执行环境,基于硬件实现对于运行态数据机密性、完整性和安全性的保护。

近年来很多硬件厂商也推出了自己的 TEE 技术解决方案,比如英特尔® SGX 和 TDX 等,这意味着我们可以基于多种硬件平台构建机密容器技术。

龙蜥社区理事单位之一的阿里云是机密容器(Confidential Containers)项目的核心参与者,在参与开源项目开发的同时,也一直在推动机密容器的商用解决方案,目前已经完成了两种机密容器的解决方案构建:

  • 一种为 POD 级机密容器,指将容器 POD 中的内容放到 TEE 中进行保护。
  • 一种为进程级机密容器,指将运行有敏感业务的容器进程放到 TEE 中进行保护。

在使用 CPU TEE 保护运行态数据安全的同时,我们也结合镜像安全、存储安全,远程认证、网络安全等一系列安全技术,为用户提供从应用部署到执行的全链路的安全保证。

同时,我们将机密容器引入到龙蜥社区,基于龙蜥开源生态构建开源的、开箱即用的解决方案。目前我们已经完成了 ANCK、KVM、Rund 安全容器等组件对于机密容器的适配工作。构建开源解决方案,是希望能够借助开源社区与合作伙伴达成更便捷深入的合作,为机密容器寻找更多落地场景。

英特尔和阿里云都充分意识到,除了关注基础软件之外,为了促进机密容器的技术发展和普及,应用和生态也是非常关键的一环。机密计算的核心价值和能力在于能够对于高价值业务或敏感数据提供保护,BigDL PPML 就是这样一个典型应用。

BigDL 是英特尔开源的一款人工智能解决方案平台,能够方便数据科学家和数据工程师便捷地开发出一套端到端的分布式人工智能的应用。另外,BigDL 特别针对机密计算推出了 PPML (隐私保护机器学习),能够对分布式人工智能应用实现端到端的全链路保护。

PPML 架构如上图所示。最底层在 K8s 集群中提供的英特尔® TDX 和英特尔® SGX 可信执行环境。再通过一系列软硬件底层安全技术加持,使得用户能够在不暴露隐私数据的前提下,使用标准的人工智能和大数据处理软件比如 Apache Spark、 Apache Flink、TensorFlow、PyTorch 等熟悉的工具开发自己的应用。

在此之上,PPML 还提供了 Orca 和 DLlib 两个分布式流水线。Orca 是在 AI 框架 API 之上,增强了分布式大数据的处理能力,而 DLlib 则能够帮助程序员将分布式深度学习应用转化成 Spark 应用。另外,BigDL 还提供了可信大数据分析、可信机器学习、深度学习以及联邦学习应用。

如上图所示,BigDL PPML 基于可信的 Kubernetes 集群环境,通过机密容器技术能够构建出基于 TDX 的分布式可执行环境,从而确保业务、数据和模型在使用和计算过程中的安全性,包括不可见以及不可更改性。

从数据流角度,所有数据均以加密方式存储在数据湖和数据仓库中。BigDL PPML 加载这些机密数据,通过远程证明以及密钥管理系统获取数据密钥,置于可信执行环境中进行解密,再使用大数据和人工智能的计算框架, 对数据进行分布式预处理,模型训练以及模型推理等。最后,再把最终结果、数据或者模型,以安全或加密方式写回到分布式存储中。另外数据在节点之间, 容器之间的数据均以 TLS 方式进行传输,从而做到全链路的隐私保护和数据安全。

使用 TDX 机密容器运行 BigDL PPML workload 只需简单两步

首先,构建 PPML 的镜像并对其进行加密,然后把加密后的镜像推送到镜像仓库之中。

其次,在 Kubernetes 中部署 PPML workload ,开发者只需在标准 YAML 文件中指定所需机密容器运行时以及配置好的高性能存储卷,然后使用标准 Kubernetes 命令拉起即可。

如果更深入一点看,Kubernetes 将 workload 调度到具有运行机密容器能力的目标主机:

首先,主机上的机密容器运行时启动 TDX TEE。

其次,在 TDX 可信执行环境里,执行远程证明并获取验证/解密容器镜像所需的密钥,镜像服务下载容器镜像,使用密钥验证及解密容器镜像;在数据方面,用户使用标准的 K8s CSI driver 比如 open-local 为容器挂载高性能本地 LVM 卷,机密容器会自动进行透明的加密存储来保护用户输入输出数据。

最后,启动 BigDL PPML workload 相关容器,一个 BigDL PPML Driver 和多个 Worker 以分布式的方式运行于 K8s 集群之上,这样可以基于 TDX 进行的可信的云原生大数据分析和人工智能应用了。

英特尔和阿里云一直保持着紧密合作,两家都是 CoCo 上游社区的发起人,共同定义、设计和实现了 CoCo 软件栈的诸多关键特性,比如 TEE 内镜像下载,镜像的验签和解密,可信临时存储和可度量运行时环境,所有这一切都确保了 CoCo 这个项目的强安全属性。

另外,我们在龙蜥社区也有紧密的合作,包括共同实现了基于 TDX 的机密容器端到端的解决方案,包括远程证明以及参考应用。又比如我们选择了龙蜥社区的 open-local driver ,第一个支持了可信存储,一个支持了 kata 的 directvolume 新特性等等。欢迎感兴趣的各位参与到云原生机密计算 SIG(Special Interest Group )中来,一起推动云原生场景下的机密计算技术的发展。

相关链接地址:

CNCC SIG 地址:https://openanolis.cn/sig/coco

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/86166.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第一章 linux的发展

第一章 linux的发展一、操作系统的出现二、linux的出现三、linux的发展一、操作系统的出现 大部分先进产品的出现必定是为了军事服务的,起初的大型计算机也同样是为了军事服务的,而操作计算机的人也不是程序员,而是科学家。二战时期&#xf…

DVWA靶场中SQL注入

DVWA靶场中SQL注入1.DVWA靶场中SQL注入1.1.SQL Injection1.1.1.Low级别1.1.2.Medium级别1.1.3.High级别1.2.SQL Injection(Blind)1.2.1.方式1.2.2.Low级别1.2.3.Medium级别1.2.4.High级别1.DVWA靶场中SQL注入 1.1.SQL Injection 1.1.1.Low级别 1)判断注入类型当输…

高中数理化杂志高中数理化杂志社高中数理化编辑部2022年第21期目录

高考全关注《高中数理化》投稿:cn7kantougao163.com 直线与圆的方程高考热点赏析 廖永福; 1-4 一道课本例题到一道高考试题的衍变之路 高磊; 4-8 圆的多种定义形式在解题中的应用 李光彬;邵建凤; 9-10 从2021年全国新高考Ⅰ卷第21题说起 王菊;张琥;…

碳交易机制下考虑需求响应的综合能源系统优化运行(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

接口测试(五)—— PyMySQL增删改查、数据库工具类封装

目录 数据库操作应用场景 一、PyMySQL操作数据库 1、安装PyMySQL 2、PyMySQL操作步骤 3、事务的概念 4、PyMySQL连接数据库 4.1 建立连接方法 4.2 入门案例 5、PyMySQL操作数据库 5.1 SQL 语法 5.2 数据库查询 5.3 案例(查询) 5.4 数据库UI…

代码随想录训练营第七天

专题:哈希表 题目:四数相加 题目简单:把四个数组分成两队,然后用map,保存前两个数组的元素之和,(key,val)key保存的是前两个数组的元素之和的数值,val保存的是数值对应…

PDF设置密码保护的两种方法

PDF文件可以根据需要,设置两种密码来保护文件。 需要保护文件内容,不想PDF被随意打开,我们可以设置打开密码,这样只有输入正确的密码才能打开文件。 在编辑器中打开PDF后,找到菜单中【保护】选项下的【密码加密】&am…

SpringCloud01

1.认识微服务 随着互联网行业的发展,对服务的要求也越来越高,服务架构也从单体架构逐渐演变为现在流行的微服务架构。这些架构之间有怎样的差别呢? 1.0.学习目标 了解微服务架构的优缺点 1.1.单体架构 单体架构:将业务的所有功能集…

33-98-spark-核心编程-RDD算子和任务阶段等

33-spark-核心编程-RDD: 1、RDD的创建,4中方式。分别是从内存中创建,从文件中创建,从其他RDD创建和new RDD,后两者不常用。 创建:big-data-study\Spark-demo\src\main\java\spark\core\com\zh\rdd\builde…

PTA-基础编程题目集(函数题)

个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【[PTA刷题训练营]】 目录6-1 简单输出整数6-2 多项式求值(重点掌握)6-3 简单求和6-4 求自定类型元素的平均6-5 求…

医院陪诊小程序怎么开发-医院陪诊小程序源码功能

目前医院陪诊新型行业已经占据了很大的市场所在,我们去医院看病找医生挂号帮忙取药有时候去外地人生地不熟的 自己转半天摸索不过来浪费时间 而且有时候一个人需要陪同比较放心,所以呢衍生出来了 热门的陪诊师 如何开发? 开发无非就是几种 …

如何为 Longhorn 扩展对象存储能力

作者: 王海龙,Rancher 中国社区技术经理,Linux Foundation APAC Evangelist,负责 Rancher 中国技术社区的维护和运营。拥有 8 年的云计算领域经验,经历了 OpenStack 到 Kubernetes 的技术变革,无论底层操作…

软件包管理器RPM与yum

1、RPM安装软件包 安装单个rpm软件包 下载JDK8u221的rpm软件包 链接:https://pan.baidu.com/s/1fYKNNM02GBh-cOUuajkBIg 提取码:yg53 上传JDK8u221的rpm软件包到虚拟机/opt目录 命令:rpm -ivh jdk-8u221-linux-x64.rpm 查看JDK版本 命令&a…

C语言split分割字符串

C语言split分割字符串。 //以下解法的前提是,先把所有环变成1.无环路,2.一个环没有扣住3个及以上的其他环 voidmain(){ intarray[16]{0}; //init,array[1]xxx;根据输入初始化数组,如1-2,则,array[1]2,... intHash…

在线人事管理系统

开发工具(eclipse/idea/vscode等):idea 数据库(sqlite/mysql/sqlserver等):mysql 功能模块(请用文字描述,至少200字):本系统按功能分为以下几个模块: “简易云”是这个系统的名字 (1)登录页面:实…

【HMS Core】华为统一扫码服务ScanKit如何获取具体条码的类型?

1、问题描述 项目中接入了华为的统一扫码服务SDK,识别过程正常,但是目前有个需求,需要在扫码完成之后根据条码的具体类型处理接下来的业务。 问题是:识别完条形码后,如何拿到具体的条形码和二维码类型,比…

从零搭建本地pypi镜像源1:快速体验

前言: 许多公司,出于数据安全与知识产权的原因,在公司内部搭建局域网进行算法开发。配置一个本地的pypi镜像源对工程开发十分重要。搭建本地pypi镜像源的工具有多种,本文主要介绍pip2pi方法。 第一步:新建项目&#…

间接采购品类多,机械制造企业如何破局制胜优化间采管理?

受贸易政策和能源结构转型等宏观因素的叠加影响,当前机械制造业的市场环境正在迅速变化。过去几十年来,全球经济的有利形势迅速逆转,复杂的国际形势也影响了区域乃至全球贸易平衡。在国内,疫情频发、产业升级、能源转型、“双碳”…

10个提高生产力的 Linux 命令与技巧,用完直接起飞

文章目录一、前言二、使用tab键进行补全2.1 使用Tab键补全命令2.2 使用Tab键补全路径2.3 使用Tab键补全参数三、切换回上一个工作目录四、返回用户主目录五、搜索您使用过的命令六、移至行首或行尾七、快速删除八、使用 less读取文件九、格式化输出结语一、前言 在本文中&…

多数据源解决分布式事务

环境:ideaspringboot2.x 场景:调用addUser方法执行对两个数据库的表操作,如果方法出现异常就回滚 user数据库中的users表 order数据库中的order_number表 将各自的事务管理器改为统一事务管理器即可 第一步pom文件配置jta atomikos 依赖 &l…