ARMv9刷屏 —— 号称十年最大变革,Realm机密计算技术有什么亮点?

简介: 让我们看下ARMv9机密计算相关的新特性Realm。

18995319-C045-4c30-8C21-54F1E882D264.png

ARMv9的新闻刷屏了。ARMv9号称十年以来最重大变革,因此让我们看下ARMv9中机密计算相关的新特性Realm。(注:本文是对Introducing the Confidential Compute Architecture的部分翻译和个人注解,本文图均来自anandtech.com网站。)


背景


在过去的几年里,我们看到安全问题和硬件安全漏洞已经成为了新闻热点。许多处理器侧信道漏洞,如幽灵、熔毁以及与它们有关的侧通道攻击,都表明有必要重新思考如何在处理器架构层面解决安全问题


Arm想要解决这个问题的方法是:通过引入Arm机密计算体系结构(Arm CCA),重新设计敏感应用程序的工作方式。


一句话亮点总结


Arm CCA基于Armv9 Realm Mangement Extension(RME,简称Realm),将敏感应用和OS隔离在Realm中;Realm比机密虚拟机更加通用,既支持机密虚拟机形态,也支持机密OS形态。

High Level设计


Arm CCA基于Armv9 Realm Mangement Extension,将敏感应用和OS隔离在Realm中:B5C3B26C-3D1E-43e2-B2EC-BB068DD411C6.png

从这张图可以总结出以下几个要点:

1.  Non-Secure World、Secure World和Realm之间是相互隔离的。

  • 现有材料中没有详细解释这种隔离是如何实现的,大概率还是基于硬件的地址空间隔离技术。
  • 对Realm的隔离要看两个方面:运行在Realm中的敏感应用也可能是租户部署的恶意应用,因此对Realm的隔离也是必要的,即双向隔离。


2.  Realm可以运行OS(简称Realm OS),也就是说Realm提供了高特权级的支持,可以运行EL1特权软件。

  • Realm OS的形态可以有多种:
  • 不一定非要是经过裁剪和安全加固过的Linux内核,也可以为Realm设计的TEE OS,或者由支持其他机密计算的OS技术实现演进过来额外支持Realm的LibOS(如Enarx、Occlum、Graphene等);但这种TEE OS不能是支持TrustZone的TEE OS,后面会讨论这个话题。
  • TEE OS目前的一种发展趋势是缩小TCB、减少Rich OS潜在的攻击面进而提升整体的安全性;但在是否需要提供良好的业务逻辑兼容性上存在分歧:

1) 一种方案是不考虑对业务的兼容性,以安全为先,可以适度牺牲性能和兼容性。   2)另一种方案还是重视对存量业务的兼容性,以兼容性为先,可以适度牺牲性能和安全性。


PS:Unikernel又有机会了!


3.  EL2运行Realm Manager,负责管理Realm的调度和资源分配。可以预见这部分会由Arm CCA firmware架构来支持(类似ATF,或直接在ATF中进行扩展来支持)。

  • 从目前的资料来看:Realm Manager是Arm新写的,其代码量大概是Hypervisor大小的十分之一。
  • Realm Manager和TDX中的SEAM Module很像:在处理器架构级为该功能模块提供了一个新的运行模式;同时该功能模块承担了Realm生命周期和资源管理的功能,系统中其他不可信的组件不能替代其功能和角色。


4. TrustZone对Realm也是不可信的。也就是说Realm不是像TrustZone那样只解决计算资

源隔离的问题,而是解决更进一步的敏感数据隔离的问题。


安全威胁模型


这张图说明了Realm的安全威胁模型,可以看出它具备典型的机密计算技术的特点:5469D76A-F6C6-414d-B1F8-7F0472589C5C.png

从这张图可以总结出以下几个要点:1. 这里的hardware manufacturer 指的是外设的硬件设备提供商,而不是处理器本身的硬件提供商(比如Arm或SoC厂商)。2. Realm Manager不属于Realm的一部分,但它是用户TCB的一部分。


用法


由于Realm具备运行完整OS的能力,所以看上去可类比TDX的trust domain以及SEV/CSV的机密虚拟机,但下面的用法中则揭示了Realm相比机密虚拟机形态更为通用的一面:DBB06C13-F6A8-4766-AC94-25CBB20AA2BC.pngEB3E4184-36AB-4a5e-9B15-9B34C4528895.png从这张图可以总结出以下几个要点:

1. 由于TrustZone中的TEE OS不是通用OS,而是结合TrustZone深度定制过的,因此无法将TEE OS直接加载到Realm中并运行,这也打破了原先认为Realm会基于TrustZone架构进行迭代的假设;但适配了OP-TEE的TA是可以运行在Realm中的,只要Realm OS能够支持OP-TEE的TA API。换句话说,这张图可能也暗示了Arm接下来会在Realm OS中提供对TA的支持,当然也可能这张图只是展示Realm的兼容性能力;此外,在Realm中运行Android应用也存在上述的可能性。


2. Realm Manager本质上充当了类似Hypervisor管理VM的角色,只不过Realm Manager管理的对象是Realm。

  • 当Realm运行VM的时候,可以认为把Hypervisor中涉及到Realm安全性的逻辑挪到了Realm Manager中,而把不涉及其安全性的部分保留在传统Hypervisor中。


