隐私计算的技术路径主要分为三大类:以多方安全计算为代表的密码学路径、以联邦学习为代表的机器学习路径和以可信执行环境为代表的硬件路径。
多方安全计算(Secure Multi-party Computation,MPC)始于姚期智教授 1982 年提出的“百万富翁比财富”问题,即两个百万富翁如何在不借助第三方且不透露自己财富总量的前提下比较谁更富有。多方安全计算用于解决在一组互不信任的参与方之间保护隐私的协同计算问题,确保输入的独立性和计算的准确性,同时不将输入值泄露给其他参与方。
目前多方安全计算中主流的技术包括同态加密、秘密分享、不经意传输及混淆电路等。
一是同态加密(Homomorphic Encryption,HE),它是一种加密函数,对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。根据支持密文运算的程度,同态加密可分为全同态加密和部分同态加密。部分同态加密仅支持有限的密文计算深度,仅支持同种加密运算即同乘或同加。全同态加密可同时满足加同态和乘同态性质,是可以进行任意多次加和乘运算的加密函数。
二是秘密分享(Secret Sharing,SS),它的思想是将数据以适当的方式拆分成多个无意义的数,拆分后的每一个数由不同的参与者管理,单个参与者或者少数几个参与者无法恢复原始数据,只有若干个参与者一同协作才能恢复原始数据。通过拆分原始数据,将秘密分散到一群参与者中,能有效地防止系统外敌人的攻击和系统内用户的背叛。基于秘密分享的多方安全计算可支持加减乘除及多项式运算。
三是不经意传输(Oblivious Transfer,OT),它是构建 MPC 的一个常用协议。在 OT 中,参与方Alice 提供一组数据,另一方 Bob 从中选择一个数据,OT 协议能保障Alice不知道 Bob 获得了哪个数据,Bob 有且只能获得一个数据。
四是混淆电路(Garbled Circuit,GC),它又称姚氏电路(Yao ’ s GC),是姚期智教授于1986 年针对百万富翁问题提出的解决方案,由安全两方计算协议,通过加密门电路完成 MPC。在 GC 中,所有的计算逻辑都被表示成门电路,Alice 将自己的数据、门电路的所有可能执行路径加密后传递给 Bob,其根据自己的输入依次执行各个门电路,并获得密态形式的最终结果。
多方安全计算采用的是密码学的路径,要求敏感的中间计算结果也不可泄漏,在近四十年的发展中其核心技术不断接受学术界和工业界的检验,具有很高的可信性。
联邦学习(Federated Learning,FL)本质上是一种分布式的机器学习框架,由 Google 于2016 年首次提出①。其核心思想是在多个数据源共同参与训练时,无需各方提供自己的本地数据,仅通过交换中间参数(例如模型参数、梯度等)来实现模型的联合训练。在这个过程中,原始数据不出本地,中心节点无法看到原始数据,只能得到模型结果,因此有效地保证了数据的隐私。
典型的联邦学习过程:①是聚合服务器将全局模型下发至各个参与方,每个参与方得到初始本地模型;②是各参与方利用本地数据训练初始本地模型;③是各方将模型更新(例如模型参数、梯度等)上传至聚合服务器;④是聚合服务器采用一定算法聚合各方上传的更新,得到新的全局模型,至此完成一轮迭代过程。重复步骤1—4,直至全局模型收敛或达到所需精度要求。

