导读隐私聚合技术是专用于解决MPC安全多方求和问题的一种特殊协议。能够解决该问题的协议有很多种,包括基于加法同态加密的协议,线性秘密分享的协议等等。本文中的隐私聚合是指基于Google在CCS2017上提出的用于解决联邦学习中梯度安全聚合问题的协议在联邦场景下的优化。
初识
在联邦学习领域中,我们遇到的一个主要问题是,如何保证在分布式训练中梯度聚合时各客户端梯度的数据安全性。服务器若是直接拿到明文梯度进行聚合,虽然是对梯度进行操作,没有直接操作原数据并不会直接泄露隐私数据,但是对于攻击者来说,由于梯度本身就包含原数据的一些信息,通过梯度进行攻击,还是很容易攻击到客户端的隐私数据。
因此,保证各客户端在梯度聚合阶段自己梯度的安全就非常重要。
Google在CCS2017上提出了一种协议用来解决梯度聚合的安全问题,其核心思想是对于每一个客户端的梯度加上混淆项,由于混淆项是和其他客户端共同协商特殊构造的且只有自己知道,在聚合时,每个客户端传给服务器的梯度中的混淆项都可以消除掉,使得服务器可以在拿到真实的梯度聚合结果的前提下无法攻击到各客户端的真实梯度值。由于每一个客户端发来的都是混淆过的梯度,且梯度中的混淆项只有客户端自己知道,在其他客户端和服务器不合谋的前提下,可以保证各客户端梯度的隐私性。
欧易OKEx将于3月18日推出DeFi系列科普视频:据欧易OKEx官方消息显示,欧易OKEx将正式推出DeFi系列科普视频《欧易DeFi20讲》,本系列节目由欧易OKEx亚太区CEO马克金主讲。该视频首期将于3月18日11:00(HKT)推出,用户可以在欧易OKEx官方学院、金色财经观看。
《欧易DeFi20讲》主要包含DeFi入门指南、全景解读DeFi生态及如何参与DeFi三个篇章,可以轻松使用户了解DeFi原理,洞察DeFi价值,掌握DeFi热点,更多详情请关注欧易OKEx官方学院。[2021/3/18 18:55:59]
隐私聚合协议
想要站在巨人的肩膀上,首先要学会攀爬。我们需要先学习一下Google是如何做的,概括学习《PracticalSecureAggregationforPrivacy-PreservingMachineLearning》这篇会议论文。
TRON数字钱包科普资料《波场钱包的现在过去与未来》已上线:据最新消息显示,由TokenPocket联合波场TRON官方,以及 TokenPocket 社区志愿者共同撰写的《波场钱包的现在过去与未来》已正式上线。《波场钱包的现在过去与未来》又称为波场钱包小白书,详细介绍了当前TRON钱包与TRON生态密切结合的实例,是目前市面上最为详细的TRON数字钱包科普资料。波场钱包作为波场公链生态中极为重要的入口,是波场生态的重要构成要素。波场钱包从一开始只提供权限管理、转账收款、节点投票等基础功能,到如今不仅可以为用户提供法币交易、闪兑和去中心化交易所等方便快捷的交易服务,还能让用户直接在钱包上体验波场上DApp,挖矿、DeFi、Staking等资产增值服务。详情见原文链接。[2020/8/20]
▲?相关概念
混淆公式:
动态 | 报告:区块链等热点词促使童书科普百科类成交额同比增速最高:近日,京东图书与艾瑞咨询联合发布了《2019中国图书市场报告》。报告指出,AI、5G、区块链、机器人、VR、智能家居、AR这些热点词,不断点燃科技热潮,科技在改变大众生活的同时,也吸引了越来越多家长的关注,从小培养孩子对科技的兴趣和热爱。因此童书中科普百科类成交额同比增速最高,占比将近40%。[2020/1/8]
聚合公式:
阈值秘密分享:
秘密分享是指数据拆散成多个无意义的数,并将这些数分发到多个参与方那里。每个参与方拿到的都是原始数据的一部分,一个或少数几个参与方无法还原出原始数据,只有全部参与方的数据凑在一起时才能还原出原本数据。阈值秘密分享则是将还原的条件放宽,参数方个数达到阈值时数据就可以还原。
声音 | 浪潮集团云南分公司总经理:云南区块链产业发展需从“科普”到“专精”不断深化:据昆明日报消息,浪潮集团云南分公司总经理郑昕表示,云南区块链产业发展需从“科普”到“专精”不断深化。下一步,浪潮将继续加大云南农业产业高质量发展体系建设力度,重点以普洱茶等云南优势产业为切入点,打造云南“绿色、有机农产品高地”的品牌形象,并在此基础上,开展基于区块链的供应链金融服务,解决中小企业贷款难、贷款贵问题。[2019/11/11]
▲?协议流程
第0轮:客户端初始化相关安全参数,生成公私钥对用于后续流程,并发送公钥给服务器。服务器收集足够客户端的公钥数据,并记录这一阶段的存活客户端为u1。
第1轮:服务器广播收到的公钥给所有客户端。客户端拿到其他客户端的公钥,并随机生成生成混淆项bu;将自己的私钥su以及bu通过秘密分享生成客户端总数量的碎片,并使用碎片对应客户端的的公钥cu加密,返回给服务器。服务器收集足够客户端加密的碎片数据,并记录这一阶段的存活客户端为u2。
科普时报:区块链与云计算长期发展目标不谋而合:据《科普时报》今日报道,区块链与云计算两项技术的结合,从宏观上来说,一方面,利用云计算已有的基础服务设施或根据实际需求做相应改变,实现开发应用流程加速,满足未来区块链生态系统中初创企业、学术机构、开源机构、联盟和金融等机构对区块链应用的需求。另一方面,对于云计算来说,“可信、可靠、可控制”被认为是云计算发展必须要翻越的“三座山”,而区块链技术以去中心化、匿名性,以及数据不可篡改为主要特征,与云计算长期发展目标不谋而合。[2018/5/4]
第2轮:服务器将收集到的客户端加密的碎片数据转发到对应的客户端。客户端收到后根据混淆公式对自己的数据进行混淆,并将混淆后的数据发送给服务器。服务器将u3广播给每个客户端,并记录这一阶段的存活客户端为u3。
第3轮:客户端收到u3,检查客户端个数是否大于等于安全参数t,小于则终止协议。若大于等于t则对u3进行签名将签名发送给服务器。服务器收集到足够客户端的签名,并记录这一阶段的存活客户端为u4。
第4轮:服务器向客户端广播收集到的签名列表。客户端收到签名列表,验证签名列表大于等于安全参数t,否则中止协议。如果大于等于安全参数t则进行验签。验签出错则中止协议。验签结束后,对于u2和u3的差集中的客户端,即离线客户端,向服务器发送离线客户端的私钥su的碎片,对于u2中的客户端,即在线客户端,向服务器发送在线客户端bu的碎片。服务器将收集到每个客户端的bu碎片进行还原,将收集到的离线客户端的su碎片进行还原,然后将收到的所有混淆数据根据聚合公式进行聚合,并使用恢复su减去离线客户端的混淆项,最终消去所有混淆项获得真实的聚合结果。具体的方式可参看原论文的详细协议流程。
Google这篇论文的背景是移动端作为客户端提供数据参与联邦学习的训练,因此每个客户端都是有很大的可能性随时离线的。由于每个客户端的梯度都在聚合之前进行了混淆,如果有客户端在梯度混淆后还未发给服务器就离线了,会导致在聚合阶段,其他客户端梯度中的混淆项无法被消除,服务器拿到的梯度聚合值是错误的,影响最终训练的结果。
为解决这个问题,协议引入了阈值秘密分享技术在聚合前,将自己混淆项的一部分分享给其他客户端,这样服务器可以在客户端离线后从其他在线客户端恢复离线客户端的混淆项。但如果服务器可以随意恢复任意客户端的混淆项从而拿到梯度的真实值,这样即使解决了离线客户端的问题,也失去了隐私保护的特性。为了防止服务器随意还原客户端梯度的混淆项,协议中引入了另一个随机生成的混淆项,并同样将新引入的混淆项通过秘密分享技术分享给其他客户端。
每个客户端在第4轮被请求某个客户端的碎片时,如果该客户端离线则只提供su的碎片,如果该客户端在线则只提供bu的碎片,对于离线客户端中会影响聚合结果的混淆项可以通过该客户端的su恢复出来,而对于在线客户端发来梯度中的两个混淆项无法都还原出来。通过设置秘密分享时的阈值大小为安全参数之上,使得就算服务器向一批客户端获取某个客户端的su,向另一批客户端获取这一客户端的bu,客户端的总数量使得服务器也无法同时获取su和bu,保证客户端真实梯度的安全性。
阈值的安全参数根据不同的敌手模型如下图所示。
优化和扩展
该协议主要是面向移动端联邦学习中的梯度聚合,因此在联邦场景下可以将解决离线客户端问题的第二个混淆项bu,秘密分享和还原的阶段去除,可以省去大幅的开销,并且更适合于联邦场景下的隐私计算。
由于该协议中的混淆项,是客户端与其他所有参与协议的客户端一起协商计算产生的,对于参与协议客户端较多的情况下整个协议的性能会大幅下降,针对于这种情况,KalikinkarMandal等人提出了新的方案进行改进,方案引入了正则图和邻居用户的概念,每个客户端之和在他邻居中的客户端协商秘钥产生掩码以解决该问题。
基于上述协议解决了MPC中的多方加减法运算,但其实借鉴上述协议思路,可以改造出适用于乘法和除法运算的协议,即项协议中的混淆公式和聚合公式中的加减依次替换为乘除就可以解决MPC中的多方乘除运算,但由于对多个混淆项交替进行了乘除运算,在最终聚合时会产生一定的精度损失,针对精度损失的问题则可以修改混淆公式,避免直接做除法运算,而在最终聚合时进行除法计算抵消混淆项。
作者简介
刘敬
数据网格实验室算法工程师
致力于研究MPC通用和专用算法
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。