查看原文
其他

基于 PSI 的纵向联邦学习数据隐私安全技术

The following article is from 信息安全与通信保密杂志社 Author Cismag



摘  要:联邦学习系统较好地解决了“数据孤岛”问题,也在一定程度上保护了私密训练数据,然而目前联邦学习仍然存在一些隐私安全风险。首先根据联邦学习系统的不同运行阶段归纳总结了其中的隐私安全威胁,并给出了一些解决办法;其次重点讨论了纵向联邦学习系统中的样本对齐问题,讨论和分析了现有的私密求交的基本方法,提出了一种基于零知识证明的私密求交方法并给出了一些改进方向;最后,基于该私密求交方法,讨论了该方法如何与其他方法结合进行联邦学习隐私保护。
0

内容目录
内容目录:
1 联邦学习概述
1.1 联邦学习的定义
1.2 联邦学习的分类
2 纵向联邦学习中的隐私安全问题
2.1 纵向联邦学习训练阶段的隐私安全问题
2.2 模型应用阶段的隐私安全问题
3 防御隐私威胁的措施
4 基于零知识证明的私密求交方法
4.1 零知识证明(Zero knowledge Proof)概述
4.2 利用公钥密码实现私密求交
4.3 利用代数学实现私密求交
5 结 语

2021 年颁布和实施的《数据安全法》《个人信息保护法》等相关法律法规,要求各单位其依托的用户数据不能直接交换原始数据,导致各单位的数据成为“数据孤岛”,阻碍了现有人工智能商业应用的发展。针对“数据孤岛”问题,研究人员提出了联邦学习(Federated Learning,FL)的概念,基于“数据不动,模型动”这一设想,联邦学习在保障数据隐私安全及合法合规的基础上,仅通过交互模型中间参数进行模型联合训练。训练高精度的联邦学习模型需要大规模、高质量的数据支撑,数据处理工作需要投入高昂的人力、物力,并且由于联邦学习中各方数据难以直接获取,联合建模需要多方协调配合,联邦学习任务本身需要较高的商业成本。此外,隐私攻击是联邦学习系统面临的一个主要威胁,其会危害联邦学习模型的机密性。

为了应对隐私泄露问题,国内外学者做了许多研究。近几年的研究有相当一部分都是在训练过程加入高斯噪声或拉普拉斯噪声来实现隐私保护,然而当信噪比分配不当时,模型精度将严重下降。Zhu 等人 提出,目前联邦学习中隐私保护方法主要利用了差分隐私、安全多方计算和同态加密。Hu等人结合差分隐私和分布式环境,构建了能够兼顾模型异构化的隐私保护模型。Jiang 等人构建了一个自适应差分隐私模型。汤凌韬等人 和黄建华等人利用区块链技术进行了安全多方计算,有效判别并终止恶意的参与方。Feng 等人 提出了SecureGBM 算法,这是一种基于半同态加密的安全多方计算模型。为了应对联邦学习中的安全威胁,国内外许多学者都做了相应研究。例如,Wang 等人在保障无线信道下联邦学习的安全性的基础上提出了一个异步联邦学习模型,平衡了减小通信代价与安全隐私保护措施减弱的矛盾。Yang 等人提出了一种向图像增加掩码的方法,一定程度上防止了人脸信息被加入对抗噪声或非活体攻击。然而,现有的防御方法几乎都是在某种攻击方法被提出以后才开始研究的,因而多处于被动地位。

目前联邦学习的隐私安全仍存在较多问题,在隐私保护措施方面没有形成统一的理论体系。本文将针对联邦学习模型训练过程中信息传输的隐私保护方法展开研究,并重点讨论联邦学习中的私密求交方法。除介绍方法以外,本文还将分析这些方法的正确性和安全性,并分析其能否保证零知识证明,即在私密求交过程中传输的内容是否会暴露参与方的隐私。

1

