隐私计算介绍

2022-01-19 09:36:17 浏览数 (1)

什么是隐私计算

从20世纪70年代一直到近年,隐私计算交叉融合了密码学、人工智能、计算机硬件等众多学科,逐渐形成以多方安全计算、联邦学习、可信执行环境为代表,混淆电路、秘密分享、不经意传输等作为底层密码学技术,同态加密、零知识证明、差分隐私等作为辅助技术的相对成熟的技术体系,为数据安全合规流通提供了技术保障。

隐私计算分类

从技术角度出发,隐私计算是涵盖众多学科的交叉融合技术,目前主流的隐私计算技术主要分为三大方向:第一类是以多方安全计算为代表的基于密码学的隐私计算技术;第二类是以联邦学习为代表的人工智能与隐私保护技术融合衍生的技术;第三类是以可信执行环境为代表的基于可信硬件的隐私计算技术。不同技术往往组合使用,在保证原始数据安全和隐私性的同时,完成对数据的计算和分析任务。

以多方安全计算为代表的基于密码学的隐私计算技术

  1. 基本方案架构

多方安全计算(Secure Multi-party Computation,MPC)是指在无可信第三方的情况下,多个参与方共同计算一个目标函数,并且保证每一方仅获取自己的计算结果,无法通过计算过程中的交互数据推测出其他任意一方的输入数据(除非函数本身可以由自己的输入和获得的输出推测出其他参与方的输入)。

图1 多方安全计算技术框架

如图1所示,从底层硬件来说,多方安全计算以通用硬件作为底层架构设计基于密码学的算法协议来实现隐私计算。从算法构造来说,多方安全计算是多种密码学基础工具的综合应用,除混淆电路、秘密分享、不经意传输等密码学原理构造的经典多方安全计算协议外,其它所有用于实现多方安全计算的密码学算法都可以构成多方安全计算协议。从算法应用来说,多方安全计算根据其可在各方不泄露输入数据的前提下完成多方协同分析、处理和结果发布这一技术特点,广泛应用于联合统计、联合查询、联合建模、联合预测等场景,也可以支持用户自定义计算逻辑的通用计算需求。

相关分析

从协议实现角度分析,在基于多方安全计算的隐私计算领域,被广泛应用的有混淆电路、秘密分享和不经意传输等基础密码学技术。

混淆电路(Garbled Circuit,GC)协议使用布尔电路构造安全函数计算,保证一方输入不会泄漏给其他方,计算出结果,并能指定结果由哪方获得或者是两方以分片形式共有。该技术可实现各种计算,常用于通用计算场景,通信量大但通信轮数固定,适用于高带宽高延迟场景。

秘密分享(Secret Sharing,SS)协议是指将秘密信息拆分成若干分片,由若干参与者分别保存,并且通过参与者的合作,对分布式存储的各分片进行安全计算,全部分片或达到门限数的分片根据多个份额可重新恢复秘密信息。秘密分享计算量小、通信量较低,构造多方加法、乘法以及其他更复杂的运算有特别的优势,能实现联合统计、建模、预测等多种功能。

不经意传输(Oblivious Transfer,OT)协议指数据发送方有 n 个数据,数据接收方接收其选定的一个数据,且不能获取其他数据,同时数据发送方无法知道接收方的选择。 不经意传输常用构造多方安全计算协议,是 GMW 协议、混淆电路设 计、乘法三元组的基础构件,还可用于实现隐私集合求交(PrivateSet Intersection, PSI)、隐私信息检索(Private InformationRetrieval,PIR) 等多种多方安全计算功能。

技术特点

多方安全计算能够在不泄漏任何隐私数据的情况下让多方数据共同参与计算,然后获得准确的结果,可以使多个非互信主体在数据相互保密的前提下进行高效数据融合计算,达到“数据可用不可见”。最终实现数据的所有权和数据使用权相互分离,并控制数据的用途和用量,即某种程度上的“用途可控可计量”。多方安全计算具有很高的安全性,要求敏感的中间计算结果也不可以泄漏,并且在近 40 年的发展中其各种核心技术和构造方案不断接受学术界和工业界的检验,具有很高的可信性,其性能在各种研究中不断提升,现在在很多场景下已经达到了产业能实际应用接受的程度。

