导读隐私聚合技术是专用于解决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》这篇会议论文。
声音 | 上海股交所总经理:区块链想要大规模发展要做好社会科普工作:金色财经报道,上海股交所总经理张云峰表示,区块链当前还处于一个“概念”的阶段,距离成熟应用,影响到百姓的日常生活还有很长的路要走。对于“区块链”和其会带来的社会和经济效果,沈阳应当持审慎的态度。区块链想要大规模发展,一方面要做好这项复杂技术的社会科普工作,加快社会大众对区块链的了解。另一方面,要充分发挥市场的作用,让企业用实实在在的技术创新,赋能实体经济的发展。[2019/11/17]
▲?相关概念
混淆公式:
聚合公式:
动态 | 区块链技术入选科普杂志《科学美国人》2019十大突破性技术榜单:据新浪网今日新闻报道,美国科普杂志《科学美国人》公布 2019 十大突破性技术榜单。区块链技术因在保障食品安全中的作用而上榜。 入选榜单具体原因:区块链技术的发展应用将显著改善食品污染源数据追踪的困境。利用区块链云端系统,食品制造商可以依次在计算机储存各类过程的信息。[2019/9/29]
阈值秘密分享:
秘密分享是指数据拆散成多个无意义的数,并将这些数分发到多个参与方那里。每个参与方拿到的都是原始数据的一部分,一个或少数几个参与方无法还原出原始数据,只有全部参与方的数据凑在一起时才能还原出原本数据。阈值秘密分享则是将还原的条件放宽,参数方个数达到阈值时数据就可以还原。
▲?协议流程
动态 | 美国演说家Anthony Robbins开始科普什么是比特币:美国演说家安东尼·罗宾(Anthony Robbins)在自己的网站上发布了一篇比特币的科普文章,并在推特上向自己的粉丝介绍什么是比特币,目前他的推特账户共有粉丝304万人。[2019/1/1]
第0轮:客户端初始化相关安全参数,生成公私钥对用于后续流程,并发送公钥给服务器。服务器收集足够客户端的公钥数据,并记录这一阶段的存活客户端为u1。
第1轮:服务器广播收到的公钥给所有客户端。客户端拿到其他客户端的公钥,并随机生成生成混淆项bu;将自己的私钥su以及bu通过秘密分享生成客户端总数量的碎片,并使用碎片对应客户端的的公钥cu加密,返回给服务器。服务器收集足够客户端加密的碎片数据,并记录这一阶段的存活客户端为u2。
第2轮:服务器将收集到的客户端加密的碎片数据转发到对应的客户端。客户端收到后根据混淆公式对自己的数据进行混淆,并将混淆后的数据发送给服务器。服务器将u3广播给每个客户端,并记录这一阶段的存活客户端为u3。
科普时报:区块链与云计算长期发展目标不谋而合:据《科普时报》今日报道,区块链与云计算两项技术的结合,从宏观上来说,一方面,利用云计算已有的基础服务设施或根据实际需求做相应改变,实现开发应用流程加速,满足未来区块链生态系统中初创企业、学术机构、开源机构、联盟和金融等机构对区块链应用的需求。另一方面,对于云计算来说,“可信、可靠、可控制”被认为是云计算发展必须要翻越的“三座山”,而区块链技术以去中心化、匿名性,以及数据不可篡改为主要特征,与云计算长期发展目标不谋而合。[2018/5/4]
第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通用和专用算法
美国证券交易委员会周三宣布,将让专注于加密资产的经纪商运营五年而不必担心执法行动,不过前提是加密资产经纪商需要能够证实自己拥有并控制客户的数字资产证券.
电动汽车制造商特斯拉周一公布,特斯拉在2021年第一季度出售了其持有的部分比特币,价值2.72亿美元.
作者:0x13,律动BlockBeats你知道吗,你每天发布的推文也可以被铸造成NFT并进行交易了.
最近,国家发改委继续推出多部指导意见,推动区块链技术在各个领域的深入应用,加快我国经济发展。区块链技术基于其自身的去中心化、不可篡改等特性,保证了数据的真实性,也解决了信息孤岛的问题.
以太坊OptimisticRollup扩容方案Optimism团队在年度总结报告中表示,Optimism已经在两周前冻结代码,以便为Synthetix的主网试运行做准备.
据华夏时报消息,近日,在FBEC2020全球区块链产业未来发展峰会上,华为区块链首席战略官张小军表示,从当前来看,区块链以智能合约、加密算法、分布式算法等技术贯穿发展.