联邦学习概述
联邦学习是一种分布式机器学习算法,在学习过程中,各个参与方不会共享自身的训练数据,而是每个联邦学习利用多个计算节点进行联合训练,旨在提高性能,保护隐私信息,从而可以将机器学习扩展到更大规模的训练数据和更大规模的模型。可以说,一个满足隐私保护和数据安全,满足数据收集方同时也是数据使用方,解决“数据孤岛”问题的方案即可称作联邦学习 。
1.1 联邦学习的定义
假设有 N 个参与方共同参与训练,记第 i 个参与方为这些参与方各自拥有的训练数据集为在非联邦学习的传统方法当中,是将所有参与方的数据集集中在一起,存放在中央服务器当中。在该中央服务器当中使用所有数据集中在一起的数据集训练一个模型这种方法称为集中式训练方法或者中心化训练方法。这样的方法需要每个参与方将自己的本地数据上传到中央服务器当中,如此就会造成本地的用户数据发生转移,从而产生了数据泄露的风险。而在联邦学习中,不需要集中或者转移各个参与方自己的数据来形成总数据集,即可以使各个参与方使用自己的数据协同训练一个共同的机器学习模型
一般而言,在联邦学习当中,允许训练得到的模型的性能比中心化训练得到的模型性能稍差。在这个框架当中,每个参与方并不会将他们自己的本地用户数据转移到其他地方或者暴露给服务器以及其他任何一个参与方,故联邦学习模型的性能相比中心化训练模型的性能可能会有微小损失。然而,相比于性能上的微小损失,联邦学习提供的数据安全性和数据隐私保护在一定程度上更有应用价值。
假设模型的效果为 V,则联邦学习系统的优化目标为:
式中:||·|| 表示某种范数(或距离度量)。
1.2 联邦学习的分类
联邦学习系统中,每个参与方只拥有其本地的训练数据集 ,这些数据集在样本空间和特征空间上有不同程度的重合,也造成了联邦学习系统学习的依据不同。根据学习的依据,联邦学习系统分为横向联邦学习、纵向联邦学习和联邦迁移学习 3 类。这 3 类联邦学习系统的对比结果如表 1 所示。
表 1  不同类型联邦学习系统的对比
其中,横向联邦学习是按照样本空间对数据集进行划分,并取出特征相同而样本不同的部分来进行训练。纵向联邦学习是指在联邦学习中两个或多个客户端上的数据集拥有相同的样本空间,但拥有的特征空间不同。其通过扩展特征的数量提高学习模型训练的精度,也可以理解为按特征划分的联邦学习。

2
纵向联邦学习中的隐私安全问题


尽管联邦学习系统中各个参与方的训练过程是独立进行的,且没有原始训练数据的传输,可以保证一定的隐私安全,但这并非绝对安全的。
2.1 纵向联邦学习训练阶段的隐私安全问题
一般而言,联邦学习至少包括初始化、本地更新和全局聚合 3 个步骤。然而,在具体实施过程中,纵向联邦学习系统在本地更新阶段需要参考各方的样本,才能正确完成全局聚合,在这样的参考过程中,会涉及一系列的隐私问题。
在纵向联邦学习系统中,各个参与方的特征空间之间有较大部分不重合,因此需要将来自不同参与方的样本中的意义相同的特征进行对齐,此过程为样本对齐(Sample Alignment)在样本对齐过程中,需要在不暴露样本本身的前提之下求取各方样本特征空间的交集,此过程称为私密求交(Private Set Intersection,PSI)。样本对齐过程实际上是一个对样本求交集的过程,而隐私保护的样本对齐问题实际上就是一个私密求交问题。
2.2 模型应用阶段的隐私安全问题
当模型训练完成后,攻击者仍然可以通过向模型提出一些精心设计的查询请求来获得关于模型的一些隐私信息。在此阶段,联邦学习系统容易受到应用攻击、模型窃取攻击和模型逆向攻击。
在模型窃取攻击中,恶意攻击者查询联邦学习模型,获取相应结果,并利用替代模型窃取联邦学习模型的功能。由于联邦学习模型的商业价值极高,容易受到攻击,易被反演出的替代模型窃取模型商用属性。
在模型逆向攻击中,攻击者一般试图通过在训练完毕的模型中不断地查询,获得一些统计信息,进而推理出用户的隐私信息。在此过程中,攻击者能够推理出数据集的一些统计信息,也能推理出某个成员是否包含在训练集中。根据攻击者推理的信息,可以将模型逆向攻击分为属性推理攻击(Property Inference Attack,PIA)和成员推理攻击(Member Inference Attack,MIA)。