然而,多方安全计算也面临一些问题,例如:密码学复杂的运算过程造成的计算性能问题,不同技术间的加密数据不能互通造成的新的数据孤岛问题以及一些传统的安全问题等。这些问题都是制约多方安全计算发展的瓶颈。

以联邦学习为代表的人工智能与隐私保护技术融合衍生的技术

基本方案架构

联邦学习(Federated Learning,FL)是实现在本地原始数据不出库的情况下,通过对中间加密数据的流通与处理来完成多方联合的机器学习训练。联邦学习参与方一般包括数据方、算法方、协调方、计算方、结果方、任务发起方等角色,根据参与计算的数据在数据方之间分布的情况不同,可以分为横向联邦学习、纵向联邦学习和联邦迁移学习。

图2 联邦学习技术框架

如图2所示,从底层硬件来说,联邦学习一般以通用硬件作为底层基础设施。从算法构造来说,常应用同态加密、差分隐私技术以及包括基于秘密分享、不经意传输、混淆电路等密码学原理的各类多方安全计算协议和其它用于保证隐私计算的密码学技术来提升安全性。从算法应用角度来说,随着产业应用的需求,联邦学习框架也可与可信执行环境配合使用,提供安全性、应用性更强的综合解决方案。由于联邦学习是基于人工智能的技术工具,为提升用户隐私和数据安全前提下的联合 AI 模型训练效果而提出,因此广泛应用于联合建模、联合预测等场景中。

相关分析

如何有效协调数据参与方协同构建模型是联邦学习的一项主要工作。因此,根据协调方式的不同,联邦学习从拓扑架构的角度分析,可分类为集中式拓扑架构和对等网络拓扑架构。

对于集中式的拓扑结构,一般存在一个聚合各方本地模型参数信息的中心计算节点,该节点经过联邦平均等相应算法更新后,将结果返回各方。其中,中心计算节点既可能是独立于各参与方的第三方服务器,也可能是某一特定的参与方。它的优势在于易于设计与实现,往往被认为效率更高,但在一定程度上牺牲了安全性。

对于对等式网络拓扑结构,不存在中心计算节点,各参与方在联邦学习框架中的地位平等。相比在集中式的拓扑结构中需要考虑中心计算方存在泄露隐私或者遭受恶意攻击等的安全问题,分布式的网络拓扑结构安全性更高。但分布式拓扑需平等对待联邦学习中的每个参与方且能够使所有参与方有效更新模型并提升性能,设计难度较大。

技术特点

联邦学习针对传统的由建模方(计算方)收集明文数据并进行人工智能模型训练存在的泄露训练数据隐私的问题而提出,通过对各参与方间的模型信息交换过程增加安全设计,使得构建的全局模型既能确保用户隐私和数据安全,又能充分利用多方数据,是解决数据孤岛和数据安全问题的重要框架,其强调的核心理念是“数据不动模型动,数据可用不可见”。

然而,联邦学习作为一门跨密码学、机器学习等领域的人工智能学科,其在应用过程中不可避免的会出现许多新的问题和挑战,例如:联邦学习过程中出现的数据和模型的隐私泄露和安全攻击如何防护;如何对非独立同分布、参差不齐的质量的数据建模;如何降低通信复杂度以及计算复杂度;如何评估各参与方的贡献,即联邦奖励机制问题;如何实现不同联邦学习平台间的互联互通以及联邦学习的可解释性等等问题。这些仍需要进一步解决和完善。

以可信执行环境为代表的基于可信硬件的隐私计算技术

基本方案架构