在联邦学习过程中,中央聚合服务器得到的只是模型更新而非原始数据,既保证了各方数据不出本地,又完成了协同训练的任务,适用于多种场景需求。例如,由于法律限制而不能共享某些数据库的情况下,联邦学习可以使得需求方避免获取原始数据,而同时得到需求结果。同时联邦学习也可以结合同态加密、差分隐私等技术进一步提高数据协作过程中的安全性。
根据联邦学习各参与方拥有数据的情况,可以将联邦学习分为以下三类 ② :
是横向联邦学习:在两个数据集的用户特征重叠较多,而用户重叠较少的情况下,把数据集按照横向(即用户维度)切分,并取出双方用户特征相同而用户不完全相同的那部分数据进行训练,其本质是不同客户之间样本的联合。GoogleAI 团队提出联邦学习算法框架应用于移动互联网手机终端的单词预测就是典型的横向联邦学习场景。
二是纵向联邦学习:在两个数据集的用户重叠较多而用户特征重叠较少的情况下,把数据集按照纵向(即特征维度)切分,并取出双方用户相同而用户特征不完全相同的那部分数据进行训练。比如同一地区的银行、医院、运营商想要共同训练一个模型,他们的用户集包含该区域的大多数居民,但银行记录的是用户的收支行为的信息,医院记录的是用户的就诊记录,运营商记录的则是用户的通讯信息等,三者的特征空间存在很大的不同。假设我们希望对用户进行信用评估,则需要融合三方数据来共同训练一个预测模型,纵向联邦学习即是将这些不同的特征聚合在一起,利用多方数据协作构建一个模型。
三是联邦迁移学习:在两个数据集的用户与用户特征重叠都较少的情况下,不对数据进行切分,而利用迁移学习克服数据或标签不足的情况。比如两个机构,一个是位于北京的电商平台,一个是位于杭州的物流公司。由于地域限制两个机构的用户群交叉点小,由于业务不同,双方的特征空间重叠也少。这种情况下可以利用迁移学习来克服数据与标签的不足,需要从公共样本获取公共表示,用于获取具有单侧特征的样本预测。

由于法规或商业机密等原因,很多行业的数据不能直接聚合用于训练机器学习模型,这些行业涵盖金融、医疗、政务、教育、智慧城市、边缘计算、物联网、区块链等。联邦学习作为能够在满足隐私、安全、合规的前提下,使用分散于多方的数据构建共享和定制化模型的机器学习建模机制,在诸多领域都有广阔的应用前景。
可信执行环境(Trusted Execution Environment,TEE)指的是为保障数据和代码的保密性和完整性,设置的一种独立于系统其他部分的处理执行环境,该环境包含了记忆存储设备和计算能力,可以抵御软件层面的外界攻击和硬件层面对系统主存储器的攻击。作为一种基于硬件的技术,可信执行环境强调通过软硬件方法在中央处理器中构建一个安全飞地(Security enclave),并基于该安全飞地进行计算操作,未经授权则无法查看数据或者执行操作,其安全可信性离不开硬件厂商的配合。
目前主流的 TEE 技术以 X86 指令集架构的IntelSGX和ARM 指令集架构的 TrustZone 为主。这里以TrustZone为例介绍一下 TEE 在隐私保护中所起的作用。在同一颗ARMCPU上存在着两套系统,左边蓝色部分RichOSApplication Environment(REE)表示用户操作环境,可以运行各种应用,例如电视或手机的用户操作系统,图中右边绿色部分 Trusted Execution Environment(TEE)表示系统的安全环境,运行 Trusted OS,在此基础上执行可信任应用,包括身份验证、授权管理、DRM 认证等,这部分隐藏在用户界面背后,独立于用户操作环境,为用户操作环境提供安全服务。

与密码学路径的相关技术不同,可信任执行环境主要由特殊的硬件提供外在的安全环境。在实际运行时,数据以明文形式进行,因此在运算速度上具有优势。
隐私计算给数据产权带来了安全和隐私保证,对数据要素流通具有重要支撑作用,要结合数据保护影响评估的合规工具,进一步推动数据产权的发展。此外,隐私计算中不同的技术路径有着自己的优势和应用场景,需要结合实际合理选择使用:多方安全计算安全性有很高的保证,但所需的算力资源大,计算耗时较长,效率较低,适用于数据规模不大,计算复杂性低的场景。联邦学习计算速度快,易拓展,但因其是分布式的框架,需要众多参与者经多轮迭代才能完成计算,对通信效率要求较高。可信执行环境的通用性和效率更为优秀,但研发成本高,对硬件依赖程度高,需要相关硬件厂商配合,适用于计算复杂性高且对通信效率敏感的场景。总的来说,各项技术互有优劣,仍需提升通用性、安全性和性能以满足更为广泛的数据产权保护需求。