3

防御隐私威胁的措施


在纵向联邦学习系统中进行隐私保护时,一大难点在于如何在模型训练阶段进行安全的样本对齐。针对纵向联邦学习系统训练阶段的隐私安全 保 护 方 法 主 要 包 括 安 全 多 方 计 算、 同 态 加 密(Homomorphic Encryption)、私密求交等,这些方法可以防御一些模型逆向攻击以及恶意的隐私泄露。同态加密是一种基于密码学的加密方法,这种方法中对密文进行某种操作,并将结果解密,且得到解密后的结果等于对明文进行某种操作的结果。同态加密可以分为加法同态和乘法同态。加法同态的基本范式为:
式中:E 和 D 分别代表加密算法和解密算法;(pk,sk)为一对公私钥;* 代表某种运算。
乘法同态加密的基本范式为:
全 同 态 加 密(Fully Homomorphic Encryption,FHE)是指一个函数同时满足加法同态和乘法同态的要求,可以进行任意多次加和乘运算的加密运算。然而,这种基于密码学的算法的时空效率问题和联邦学习系统的通信效率问题是此类方法发展和应用的瓶颈。
另外有一些不基于密码学的隐私安全方法,例如差分隐私(Differential Privacy,DP)方法,它可以使得明文信息能够推理出尽量少的敏感信息。设有两个数据集 D 与 D',若它们的对称差中元素的数量满足 |D∆D'|=1,则称 D 与 D' 互为邻近数据集(Adjacent Dataset)。对于邻近数据集 D 与 D',设有一随机算法 M,为该算法所有可能的输出,对于任意都有:
式中:e 为自然对数的底数;δ 为一个松弛项,表示差分隐私可以接受一定程度的不满足,如则称随机算法M 满足差分隐私;为隐私预算,其值越小,随机算法 M 在 D 和 D' 上获得相同的输出结果的概率也就越接近,代表加噪声的力度越大。

4

基于零知识证明的私密求交方法


