购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 机密计算技术演进

2.2.1 机密计算的定义

机密计算是隐私计算的技术之一,其核心思想是在一个不完全可信的计算环境中,借助硬件构建一个可信执行环境来保护数据处理过程的安全。在传统的计算模式中,数据在处理和运算阶段通常以明文的形式暂存于计算机的计算单元或内存单元中。在不可信的计算环境中,如云计算场景,这些数据容易被未经授权的软件系统或管理员窃取或篡改。可信执行环境构建了一个与外界软件和硬件系统隔离的计算环境,确保只有经过严格授权的软件系统能够访问位于可信执行环境中的数据,大大降低了数据在处理阶段被窃取或篡改的风险。

根据机密计算联盟的定义,机密计算场景中定义的可信执行环境需要满足以下3个基本的安全要求。

●数据机密性:未授权的软件或实体不能访问可信执行环境中的数据。

●数据完整性:未授权的软件或实体不能添加、删除或者变更可信执行环境中的数据。

●程序完整性:未授权的软件或实体不能添加、删除或者变更可信执行环境中的程序。

特定于云计算环境,未授权的实体可以是云平台上运行的其他租户程序、主机操作系统、虚拟机控制器、系统管理员和云服务提供商等。机密计算不仅需要保证在可信执行环境中处理的数据处于机密性保护之下,也需要确保在数据上执行的操作和计算是安全可信的。

当然,机密计算中定义的可信执行环境并不局限于处理器中对数据的处理和访问过程,也包含计算系统中需要对用户数据进行处理的其他环节,如机器学习及人工智能中的异构加速器处理数据的过程,即任何使用和处理数据的阶段。

2.2.2 发展历程及现状

机密计算的发展可以追溯到可信计算,可信计算和机密计算既有紧密联系又有区别。可信计算是一种计算模式,强调计算系统从硬件到软件各层面的可信性,通过建立信任根,利用可信平台模块(Trusted Platform Module,TPM)等硬件设备,为系统提供可信赖的基础,确保系统按照预期的方式运行,防止恶意软件或非法操作的干扰。机密计算主要依赖硬件级的加密和隔离技术,在处理器内部,通过特殊的指令集和内存管理机制,创建出可信执行环境。在这个环境中,数据的加密和解密由硬件自动完成,从而保证数据在处理过程中的安全性。

如图2-2所示,可信计算、可信执行环境,以及机密计算构成了一条持续演进和发展的技术路径。可信计算中发展起来的硬件可信任根、程序和环境的可信度量等技术也已经成为机密计算的可信执行环境构建的信任基础。

img

图2-2 可信计算与机密计算的演进

1.可信计算

可信计算(Trusted Computing)是可信计算组织(Trusted Computing Group,TCG)推动和开发的技术。其兴起和发展最早可以追溯到20世纪90年代中期,当时,一些计算机厂商开始提出可信计算的解决方案,基于硬件密码技术构建平台的可信任根、安全存储及信任链条机制。后来,这些方案逐渐被IT产业界接受并最终形成了今天的可信计算组织及其可信技术的基础规范。

今天,在客户机和服务器端被广泛使用的可信平台模块技术就是可信计算组织定义的技术规范,该技术将含有密码运算和存储的组件封装成一个片上系统,并具备物理安全机制以防止被非法篡改。该技术常用于对系统完整性的度量。在系统启动过程中,它测量并记录加载启动代码的安全特征,并可以作为启动或执行环境是否安全的证据。

2.可信执行技术

基于可信计算逐渐发展出可信执行技术,如英特尔的TXT(Trusted Execution Technology),这项技术从21世纪初开始在英特尔个人计算机处理器上提供支持。英特尔的TXT技术通过特定硬件和固件,利用启动过程的层层度量,构建出一个根植于处理器及硬件平台的信任链,该信任链可以帮助用户度量待加载执行环境的完整性,并构建出一个可信的程序执行环境。

