数据要素安全流通,已成为行业面临的新挑战。隐私计算能在数据提供方不泄露原始数据的前提下,对数据进行分析计算。但现有单一的隐私计算技术路线难以支撑大规模、复杂多变的应用需求,且面临着实战场景的安全风险挑战。
在《国务院办公厅关于印发要素市场化配置综合改革试点总体方案的通知》中“原始数据不出域、数据可用不可见”、“可控可计量”等相关指导原则下,蚂蚁集团首创推进的新型隐私计算技术--可信密态计算(TECC),将可信计算技术与密码学技术深入融合,能在1小时内完成亿级样本XGB建模,在安全性、适用性、性能、可靠性等维度上形成跨越式提升,突破单一技术的局限,获得更高的综合能力。TECC几乎是当前唯一能够在性能、安全性、可靠性、成本和适用性等方面都满足数据密态时代要求的技术,能够成为数据密态时代的重要技术支撑。
7月24日,第五届数字中国建设峰会公布了“十大硬核科技”奖,蚂蚁集团可信密态计算技术(TECC)入选。本文将分享数据流通新挑战背景下,蚂蚁对于隐私计算技术的思考,详解可信密态计算(TECC)技术点。
1. 隐私计算技术现状
隐私计算技术是密态数据流通的核心技术,能够允许数据提供方在不泄露原始数据的前提下,多个参与方共同进行计算。现有隐私计算技术能够满足特定的、少量场景的应用需求,但是对于全面进入数据密态时代后,面对大规模、复杂多变的应用需求,存在着一定的瓶颈。现有隐私计算技术主要分为以下两类:一类是密码协议,包括多方安全计算、安全联邦学习、同态算法等。由于隐私计算技术任务的难度非常大,这类密码协议通常都需要复杂的密码运算。并且这些复杂的密码运算并不是一次性的,而是目标运算的每一个基础单元(例如乘法、矩阵乘)都需要复杂的密码运算,使得整体计算量膨胀特别大。另一方面,多方安全计算和联邦学习每一个基础单元还需要一次公网交互,公网交互的成本(10ms级)远大于简单的计算操作(ns级)。总地来说,这类密码协议的消耗膨胀在5-7个数量级,不适合大规模应用。一类是可信计算技术,包括TPM、可信执行环境。这类技术一般会提供一个安全的隔离环境,并且设备的拥有者也难以破坏该环境的隔离性,使得各方可以放心地将数据明文放置到该隔离环境。可信计算技术在隔离环境内执行的是明文运算,所以几乎没有消耗膨胀。缺点是一旦环境的隔离性因代码实现疏忽等产生瑕疵,内部的明文数据就会直接遭受威胁。另外,可信执行环境也面对着侧信道攻击与供应链攻击而产生信息泄露的风险。
2. 可信密态计算(TECC)概况
经我们研究发现,将可信计算技术和密码学技术结合,能够很好地相互扬长避短,获得更为优秀的综合能力。我们将这一想法实践和总结,形成了一个新的隐私计算路线,即可信密态计算(Trusted-Environment-based Cryptographic Computing,简称TECC)。TECC的核心理念是在可信计算环境中将数据以密态方式进行计算。这样的密态计算能够有效缓解可信计算环境的一些安全隐患,例如侧信道攻击、明文泄露风险等等。而可信计算技术能够提供防恶意敌手攻击、防合谋攻击等能力。在可信计算技术的加持下,密码协议可以有效地轻量化,大幅度降低性能障碍。这样,可信环境和密码协议可以有效相互弥补对方的弱点。- 数据提供者在本地将数据拆分成多个密态分片数据。单个密态分片数据不泄露原始数据的任何信息。继而将每个分片数据传递给不同分区的可信计算节点。
- 每个可信计算分区的计算节点不接触完整的密态分片数据。多个可信计算分区通过密码协议(MPC、安全联邦学习等)完成目标计算。在计算过程中任何计算节点都无法恢复出数据明文。
- 可信计算节点受可信计算技术(TEE/TPM/全栈可信等)保护,运营者无法窥探。
- 密码协议的同一个角色由一个可信计算分区集群承担,可以进行并行化加速。
- TECC使用数据密态胶囊形式进行存储,包括数据密态分片、以及与其绑定的访问规则,运营者无法滥用密态数据。
3. 可信密态计算(TECC)主要特征
1)安全性
在TECC中,参与方可以与可信计算节点直接建立安全通道,并将数据端到端传入到可信计算节点的隔离环境中。在可信计算节点的隔离保护下,TECC的运维方也无法直接触达数据。计算参与方还可以通过可信计算的远程验证技术,验证可信计算节点上运行的代码,进而确认这些代码不会将数据恶意输出,只会执行指定的计算行为。TECC自身实现也高度重视代码安全,综合使用内存安全编程语言和形式化验证技术,避免因软件漏洞导致整体系统安全性被突破。
TECC能够抵御恶意敌手、合谋攻击等常见的算法层攻击。经过远程验证后,可信计算节点内只能执行验证过的代码,不能篡改协议,所以TECC能够抵御恶意敌手攻击。同样地,一个可信计算节点在执行过程中,也不能通过输出中间值、篡改协议等方式与另一个可信计算节点合谋,所以TECC能够抵御合谋攻击。
使用内存安全编程语言Rust并结合形式化验证技术,可以避免TEE内部的代码产生内存安全等高危漏洞。Rust是一种专为高安全应用设计的编程语言,在开发的时候需要多付出更高的研发成本,例如显性化标识变量的所属关系及所属关系的转移等。在此基础之上再结合抽象解释和NbSP安全范式验证,可以有效确保整体系统代码中不会有常见的高危安全漏洞,包括内存越界、多线程冲突等。
TECC的密态计算模式能够大幅缓解硬件漏洞、供应链攻击等风险。密态数据是不会作为地址(比如数组下标)、判断依据(if语句的判断条件)的,类似的操作会转换成运算操作。这使得TECC能够很好地抵御以这些信息为跳板的侧信道攻击、分支预测攻击等。单一TECC分区无法获得恢复明文数据所需的所有密态分片,这使得TECC能够很好地抵御和大幅缓解微体系采样攻击、供应链隐患。
TECC还可以通过与全栈可信技术相结合,保障TEE的运行环境,增大防御纵深。全栈可信包括防窃启的机箱,能够阻止攻击者在物理上接近TEE。特别的,TECC可以基于全栈可信技术将有风险的可信计算节点(比如返修过的设备)部署在同一个分区,可以有效缓解供应链攻击风险,因为单分区无法获取明文数据。全栈可信包括一般还包括软件链(BIOS、Bootloader、OS、应用)验证,能够阻止攻击者获得操作系统Root权限。而这些往往是攻击TEE的先决条件。
TECC中的密码协议是内网交互。内网一般可以达到25gbps,网络瓶颈很小。TECC中密码协议的主要任务是保证可信环境内是密态数据,可采用轻量级的密码协议,计算量膨胀很小。TECC中多个计算节点可以并行执行,加速整体效率。在超高的网络带宽、轻量级的密码协议、允许并行化的情况,TECC可以达到与明文相近的计算性能。例如,TECC能够在1个小时内完成亿级样本的树模型训练,以及在10分钟完成亿级行数的密态数据分析。在TECC中,包括输入输出的全部过程都是密态的,可以使用单一的算法覆盖任意多个参与方、数据任意归属的情况,有很强的场景适用性。在此对比一下,缺乏可信计算技术支持的密码协议往往出于性能压力,同一个场景的细分情况通常会使用不同的算法,比如根据不同数量的参与方、不同的数据归属划分方式设计不同的加速算法,这经常导致算法缺乏很好的适用性。
TECC允许用户在性能和成本之间进行选择。如果要达到类似明文的性能,设备成本只需增加不到一个量级。并且设备成本可以通过分时复用TECC计算中心被充分摊薄。TECC不需要额外的公网或者专线成本,而这样的带宽成本往往非常昂贵。整体TECC计算成本与明文分布式计算成本相比增加可以控制在一个数量级之内。与依赖于公网或者专线交互的跨网式隐私计算不同,TECC没有这样大量的跨网交互,可靠性风险大幅度降低。特别对于多个参与方的场景下这点格外突出。一个TECC中心可以部署大量可信计算节点。当少数设备发生问题的时候,可以使用其他设备完成任务。并且可以按照成熟的数据中心方式建设异地容灾、多地多中心等,可靠性可达99.99%-99.999%。
下图展示了TECC的综合性质,我们可以看出,雷达图的面积非常大,这说明TECC的综合性质非常好。- 参与方能够通过技术手段确保TECC运营方难于作恶,并且TECC通过安全编程语言、密态计算形式等大幅度缓解了TEE内部代码漏洞风险与TEE硬件安全脆弱性等安全风险。
- 超高的内网带宽、轻量级的密码协议、并行化技术,使得在适度的资源成本下,TECC可达到卓越的计算性能。
- 支持任意多参与方与任意数据归属划分方式,使得TECC的场景适用性非常好。
- 无公网交互、数据中心级的灾备,使得TECC的可靠性达到明文数据中心的水平。
TECC可以根据安全需求选择合适的方案,对于安全性要求一般的场景,可以采用软件可信的方案,不需要依赖特殊的硬件。在安全性要求高的场景,可以根据情况选择“TEE+密态”,该方案基本解决了TEE内部代码和自身的漏洞。在一些对安全性要求特别高的场景,可以采用“全栈可信+TEE+密态”、“全栈可信+异构TEE+密态”等方式,其安全性逐渐接近极致。 图2 TECC特性雷达图
4. 可信密态计算(TECC)应用场景
TECC在性能和安全上的突破,为各行业数据流通和隐私保护的大规模落地提供可靠解决方案。TECC解决了海量数据规模、高数据安全性、复杂计算逻辑、多数据参与方的复杂难题,进一步拓宽隐私计算的数据规模量级和计算能力。TECC满足联合营销、联合风控、数据共建等经典隐私计算场景,还突破性地支持大数据和跨地域隐私计算场景。以东数西算为例,“东数西算”是把东部密集的算力需求有序引导到西部,需要数据要素安全可控的跨域流动。打通“数”动脉,织就全国算力一张网,既缓解了东部能源紧张的问题,也给西部开辟一条发展新路。东数西算至少会面临以下几个难题:一是计算复杂,数据量大。东数西算的数据使用场景和数据规模巨大,传统隐私计算难以支撑。TECC计算集群可以在数分钟内完成亿级数据隐私求交,1小时内完成亿级样本的XGB模型训练。TECC还支持用户在底层算子上自定义计算逻辑,TECC对排序、乱序、数学函数等都进行优化设计。TECC可以有效支撑东数西算场景的计算能力需求。二是数据不泄漏。如果放在西部的数据被规模化窃取,造成的损失将无法估量。传统的数据中心方案,受操作系统漏洞、管理员作恶影响,攻击面大,被攻破的风险大。以TECC为基础的数据中心方案,通过密态计算和可信执行环境融合,云运维人员也难以窃取数据,非常适合有高安全需求的数据。三是参与方众多,且大量计算不依赖跨网交互。不是所有的隐私计算技术都适用于东数西算,MPC/FL等要求数据提供方同时作为计算方承担计算职责,也就是作为数据方的东部,必须同时作为计算方,这显然不符合东数西算转移算力的初衷。而TECC的计算方和数据提供方是分离的,可以最大程度上发挥西部能源和算力优势。
图 3 TECC东数西算示意图
总结
可信密态计算(TECC)将密码学协议、可信计算技术、全栈可信等技术相结合,综合能力显著高于传统单一隐私计算技术。
- 高安全性:提供可信计算技术及密码学技术深入融合的双重安全保障;
- 高可靠性:支持99.99%~99.999%基础设施级可靠性要求;
- 高性能:1小时完成亿级样本XGB建模卓越性能表现;
- 高适用性:适用于任意多方参与、任意数据归属划分的出色灵活性;
可信密态计算(TECC)是综合蚂蚁在隐私计算技术和可信计算技术等领域6年多研究的创新成果,是蚂蚁可信隐私计算技术体系重要构成。
蚂蚁非常愿意与社会共享技术成果,共同推动行业安全和隐私技术体系前行,为数据要素流通领域提供技术基础设施服务。今年7月蚂蚁集团已开源了可信隐私计算框架“隐语”,可信密态计算(TECC)也将作为隐语的关键构件在主管部门指导下进行开源。希望行业各界人士共同参与,携手推进行业生态建设。