4.1 零知识证明(Zero knowledge Proof)
概述总体而言,零知识证明是在不透露关键信息的前提之下证明某一个论断正确的方法。零知识证明是一个密码学协议,在 1989 年由 Goldwasser 等人提出。在零知识证明体系中,主要角色包括证明者(Prover)和验证者(Verifier)。证明者依据某个论断生成证明,且不向验证者透露敏感信息。可以根据各参与方的算力大小,将零知识证明分为计算零知识证明(Computational Zero Knowledge)、完全零知识证明(Perfect Zero Knowledge)和统计零知识证明(Statistical Zero Knowledge)。
记证明者为 P,验证者为 V,则一个零知识证明系统至少要满足下列性质:
(1)正确性。P 无法欺骗 V,即如果 P 没有获知某种证明方法或证据,则 V 将会有很低的概率相信 P 能够证明某件事。
(2)完备性。V 无法欺骗 P,即如果 P 获知了某种证明方法或证据,则 P 能够使 V 以绝对优势的概率相信其能够证明某件事。
(3)零知识性。V 能够验证 P 给出的证明是否可靠,但是不能从 P 的证明中获取任何额外的信息。
零知识证明是一种不确定性推理的方法,实际上也存在犯错误的概率,但是可以通过统计手段来降低此类概率。由于要破坏零知识证明需要解决离散对数、大整数因子分解等复杂数学问题,零知识证明的使用不会降低系统安全性。然而,生成零知识证明对算力有所依赖,某些相关协议也对可信设置有所依赖。
4.2 利用公钥密码实现私密求交
4.2.1 基本方法
样本对齐可能会泄漏参与方的样本隐私,而且已有隐私保护的样本对齐技术主要基于 RSA 以及不经意传输  等密码学技术,因此随着参与方数量的增加,这些方法的缺点逐渐被放大,即在大规模的联邦学习样本对齐中,样本对齐的性能比较低,通信和计算开销都比较大。本文给出了一种基于零知识证明的私密求交方法,来保证样本对齐过程中的安全性,如图 1 所示。
图 1 私密求交与样本对齐的关系
在本文的第 2 节中提过,一般的私密求交方法容易遭受碰撞攻击,因此在实际意义上难以保障参与方的数据安全。目前常用的私密求交方法主要包括基于公钥密码体系的私密求交  和基于不经意传输的私密求交 。
在纵向联邦学习系统中进行样本对齐时,一般采用基于公钥密码体系的私密求交方法,如图 2 所示。实际上,该方法也是一种基于盲签名的私密求交方法。首先,发起求交请求,参与方 B 基于 RSA生成一个密钥 (e,d,n),并将公钥 e 和大素数 n 发给参与方 A;其次,当参与方 A 收到这些信息后,将自己添加一个随机数 r,并采用哈希函数 H(u) 来计算一个值域为参与方 A 的数据集的映射再将发送给参与方 B;此时,参与方 B 将利用私钥对双方的 ID 进行签名(即计算),并发送给参与方 A;最后,参与方 A 利用自己生成的随机数 r 来计算并求出的交集 I,再发送给参与方 B,参与方 A 和参与方 B 利用公钥将 I解密,即可获得各自的明文交集。
图 2 利用公钥密码体系实现私密求交
该私密求交方法的基本算法框架如下:
4.2.2 正确性、安全性、复杂性和零知识性分析
(1)正确性分析
关于算法正确性的分析,只需要获知去盲步骤中的 I 是否等于在去盲步骤中,被参与方 A 进行了除以随机数的操作。因为参与方 A 可以获知自己在之前的步骤中生成的随机数,所以经过该操作后,这个过程使得 的最后计算结果不含有随机数,因此被称为“去盲”。
在去盲步骤中,因此,又因为由此即可得出这就证明了该算法能够正确完成交集的操作,且 I 就是两方数据集交集经过哈希函数映射后的结果。
(2)安全性分析
在盲化步骤中,参与方 A 所计算的经过了参与方 A 的随机数加噪处理,参与方 B 虽然可以将 解密,但仍然不能获知参与方 A 的私有训练数据,这保障了参与方 A 的私有数据隐私安全。这个过程中,参与方 B 能够继续使用完成求交步骤,但是因为参与方 B 不知道参与方 A 生成的随机数,故不能从  中获得任何有效知识;因此,“盲化”的目的是使得参与方 B 只能使用参与方 A 的加密数据完成签名操作,而不能获得有关数据的具体信息。
在签名步骤中,参与方 A 不持有私钥 d,因此不能对进行解密,这保障了参与方 B 的私有训练数据不会泄露给参与方 A。实际上,参与方B 是对  分别进行了数字签名,以确保数据集传输的有效性。因为参与方 B 不能从  中获得有关的任何信息,对其签名只是确保 有效,所以这样的签名又被称为“盲签名”。
此算法在步骤上能够保证安全,其安全性取决于公钥密码和哈希函数的安全性。
(3)复杂性分析
在这种私密求交方法之下,主要计算代价来自 的计算。如果假设哈希函数的计算代价近似为则计算这些中间变量时间代价为如将其应用于联邦学习系统中,则需要每个参与方两两发起私密求交请求。假设共有 k个参与方,则进行私密求交的次数为时间代价为
(4)零知识性分析
在整个私密求交过程中,参与方 B 作为验证者,而参与方 A 作为证明者。盲化步骤和签名步骤保障了验证者和证明者都不能获得额外知识,满足了零知识性。签名步骤又使得验证者可以在去盲步骤结束以后根据发来的 ,结合自己先前生成的验证交集 I 是否正确,满足了正确性。此外,验证者在执行去盲步骤时,需要验证签名这就保障了完备性。因此,上述算法能够做到零知识证明。
4.3 利用代数学实现私密求交
4.3.1 基本方法
针对联邦学习中隐私保护的样本对齐性能较差的问题,本文在现有样本对齐方法基础上,给出了一个高效的样本对齐技术,这是一个可以快速进行私密求交的技术。样本对齐问题实际上是一个对样本求交集的问题,而隐私保护的样本对齐问题实际上就是一个私密求交问题。针对私密求交问题,基于零知识证明设计了一个保护隐私的代数学求交方法,其基本思路为:利用全同态加密和代数学的知识,基于集合交集的两个显著性质实现私密求交,即在保护集合中元素隐私的前提下实现交集求解;采用零知识证明的方式进行各参与方私密求交所需的信息交互,并研究多集合的私密求交方法,即实现零知识的快速样本对齐。
此,需要假设下列条件成立:
式中:为每个客户端拥有的样本集。式(7)代表的条件是为了保证交集 A 与各方样本集合的子集的关系,式(8)代表的条件是为了保证每个样本集合与交集 A 的差集的交集为空,这可以通过代数学的相关定理来说明。
实际上,通过代数学相关定理也可以实现一些私密求交。一般而言,可以将每一个样本集所拥有的特征空间看作一个多项式。对于一系列多项式如果这些多项式两两互素,则存在一系列多项式使得:
在大规模的联邦学习样本对齐中,如果所有参与方进行两两私密求交,则进行这种计算的次数为时间代价为其中,k 为参与方的个数。考虑到每个参与方的数据量可能较大,常数时间代价也会较大,这会导致样本对齐的过程比较漫长。基于上述原理的私密求交过程相比一般的私密求交,只需要进行 k 次私密求交操作即可完成私密求交操作,时间复杂度降常数时间代价也相应降低为可以有效节省时间代价。该算法利用同态加密实现,其算法框架如下:
该算法的复杂度已经在上文中给出。
4.3.2 正确性、安全性、复杂性和零知识性分析
(1)正确性分析
文 中 FHE.Decrypt 代表同态加密对应的解 密 操 作, 根 据 同 态 加 密 的 性 质 可 以 得 知此时解密结果为0 的数据点即在两方数据的交集中,反之不在两方数据的交集中。
(2)安全性和零知识性分析
在加密步骤中,参与方 B 将密文发送给参与方A,由于 FHE 算法是选择明⽂攻击下的不可区分性(Indistinguishability under Chosen-Plaintext Attack,IND-CPA)安全的,且参与方 A 没有掌握私钥,因此这些密文对于参与方 A 而言,看起来像是一组伪随机数,并没有提供任何其他知识。而在同态求交过程中,参与方 A 将同态计算后的结果(仍是密文)发送给参与方 B,假如参与方 B 试图解密其中的信息,则参与方 B 通过解密能够得到的信息只是将这些密文解密后的受随机数影响的明文,仍然不能从中获得任何其他信息。参与方 A 和参与方 B 都可以利用 FHE 算法及自己掌握的密钥验证对方发来的计算结果是否成立,但参与方 A 和 B 不会得到任何除此以外的知识。
这里,参与方 B 和 A 互为验证者和证明者。
3)算法优化方案
如果参与方 B 将 2 的幂计算出来,并发送给参与方 A,则参与方 A 在多项式求值过程中可以将常数复杂度降低到而且由于每个数据点在集合中都是唯一的,所以也可以结合哈希算法来提高计算效率。这是因为如果双方采用了相同的哈希逻辑,则双方在各自创建的哈希桶内执行私密求交,落在不同桶内的数据是不可能相同的。然而,桶内数据的数量有可能会泄露一些模式信息,因此实际操作时一般预先将桶填充到最满。通过一系列的优化措施,可以进一步提高算法效率,该算法在金融、政务等跨机构数据共享计算的实际场景中有广泛的应用前景。

5

结语


本文总结了纵向联邦学习中常见的隐私问题,归纳总结了差分隐私、同态加密等常见的隐私保护方法,并重点探讨了纵向联邦学习中的私密求交方法。除常用的基于 RSA 的私密求交方法外,本文还在零知识证明的基础上提出了一个基于代数学的私密求交方法,并分析了这些私密求交方法的相关性能与零知识性。

未来将进一步研究各参与方通过轻量级的同态加密、快速的私密求交以及差分隐私等技术的技术融合,来处理各方得到的中间结果并基于零知识证明进行中间结果交换,在保证模型准确性的前提下,用于保护隐私的梯度计算。

END

往期推荐


1.PSI系列(3)组件 | OT Extension (KK13)
2.密码学的100个基本概念(上)3.密码学的100个基本概念(下)4.笔记分享 | 组队学习密码学(1)——密码学与MPC基础


继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存