ARM的Trust Zone技术也在同一时期出现,该技术提供了在片上系统构建安全执行环境的能力。通过特定的执行权限模式,Trust Zone可以在同一个片上系统(SoC)中创建两个并行的隔离软件环境,一个运行主操作系统及用户软件,另外一个运行具备一定安全等级的可信操作环境及软件栈,保证了即使设备中的主操作系统环境不完全可信,用户依然可以利用另一个受保护的安全环境运行安全敏感的程序和数据。

这一阶段发展起来的技术能够构建一个程序可信的执行环境,但尚无法实现严格意义上的对数据处理阶段的机密保护。尽管Trust Zone与TXT都实现了与外部软件环境之间访问权限的隔离,但它们并不能支持数据在内存中的机密性隔离,换句话说,它们无法满足机密计算联盟对机密计算的关键需求。

3.机密计算

英特尔于2015年正式发布支持英特尔的软件保护扩展(Software Guard Extension,SGX)技术的处理器,SGX能够为用户程序在内存地址空间中构建加密保护的可信执行环境。SGX通过严格的访问控制机制以及集成在内存控制器中的加密引擎,实现了对程序及数据的机密性、完整性保护。即使是虚拟机监控器(Hypervisor)、系统固件、操作系统等也无法随意访问位于SGX保护区域中的程序和数据,确保了数据处理过程的安全性。

英特尔的SGX可以算作严格意义上满足机密计算需求的硬件可信执行环境技术,它实现了对数据机密性、完整性以及程序完整性的保护。从SGX技术诞生开始,商用处理器逐步进入了机密计算时代,越来越多的处理器架构和厂商开始加速研发并推出各类硬件可信执行环境技术,以应对日益复杂的安全挑战和数据保护需求,如AMD的安全加密虚拟化-安全嵌套寻呼(Secure Encryption Virtualization,Secure Nested Paging,SEV-SNP)技术、英特尔的TDX可信域扩展技术、ARM的机密计算架构(Confidential Computing Architecture,CCA)等。

在这个阶段,英特尔和AMD还分别推出了单独的内存加密技术,如英特尔的全机内存加密(Total Memory Encryption,TME)技术、多密钥全内存加密(Multi-Key Total Memory Encryption,MKTME)技术,以及AMD的安全内存加密(Secure Memory Encryption,SME)技术,这些技术能够在数据写入内存时提供加密保护,从而增强内存安全性。然而,它们未能提供满足机密计算要求的全面数据保护能力,只能归为内存安全增强技术。

2019年8月,Linux基金会发起成立机密计算联盟,联盟创始成员包括谷歌、微软、英特尔、ARM、阿里巴巴、腾讯等。机密计算联盟旨在针对云计算及其硬件生态,进一步规范机密计算中的核心技术,实现可信执行环境的硬件与软件需求及规范定义,以加速机密计算相关技术、标准及产品的落地。以机密计算联盟成立为节点,机密计算进入高速发展期。

随着机器学习、人工智能及大语言模型技术的快速发展,数据需要卸载到异构加速卡中进行加速。为了满足异构计算场景对数据机密保护的要求,需要将处理器端的可信执行环境的能力扩展到异构加速卡上,来构建跨异构计算架构的机密计算能力。英伟达于2022年推出了第一款支持可信执行环境的加速器H100,从而将机密计算的能力拓展到通用图形处理器(General-Purpose Graphics Processing Unit,GPGPU)上,实现了用户数据在GPGPU加速阶段的机密保护能力。英特尔也于同一阶段率先发布了TDX-I/O技术规范及产品路线图,以支持处理器端可信执行环境与异构加速卡设备可信执行环境的无缝协同,实现数据在异构可信执行环境中的高效安全的交互。 6LSMFtgdUB7VRlJaENg70C3eFXqXyxhSkJFRKyC7j4LSmJYe2Y5hwQqEEzsq55cs

点击中间区域
呼出菜单
上一章
目录
下一章
×