3. Realm仅仅是专门为运行敏感应用而提供的硬件TEE,它的使用者可以将自己环境内的工作负载通过Realm Manager将敏感应用+OS一起加载到Realm中,甚至是将一个完整的虚拟机加载到Realm中,因此ealm不是机密虚拟机,而是泛用性更高的通用型机密计算运行环境底座。


综上所述,Realm技术不仅大幅度降低了敏感应用对信任的需求以及用户在适配Realm的成本,而且OS自身的安全性问题对Realm应用来说将变得非常透明(但Realm应用对外提供的服务以及Realm OS对外暴露的接口的安全性依旧需要重视)。此外,因为关键性应用能够安全地在任何支持CCA的系统中运行,而当今公司或企业往往需要使用具有各种安全合规的授权软件栈的专用设备才能实现这种安全性,因此这种技术也能降低用户在安全上所投入的成本。


slide中没有体现出来的要点


Realm中的应用能够attest Realm Manager以确保它是可信的。


内存加密。这个是机密计算的必备能力


目前的资料没有显示出Realm提供的这种通用运行能力是如何支持Realm与IO设备间的交互的。据说Confidential IO问题还没有在Realm 1.0中得到解决,也许会在下一代技术中解决。


后续


目前Arm仅仅提供了关于CCA如何运作的high level解释,有关该机制究竟如何运作的更多细节将在今年夏天晚些时候公布。(完)


翻译原文:Introducing the Confidential Compute Architecture

https://www.anandtech.com/show/16584/arm-announces-armv9-architecture/2 
IMG_2058.png

关于Inclavare Containers


Inclavare是Enclave一词的拉丁语词源,读音是 [ˈinklɑveə]。


Enclave 指的是一种受保护的执行环境,能为其中的敏感和机密数据提供基于密钥学算法的强安全隔离,阻止不可信的实体访问用户的数字资产。


Inclavare Containers是由阿里云与Intel联合共建共同研发的面向机密计算场景的开源容器运行时技术栈,同时支持异构节点的Enclave远程证明基础实施、Enclave池化以及多类型Enclave Runtime等特性,服务于机密Kubernetes集群和机密容器。


github:https://github.com/alibaba/inclavare-containers

主页:https://inclavare-containers.io/




加入龙蜥社群


加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】拉你入群;加入钉钉群:可扫码或搜钉钉群号(33311793)。欢迎开发者/用户加入龙蜥OpenAnolis社区交流,共同推进龙蜥社区的发展,一起打造一个活跃的、健康的开源操作系统生态!

DC58D974-13D1-4fde-A3B6-CEE7A50C71D4.png                1.jpeg

Inclavare Containers 技术讨论群                                 龙蜥社区钉钉群二维码



关于龙蜥社区


龙蜥社区是由企事业单位、高等院校、科研单位、非营利性组织、个人等按照自愿、平等、开源、协作的基础上组成的非盈利性开源社区。龙蜥社区成立于2020年9月,旨在构建一个开源、中立、开放的Linux上游发行版社区及创新平台。


短期目标是开发龙蜥操作系统(Anolis OS)作为CentOS替代版,重新构建一个兼容国际Linux主流厂商发行版。中长期目标是探索打造一个面向未来的操作系统,建立统一的开源操作系统生态,孵化创新开源项目,繁荣开源生态。


加入我们,一起打造面向未来的开源操作系统!

Https://openanolis.cn


相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
6月前
|
人工智能 安全 数据安全/隐私保护
叫好不叫座?Arm、英特尔、AMD 等 5 位技术大咖畅聊机密计算技术
机密计算作为一项新兴技术,为我们如何安全处理和计算敏感数据提供了新的视角和解决方案。
|
机器学习/深度学习 人工智能 运维
微软云强劲增长的背后,是全新的人工智能黑科技
微软云强劲增长的背后,是全新的人工智能黑科技
115 0
|
敏捷开发 弹性计算 运维
亚信数据新一代PaaS平台是如何炼成的?
  日前,亚信数据发布旗下多款PaaS产品,包括亚信分布式数据库ADB、容器云计算平台HPS、大数据云平台DCP。这三款产品在亚信内部历经了3年的研发投入和攻关,并在客户项目中得到了实践部署。随着这些系列产品的正式亮相,它们共同构建了亚信完整的PaaS平台解决方案,将亚信拥有的大数据、CRM(客户关系管理系统)、BOSS(业务运营支撑系统)以及众多核心能力逐渐服务化、组件化,由该平台统一承载。
409 0
|
安全 机器学习/深度学习 数据安全/隐私保护
顶尖产学研机构从“芯”做安全 业界首个机密计算SGX应用创意大赛落幕
11月19日,由阿里云、浙江大学网络空间安全学院、阿里巴巴-浙江大学前沿技术联合研究中心联合发起、Intel赞助支持的2019首届SGX应用创意大赛在2019年IEEE IDSC会议上圆满落幕。这是业界首个基于芯片级加密技术的应用创意大赛,旨在推动基于芯片级加密技术的广泛应用和发展。
1560 0
|
分布式计算 Hadoop 测试技术
惠普、英特尔和雅虎共建全球云计算研究测试床
本文讲的是惠普、英特尔和雅虎共建全球云计算研究测试床,惠普、英特尔和雅虎公司今天宣布建立一个全球的、多个数据中心的、开源测试床用于推动云计算研究和教学。通过消除资金和后勤方面的障碍,这个全球计划将促进行业、科研机构和政府部门间的开放协作 ,对于互联网范围的数据密集型计算进行研究。
1667 0

热门文章

最新文章

下一篇
无影云桌面