可信执行环境(Trusted Execution Environment,TEE)通过软硬件方法在中央处理器中构建一个安全的区域,保证其内部加载的程序和数据在机密性和完整性上得到保护。

目前主要的通用计算芯片厂商发布的 TEE 技术方案包括 X86 指令集架构的 Intel SGX(Intel Software Guard Extensions)技术、AMD SEV(Secure Encrypted Virtualization)技术以及高级 RISC 机器(Advanced RISC Machine,ARM)指令集架构的 TrustZone 技术。而国内计算芯片厂商推出的 TEE 功能则包括兆芯 ZX-TCT(Trusted Computing Technology)技术、海光 CSV(China Security Virtualization)技术,以及 ARM 架构的飞腾、鲲鹏也已推出自主实现的 TrustZone功能。

图3 可信执行环境技术体系

如图3所示,从底层硬件来说,TEE 将多方数据集中到可信硬件构建的可信执行环境中一起进行安全计算。TEE 中可信硬件一般是指可信执行控制单元已被预置集成的商用 CPU 计算芯片。从基础算法来说,为了保证传输至可信环境中的数据的安全性,TEE 常结合相关密码学算法来实现加密和验证方案。从应用角度来说,作为通用的计算平台,TEE 可以在可信执行环境中对多方数据完成联合统计、联合查询、联合建模及预测等各种安全计算。

硬件实现相关

目前主流的 TEE 技术以 X86 指令集架构的Intel SGX 技术和 ARM 指令集架构的TrustZone 技术为代表。

Intel SGX 技术是一组预置在 Intel 商用计算芯片内的用于增强应用程序代码和数据安全性的指令,主要面向 PC 端。开发者使用 SGX 指令把计算应用程序的安全计算过程封装在一个被称为飞地(Enclave)的容器内,保障用户关键代码和数据的机密性和完整性。IntelSGX 将应用程序以外的软件栈(如 OS、BIOS 等)都排除在可信计算基(Trusted Computing Base,TCB)以外,一旦软件和数据位于 Encalve 中,即便是操作系统和虚拟机监视器(Virtual MachineMonitor ,VMM)(也称 Hypervisor)也无法影响 Enclave 里面的代码 和数据,从而在安全隔离的情况下保证软件功能的通用性。

ARM TrustZone 技术基于 ARM 芯片,主要面向移动设备,是用于 ARM 指令集体系结构的 TEE。ARM 通过对原有硬件架构进行修 改,在处理器层次引入了两个不同权限的保护域——安全世界和普通世界,任何时刻处理器仅在其中的一个环境内运行。TrustZone 通过 中断路由以及对内存总线和内存管理单元的限制来提供隔离保护。

技术特点

TEE 通过隔离的执行环境,提供一个执行空间,该空间有更强的安全性,比安全芯片功能更丰富,提供代码和数据的机密性和完整性保护。另外,与纯软件的密码学隐私保护方案相比,TEE 不会对隐私区域内的算法逻辑语言有可计算性方面的限制,支持更多的算子及复杂算法,上层业务表达性更强。利用TEE提供的计算度量功能,还可实现运行在其内部的身份、数据、算法全流程的计算一致性证明。

TEE 因支持多层次、高复杂度的算法逻辑实现,运算效率高以及可信度量保证运行逻辑可信等的特点,被广泛认可,但其技术本身依TEE 因支持多层次、高复杂度的算法逻辑实现,运算效率高以及 可信度量保证运行逻辑可信等的特点,被广泛认可,但其技术本身依赖硬件环境,CPU 相关实现属于 TCB,由芯片设备的设计生产厂商 提供,必须确保芯片厂商可信。此外使用 MPC 等密码学技术与 TEE 技术相结合可以增强其安全性,强化 TEE 实例之间机密通信和组网 的安全性,进一步防止隐私数据泄露。

本问资料部分参考自:隐私计算联盟、中国信通院云大所

本文为从大数据到人工智能博主「xiaozhch5」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://cloud.tencent.com/developer/article/1936575

0 人点赞