区块链与数据共享 课件 【ch04】隐私保护与数据共享技术_第1页
区块链与数据共享 课件 【ch04】隐私保护与数据共享技术_第2页
区块链与数据共享 课件 【ch04】隐私保护与数据共享技术_第3页
区块链与数据共享 课件 【ch04】隐私保护与数据共享技术_第4页
区块链与数据共享 课件 【ch04】隐私保护与数据共享技术_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

隐私保护与数据共享技术第四章区块链与数据共享

01隐私保护简介1.1隐私概念和数据匿名

隐私是一种与公共性相对的概念,指的是某些信息或行为是私有的、保密的或不愿意披露的。根据维基百科的定义,隐私是个人或团体能够将自己或自己的属性隐藏起来,从而可以有选择地表达自己。具体什么被视为隐私,不同的文化或个体可能有不同的理解,但主要思想是一致的,即某些数据是某个人(或团体)的隐私通常意味着这些数据对他们来说是特殊的或敏感的。

为了明确隐私的概念,我们给出隐私的一般属性。隐私一般存在两种相互关联的属性:保密性和匿名性。保密性涉及其他人可能收集到的关于个人的信息,而匿名性涉及个人在计算机或网络中的真实身份的暴露程度。1.1隐私概念和数据匿名

隐私保护的概念与匿名技术之间有着悠久历史和密不可分的关系,在许多情况下,隐私与“匿名”(Anonymous)的定义和概念是等价的。1998年,Samarati和Sweeney提出了匿名化的概念,为隐私保护技术的发展奠定了基础。我们在此讨论的匿名度量通常是针对特定的数据匿名化方法定义的,目前主要使用三种方法:随机扰动、数据泛化和数据抑制。

另一种数据匿名化的方法就是数据泛化,通常应用于层次结构数据中,实际中通常与数据抑制方法结合使用。假设数据域具有自然的层次结构,如邮政编码可以认为具有树结构,邮政编码1230*是12301的父级,而123*是1230*的祖先,以此类推。在这样的层次结构下,用它们的(公共)父项的值可以替换它们的值,从而概括了它们的共同属性。1.2隐私衡量方法

在隐私数据的量化过程中,需要综合考虑用户的属性、行为,以及数据的属性、传播途径、利用方式等相关因素,才能对隐私数据的计算和保护提出相对较好的支撑方案。隐私数据的量化方法很多,其中一种常见的方法是使用可信度指标对隐私数据进行量化,即基于数据发布方、数据存储方和数据使用方的角色信任关系来评估数据的可信程度并决定对数据进行保护的程度。另一种方法是使用隐私风险指标,即基于数据在第三方中的可见性和可获取程度等因素来评估数据的风险程度,并根据风险程度来决定对数据进行保护的程度。

另一方面,隐私保护技术在保护隐私的同时需要尽可能地保证数据的有效性,即兼顾对实际应用的价值,以便于实际应用,因为在现实中我们是无法也不可能利用无限的资源来完全确保数据的隐私的,即数据隐私保护必须考虑隐私性和效用性之间的权衡。01数据发布数据发布阶段涉及的数据发布者即采集数据和发布数据的实体,包括政府部门、网络信息公司、网站用户等。传统的数据匿名发布技术包括k-匿名、l-diversity匿名、t-closeness匿名、个性化匿名、m-invariance匿名、基于“角色构成”的匿名等方法。03数据分析数据分析阶段涉及的数据挖掘者即从发布的数据中挖掘知识的人或组织,他们往往希望从发布的数据中尽可能多地分析挖掘出有价值的信息,可能分析出用户的隐私信息。02数据存储随着云计算平台的发展壮大,数据的存储模式发生了巨大的变化,数据存储的参与者包括云存储提供商、服务商和用户,大数据的存储者和拥有者是分离的,并且云存储服务商对于其他参与者而言并不能保证是完全可信的。1.3隐私保护的关键技术1.4数据发布隐私保护

k-匿名性可以理解为数据集的一个属性,可以表示其数据集中某记录的可重识别程度。如果数据集中每个记录的准标识符与数据集中的至少其他k-1个记录相同,那么数据集是k-匿名的。k-匿名的具体使用如下:隐私数据脱敏的第一步通常是对所有标识符列进行移除或脱敏处理,使得攻击者无法直接标识用户。但是攻击者还是有可能通过多个准标识列的属性值识别到个人。

隐私保护的数据表格中的数据已通过删除标识符(如SSN和名称)进行去标识化,但是其他一些属性的值,如出生日期、婚姻状况和性别等,仍可能与个别用户的身份一起出现在一些外部表中。1.5数据存储的隐私保护

在传统互联网背景下,基础设施服务和网络服务均由极度中心化的传统服务商提供。而在云技术及其应用的发展日渐成熟的背景下,数据存储与使用逐渐分离,数据存储和使用的权责由一方拥有开始转变为云存储平台和服务提供商共同拥有,因此数据的拥有权及其隐私保护变得越来越复杂,不只是用户与网络服务提供商两者之间的事情,这使得人们开始考虑完善大数据中数据的归属和使用的权责,并为互联网中不同的角色身份划分相应的权责。

加密方法主要可分为对称加密和非对称加密两大类。对称加密是加密和解密时使用同一个密钥的算法,非对称加密算法在加密和解密时使用不同的密钥。一般,非对称加密算法会使用一对密钥,即两个密钥:公钥是加密使用的密钥,私钥是解密使用的密钥。对称加密中常用的算法包括AES、DES、3DES、TDEA、RC2、RC4、RC5等。1.6数据分析的隐私保护

数据分析隐私保护是指在保护隐私前提下的数据挖掘技术,主要关注两点:一是对原始数据集进行必要的修改,使得数据接收方不能侵犯他人隐私;二是数据产生保护模式,通过限制对大数据中敏感知识的挖掘而达到对数据隐私保护的目的。关联规则的隐私保护技术主要分为两大类:第一类是数据变换(Distortion)隐私保护技术,基本原理是通过修改、处理支持敏感规则的数据,使得规则的支持度和置信度小于一定的阈值,而实现规则的隐藏;第二类是隐藏(Blocking)隐私保护技术,该类方法不对原始数据进行修改,而是对频繁敏感的数据集的生成规则进行隐藏。这两类方法都对非敏感规则的挖掘具有一定的负面影响。

由分类方法的结果通常可以发现数据集中的隐私敏感信息,因此需要对敏感的分类结果信息进行保护,其目标是在降低敏感信息分类准确度的同时,不影响其他应用的性能。与分类结果的隐私保护类似,保护聚类的隐私敏感结果也是当前研究的重要内容之一。Oliveira等人对发布的数据采用平移、置换等几何变换的方法进行变换,以保护聚类结果的隐私内容。1.7比特币和区块链的隐私保护

比特币和区块链涉及的隐私保护问题与传统的大数据和信息系统有所不同,两者在数据全生命周期上存在着不同的隐私风险点。大数据和信息系统的数据全生命周期主要包含数据的采集、传输、存储、处理、共享和销毁等环节,而比特币和区块链的数据全生命周期主要围绕交易数据(账本中的区块信息),涵盖在网络层、应用层、合约层中的数据传输、存储和处理等环节。比特币中的不可关联性应该满足:①难以将同一用户的不同地址关联在一起;②难以将同一用户的不同交易关联在一起;③难以将交易中的付款人和收款人关联在一起。

混币服务的缺点是,用户需要信任提供混币服务的中间人,因为其通常不需要用户的身份而且承诺不会保存用户记录,所以用户不需要任何伪身份信息(甚至用户名)来使用混币服务。分布式混币服务的主要方案是

Coinjoin,

即多个不同的用户共同创建拥有各用户输入

的比特币交易,关键技术是使交易中的多个输入对应的签名相互独立,每个地址都由不同

的用户控制,因此不需要由任何一方来负责收集所有的私钥。02零知识证明2.1零知识证明的基本原理

零知识证明的一般过程是证明者和验证者对一个约定函数或一个约定数值进行验证的过程。证明者在一系列的交互过程中利用其交互信息向验证者证明一个论断是正确的,则验证者会认为这个论断是正确的。换句话说,若某论断是正确的,则验证者接受它的概率很高;若论断是错误的,则验证者拒绝的概率很高。零知识证明的一般流程为:①证明者生成满足一定条件的随机数,称为“承诺”,并将该“承诺”发送给验证者;②验证者根据接收到的“承诺”生成满足一定条件的随机数并发送给证明者;③证明者对其接收到的随机数执行秘密的计算,并把结果发送给验证者;④验证者对其结果进行验证,若验证成功,则返回①,重复执行n次;若每次均验证成功,则验证者以很高的概率相信证明者提供的论断是正确的;若验证失败,就说明证明者不具备证明论断的“知识”,零知识证明的整个过程结束。2.2交互式零知识证明

定义4-2对于Ls{0,1}*这样一个正则语言,(P,V)是图灵机的一个交互对,V是一个概率多项式,若满足以下两个条件,则称(P,V)是关于L的一个交互式证明系统。①对Vx∈L,作为(P,V)的输入,V接受并且停止的概率至少为1-1/k"。其中,n表示交互次数,k表示输入的长度。②对任意的图灵机P',VxeL,作为(P',V)的输入,V接受的最大概率是1/k"。其中,n表示交互次数,k表示输入的长度。与零知识证明的定义相似,交互式零知识证明协议中的证明者和验证者需要进行多次交互来完成零知识证明的过程。根据零知识证明的定义,在P和V完成交互过程后,如果x∈L,那么V大概率相信关于“知识”的论断是事实,即零知识证明的完备性;如果x≠L,那么P或者P'大概率不会欺骗V,使V相信x∈L,满足了合理性或正确性条件。01基本的交互式零知识证明协议证明者提供承诺,生成一个随机数,将自己知道的信息和生成的随机数转变构造一个新难题。新的难题与原难题必须是同构的(即证明者希望证明的原难题或“知识”)。03基本的交互式零知识证明协议证明者向验证者透露新生成的难题,零知识证明性质保证验证者不能从这个新生成的难题中获得关于原难题或其解法的任何信息。02基本的交互式零知识证明协议证明者利用自己所知道关于难题的信息去解该新难题。2.2交互式零知识证明01基本的交互式零知识证明协议验证者发起挑战,要求证明者提供所需的证明,验证者随机选择让证明者证明新的难题和原有难题是同构的,或者选择让证明者给出新难题的解法。03基本的交互式零知识证明协议证明者和验证者重复①~⑤步骤n次,如证明者都能成功向验证者提供正确的证明,则验证者可以以很高的概率认定或相信该论断的正确性。02基本的交互式零知识证明协议证明者接受挑战,向验证者提供所需的证明,即难题同构的证明或者新难题的解法。前一步骤验证者的选择是随机的,所以证明者同时具备验证难题同构性以及解法的能力才能成功通过验证者的挑战。2.2交互式零知识证明2.3非交互式零知识证明

在实践中,zk-SNARK常见于以下几种应用场景,主要解决以下关键应用问题。①实现私密交易(ConfidentialTransaction):可以帮助数字货币交易大大提升安全性,典型例子有Zcash中设计的私密交易机制。②提高安全区块链的交易效率:目前区块链在扩展问题上的解决方法包括牺牲共识强度增加出块速度、启用侧链或者使用类似闪电网络(LightningNetwork)线下点对点通道来减轻主链的出块压力,从而提高整体区块链系统的交易吞吐量。这里,zk-SNARK的应用可以向主链高效快速地提供一大批交易证明,而把证明计算外包到侧链或其他地方,减轻了主链的负荷。③实现去第三方的交易:传统的数据交易方案依赖第三方委托来完成数据和货币的验证交换,基于zk-SNARK的交易设计方案可以使双方相互验证,从而直接进行点对点的交易。④数据所有权的转移:zk-SNARK提供了密码学上的安全保证,保证数据在交易时不会出现问题,确保交易的安全性和完整性。03同态计算3.1同态加密的定义安全性和简单实例

在实践中,zk-SNARK常见于以下几种应用场景,主要解决以下关键应用问题。①实现私密交易(ConfidentialTransaction):可以帮助数字货币交易大大提升安全性,典型例子有Zcash中设计的私密交易机制。②提高安全区块链的交易效率:目前区块链在扩展问题上的解决方法包括牺牲共识强度增加出块速度、启用侧链或者使用类似闪电网络(LightningNetwork)线下点对点通道来减轻主链的出块压力,从而提高整体区块链系统的交易吞吐量。这里,zk-SNARK的应用可以向主链高效快速地提供一大批交易证明,而把证明计算外包到侧链或其他地方,减轻了主链的负荷。③实现去第三方的交易:传统的数据交易方案依赖第三方委托来完成数据和货币的验证交换,基于zk-SNARK的交易设计方案可以使双方相互验证,从而直接进行点对点的交易。④数据所有权的转移:zk-SNARK提供了密码学上的安全保证,保证数据在交易时不会出现问题,确保交易的安全性和完整性。3.1同态加密的定义安全性和简单实例同态加密的定义安全性和简单实例同态加密的概念和理论由Rivest、Adleman和Dertouzous首先提出,方案主要局限于特定类型的函数f,如加法和乘法同态加密允许对加密的数据进行有限定的计算。如果一个用户希望他的数据能够以加密的形式存储在服务器或云中心,并进行一些基本的计算,那么同态加密可以为这类应用场景提供一个安全可行的解决方案。3.1同态加密的定义安全性和简单实例

下面先给出同态加密中的同态性定义。设一个加密系统的加密函数与解密函数分别为E:U→C和D:C→U,其中U和C分别为明文和密文空间,+和*分别为同一加解密空间上的加法和乘法运算,则加密方案的同态性定义为:给定任意两个u,u₂∈U,若加密系统的加密函数和解密函数满足代数关系E(u₁+u₂)=E(u)+E(u₂)或E(u₁*u₂)=E(u)*E(u₂)则该加密系统具有同态性。同态加密算法可以由四个多项式概率时间过程(ProbabilisticPolynomialTime,PTT)定义,其中包括密钥生成算法(KeyGen)、加密算法(Encrypt)、解密算法(Decrypt)和评估算法(Evaluate),由此同态加密算法表示为ξ=(KeyGen,Encrypt,Decrypt,Evaluate),3.2同态加密的主要类型目前的同态加密方案可以大致分为以下三种:部分同态加密、浅同态加密和全同态加密。部分同态加密只能实现某一种代数运算(或、乘、加),其中加法同态加密是部分同态加密最主要的加密算法,因此部分同态加密通常被称为加法同态加密。浅同态加密能同时实现有限次的加法运算和乘法运算,而全同态加密能实现任意次的加法运算和乘法运算。01部分同态加密算法对于一类簇Ⅱ中的电路Ⅱ,如果Ⅱ,的所有布尔电路仅由XOR门组成,那么算法ξ是加法同态加密的。由于一个电路理论上等价于一个函数,因此可以将函数表示为一个由多门电路组成的表示空间。加法同态加密的一个例子是Goldwasser-Micalischeme。03全同态加密算法理论上可以支持无限次数的加法同态运算和无限次数的乘法同态运算,最初的理论框架及方案于2009年由Gentry提出,后续的研究大多基于格代数结构来展开。02浅同态加密也称为层次同态加密(LeveledHormomorphic

Encryption,LHE),支持有限次数的加法和乘法同态加密运算。浅同态加密框架下比较著名的算法包括Boneh-Goh-Nissim(BGN)和姚氏混淆电路等。3.2同态加密的主要类型04安全多方计算4.1安全多方计算的基本概念和数学模型安全多方计算场景中一般设有n个互不信任的参与者p,…,P,他们分别持有秘密数据d,…,d。各方参与者希望使用秘密数据d,,d,对共同约定的函数f进行计算。具体地,这n个参与者共同执行函数f(a,…,d,)→(x…x),其中d,…,d,为约定函数f的输入,x,…,x,为约定函数f的输出;同时,每个参与者p.除了自己本身的输入d和输出x,不能得到关于其他参与者输入的任何信息。安全多方计算协议可分为两方计算协议和多方计算协议。经典的两方计算协议包括混淆电路(Yao'sGarbledCircuit)、不经意传输(ObliviousTransfer),多方计算协议包括秘密共享、GMW协议、BGW协议、BMR协议等。4.1安全多方计算的基本概念和数学模型下面介绍安全多方计算的重要算法:同态哈希算法,以探讨多方安全计算的根本性质,通过应用案例来简单解析多方安全计算的技术问题,包括双线性群、一般同态哈希算法、抗碰撞同态哈希(Collision-ResistantHomomorphicHash)。双线性群(BilinearGroup)的参数化的定义为B₆=(q,G,,G₂,e,g,h),其中G₁,G₂均为q阶的乘法循环群,e为一个双线性配对映射e:G,×G₂→G₁,g和h分别为G₁,G₂的随机数生成器。一般假设e满足以下条件:双线性:对于任意的g∈G₁,h∈G₂及随机数a,β∈Z,,有e(g“,h²)=e(g,h)”;可计算性:对于任意的geGy,heG₂,e(g,h)的计算可以在多项式复杂度时间内高效完成;非退化性:e(g,h)≠1时存在g和h分别为G,G₂的随机数生成器。在一个Bo=(q,G₁,G₂,e,g,h)的双线性群上,定义在D=Z,定义域、R=G₁×G₂值域的抗碰撞同态哈希函数族由三个算法参数(Hesam,H,Hu)表示。对于一个函数f,一般的同态哈希算法满足以下同态性质:Hewa(f,H(u),…,H(αn))=H(f(u,,u,))。4.1安全多方计算的基本概念和数学模型而抗碰撞同态哈希算法则包括以下协议。①Hkgcm:生成公钥K和随机数(a,β),从函数族抽取出一个函数,即选择随机a,β-Z,,且K=(g",h")。②H(u):计算哈希函数(x,x)←(g",h²(0)∈G₁×G₂。③Hsa(f,u,):允许在R上计算,给定两个双线性对H(u)=(x,x)和H(v)=(x₂x)时,对于加法或乘法的函数运算f有以下性质。加法同态(Addition):两个值的和为Hm(f,u,v)-(g”a(u)+c,h”a(u)+)。常数乘法同态(ConstantMultiplication):一个值与一个常数a的乘积为Hw(f,a,u)-(g(),hH()。乘法同态(Multiplication):两个值的乘积为Hm(f,u,v)-e(x,x)∈G₁,可由x和x的双线性配对映射求得。个人隐私保护对于一些面向个人的应用,如定位导航类系统,安全多方计算能够在不暴露个人位置信息和目的地信息的情况下为个人提供安全的定位或导航服务。安全的模型推理安全多方计算还可以在不泄露用户数据隐私和服务商模型参数隐私的情况下进行准确的模型推理。信息安全存储企业可使用安全多方计算技术(如同态加密、秘密共享等)将数据以密文或分片的形式存储,有效防止内部人员非法盗用数据的情况发生。模型联合训练数据模型的准确性取决于数据量、数据种类和数据质量,为了搭建一个可靠的机器学习模型,通常需要将来自多个不同机构的数据集中到一个中心服务器上。4.2安全多方计算的应用场景与案例介绍4.3混淆电路混淆电路的基本原理是先把计算问题转换成电路问题,然后通过混淆电路协议来进行安全的计算。首先先来了解一下电路,一个电路由若干门组成。门是实现基本逻辑运算的单元电路,常用的门电路包括与门(ANDgate)、非门(NOTgate)、或门(ORgate)、异或门(XORgate)等。在两方参与的混淆电路协议中,A和B希望通过混淆电路协议来完成一个计算,但A和B双方都不希望彼此的计算输入被对方知道。在混淆电路协议中,A先生成一个混淆电路(某种意义上可以将其理解为加密的电路),再把该混淆电路以及自己的加密输入发送给B,接着B通过不经意传输向A请求获取电路中B的输入电线所对应的密钥集合,最后B使用混淆。电路对A的加密输入和B自身的加密输入进行安全的计算

4.3混淆电路对于一个混淆电路,定义W为电路中的电线集,G为电路中的门集。对于电路中的每个电线w,都需要构建两个密钥来标记电线对应的输入是0还是1,即w∈W,so,sL-{0,1}°其中,s·是电线w输入为0时对应的密钥,s,是电线w输入为1时对应的密钥。这里使用的密钥是基于对称加密框架,所以这些密钥可以用于加密以及解密。B只能知道密钥s和输入i是相对应的,但不知道i对应的输入是0还是1。下面以“与非”(NAND)门为例构造一个包含两个输入的混淆电路,假设与非门g的两个输入电线分别为w,W,输出电线为w,其真值表如表4-3所示。对每个输入电线分别构造2个密钥,共产生4个密钥。其中,和s,分别是W输入0或1的密钥,和分别是w₂输入0或1的密钥。接着利用门g的不同输入的密钥对相应的输出进行加密,可以得到4个相应的密文,具体可以表示

4.3混淆电路

其中,

Enc。“M

O表示使用密钥s

对其输入执行加密。与表4-3

中的真值表相对应,门g

于输入w,W₂、输出w;以及输出密文“的真值表如表4-4所示。4.4不经意传输不经意传输概念的提出可以追溯到1/2OT协议。1/2OT协议在1981年由MichaelRabin提出,接收者有1/2的概率知道其中一个数值x,即成功猜对发送者发送的输入值的概率为1/2。1-out-of-2OT协议的发送者有两个数值x₁,x₂,区别是接收者知道其中一个。MichaelRabin提出的1/2OT协议流程如下,发送者表示为S,接收者表示为R。①发送者S找到两个大素数p,q,并计算它们的乘积n=pq,然后将n发给接收者R。②接收者R选择一个随机数x∈Z,并将t=x²modn发送到S。③发送者S计算s=√E,解有4个平方根,分别是±x和±y。S可以很快计算出4个根,因为发送者S知道p和q(但是不知道原来计算出t所使用的x),从4个根中随机选择一个发送给R。④若s=±x,则发送者S不会获知任何信息;若s=±y,则接收者R从计算GCD(x+s,n)或GCD(x-s,n)中可以猜出(p,q)。由于发送者S选择±x与选择±y的概率是相当的,因此R知道(p,q)的概率为1/2。4.4不经意传输Claude、Crepeau等证明了1/2OT→1-out-of-2OT,即1-out-of-2OT协议可以基于1/2OT协议来构造。若发送者S知道两个秘密数值xo,x,同时已有一个安全的1/2-OT协议存在,则发送者S和接收者R可以通过以下流程来执行1-out-of-2OT协议。①发送者S和接收者R同意系统安全参数m,n。②发送者S选择n个随机位x,。③对于每个j=1→n,发送者S和接收者R对每个执行1/2OT协议。此时,R大概知道一半的随机位r,…,n,但S并不知道是哪些。④接收者R选择两个索引集U=,,}和V=,,m}使得U∩V=〇,其中接收者R知道;在U中对应的所有索引。⑤如果接收者R选择从发送者S知道xo,那么R向S发送(X,Y)=(U,V)。如果R选择从S知道x,那么R向S发送(X,Y)=(V,U)。⑥发送者S计算z=x和z=田,向接收者R发送(w,W₂)=(b,④z,b田z₁)。⑦接收者R此时可以利用U中的位计算出zg,从而发送者S可以求出b₂=(z;田w)。我们构建这样的场景(如图4-8所示):作为发送者,甲的两个产品价格为xo,x,乙作为接收者需要获知某产品的价格,但乙希望选择产品1,但乙不希望甲知道乙向甲询问了哪个产品的价格。通过执行不经意传输,乙知道了其中一个产品的价格x,但不知道另一个产品x₂的价格;而甲不知道乙到底选了哪个产品。这就是1-out-of-2OT协议的核心思想,发送者有两个输入x,x,接收者提供一个选择位be{0,1},通过OT协议,接收者会知道对应选择b的x,而发送者不会知道接收者的输入x.4.5私密共享05联邦学习①用户选取:中心节点从所有用户中选取一部分用户进行下一轮训练。②模型下载:被选取的用户从中心节点下载当前的共有模型与训练相关参数。5.1联邦学习概述③用户本地计算:各用户使用下载的模型通过本地数据进行训练,用

SGD(Stochastic

Gradient

Descent,

随机梯度下降方法)等梯度下降方法更新当前的模型。5.1联邦学习概述④模型聚合:中心节点收集各本地更新的模型并进行聚合。⑤模型更新:中心节点使用聚合的模型去更新共有模型,在下一轮中重新分发。5.2联邦学习的扩展和性能提升联邦平均算法在实际应用中有着良好的效果,但是近期有相关研究成果[11,12]已经证明,联邦平均算法在数据非独立同分布(Non-IID)情况下会出现收敛速度慢甚至发散的问题,发散情况与用户的选取策略、学习率和模型平均的加权权重有关[12]。联邦平均在IID和Non-IID数据下的模型权重发散程度⁶如图4-10所示,在数据独立同分布(ID)情况下,各用户的数据分布较为接近,使得联邦平均的梯度走向与所有数据集中一块训练的SGD的梯度较为接近,而在Non-IID情况下,各用户之间的数据分布差异过大,一部分本地模型梯度下降方向发散且积累速度很快,从而导致联邦平均的梯度方向远离最优方向。5.2联邦学习的扩展和性能提升在医疗健康中尤其是可穿戴健康设备上,用户产生的个体生命数据按照不同的个人习惯、所在地、时间而呈现出较大的数据分布差异,因此Non-IID数据是医疗健康联邦学习面临的主要挑战之一。目前有三种解决方案:①创建一个全局共享的数据集;②基于优化的算法改进;③充分利用数据特性设计更好的算法框架,如使用多任务学习、迁移学习等框架,使其全局模型更适应本地数据的特性。010302创建一个全局共享的数据集关于创建一个全局共享的数据集,可以把用户的一部分不敏感的数据分到中心节点或云上,先使用共享的数据训练用户的本地模型,再使用私有数据进行训练。基于优化的算法改进在很多情况下,用户之间的数据共享不太可能实现,为了更好地解决数据统计性问题,有些研究对优化方法进行探讨。充分利用数据特性设计更好的算法框架也有不少研究尝试使用其他框架对联邦学习场景进行建模,]将以贝叶斯网络模型为主的机器学习模型扩展到多任务学习框架上。5.2联邦学习的扩展和性能提升5.3联邦学习的应用联邦学习已在多个领域应用落地,如单词预测、医疗、金融、物联网、车间通信系统等。医疗数据是个人、医疗机构和科研机构的重要资产,联邦学习提供了新的数据共享方式,使得机构之间在确保数据安全的情况下进行科研和医疗相关方面的合作。在金融领域,可以使用纵向联邦学习在电商平台与银行之间进行协作,实现在贷款风险管理、理财推荐等业务上的应用;在电信领域,同样可以基于纵向联邦学习技术利用电信以及公安两个特征互异的数据集来训练通信诈骗模型,进行电信诈骗反侦察;在推荐领域,联邦学习可以使得仅使用用户的在线反馈情况就完成排名模型的训练;在安防领域,在计算能力受限的边缘设备上,联邦学习可以完成可靠的对视频监控的识别模型建立5.4联邦学习的隐私保护解决方案联邦学习中,用户在不共享数据的情况下共同训练一个模型,用户之间共享的是数据的信息,在很多情况下是模型或梯度,可以确保数据不出本地,并且用户之间能够有效地利用彼此的信息去完成共同的任务,如学习、预测。但是,这种信息的学习和共享方式只能间接保护用户的隐私安全,并不能完全排除隐私数据的泄露风险。有相关研究[46指出,这种信息共享方式存在隐私安全问题,攻击者可通过获取模型进行各种攻击,因此需要对模型或梯度进行一定的保护。普遍使用的方法是差分隐私和多方安全计算,两种方法各有优缺点差分隐私(Differential

Privacy)是基于概率和统计的方法对隐私进行度量,因此为隐私保护提供了

理论基础,一些同态加密、秘密共享、差分隐私等隐私保护方法也都在联邦学习中有所应用。同

态加密技术在联邦学习和机器学习研究领域有很多相关的研究,包括激活函数的多相似近

似和加密计算。秘密共享作为密码学中相当成熟的技术,在密钥管理、数字签名、身份认证中有相当

多的应用,自然也会被应用到联邦学习当中。5.5基于差分隐私的隐私保护差分隐私的基本思想是,当两个数据集之间存在唯一不同的记录信息时,一个人的数据隐私不应该因为一个记录信息的存在而增加。差分隐私的基本方法是,对数据加入随机噪声,其机制有拉普拉斯机制、指数机制等。差分隐私在联邦学习中有相当成熟的研究和应用,在模型聚合前,每个参与者通过对自己训练得到的梯度进行差分隐私的加噪,从而避免中心服务器从梯度中获得个人隐私,保护了整体数据的隐私安全。差分隐私[47在传统的统计数据库和隐私保护机器学习中均有广泛的应用,其数学上的定义是:一个随机函数A:D→R满足(c,δ)-差分隐私,对只相差一个数据记录条目的两个邻居数据集D₁,D₂∈D,对任意的输出集Y∈R,满足以下条件P[A(D∈Y)]≤eP[A(D₂∈Y)]+δ

5.5基于差分隐私的隐私保护可以理解为,差分隐私方法尽可能地混淆攻击者,使之不能根据函数输出区分私有敏感的数据。差分隐私的两种实现方式分别为:对数据直接加入扰动噪音,以及根据随机函数的敏感度加入扰动噪音。其中,随机函数A()的敏感度的定义为任意两个邻居数据集的最大输出差异VA=max|A(D₁)-A(D₂)。在拉普拉斯机制中,算法A加上了拉普拉斯分布的扰动噪音Lap(VA/ε),则算法A具有c-差分隐私,类似的机制有高斯、二项式、指数机制等。根据不同的扰动方式,差分隐私算法可分为四类,即输入扰动、目标扰动、算法扰动

和输出扰动。5.6安全多方计算的隐私保护联邦学习通常需要依赖一个可信任的中心节点执行模型的聚合。在半诚实的安全模型下,即使中心节点严格遵循协议的执行,依然可以对各方提交的模型更新进行各种推理攻击等其他恶意操作。安全多方计算主要在无可信的第三方下,安全地计算一个约定的函数。安全多方计算的实现方法有三个基本框架:不经意传输、秘密共享、门限同态加密(ThresholdHomo-morphicEncryption)。其中,不经意传输和门限同态加密都基于秘密共享的思想,这可能是秘密共享被广泛视为安全多方计算核心的原因。一个基于秘密共享框架的隐私保护方案是安全聚合(PracticalSecureAggregation)⁵21,其思想是,使用秘密共享和密码学习方法对梯度的更新进行保护,从而确保敏感的信息在训练过程中不会泄露给第三方。06隐私保护的其他技术6.1基于属性加密对称加密和非对称加密技术是密码学技术中的一个重大发现,其应用对计算机科学的发展产生了深远的影响,但不可否认的是,加密技术仍存在一定的局限性,尤其是在通信效率和数据加密的计算开销上,因此大规模分布式应用中亟需比传统加密更为灵活可扩展的加密方案。在这方面,公钥基础设施加密机制等传统的加密机制需要资源提供方维护管理用户的公钥证书才能对数据进行加密。在大规模分布式应用中,这种情况会导致出现用户列表和身份信息无法一次性接收和确认等问题,导致加密/解密过程烦琐,处理开销大、协议过程交互次数多且易受攻击,从而威胁到用户的隐私安全。基于身份的加密可以看作一种特殊的公钥加密,与一般的公钥加密不同,该加密技术中的公钥可以由用户在现实生活中的身份信息来构建。这些身份信息可以包括用户的姓名、邮件地址、身份证号码、电话号码等。因此,在基于身份的加密技术框架中,公钥本质上是用户在系统中的身份信息,其他用户可以通过目标用户的身份信息去获得其公钥,从而解决了公钥的真实性和证书管理的问题6.1基于属性加密相对于公钥体制,基于身份的加密机制带来了如下优势:①用户的公钥可以通过用户的相关身份信息来计算得到,使得公钥管理变得更加灵活高效;②由于公钥是由身份信息计算得出的,因此不再需要维护用户公钥列表,可以减少信息存储和处理开销;③加密消息只需知道接收人的身份信息就可以进行,验证签名也只需知道发送人的身份信息就可以进行。一般地,模糊身份加密将每个属性用散列函数映射到Z,空间中,使用了基于属性的门限策略将属性设置成门限问题,只有用户属性集与密文属性集相交的元素数量超过算法设定的门限参数时才能解密。例如,某公司系统中的属性集为{设计师,会计师,高级},且属性加密算法的门限参数为2的设定,则用户属性为{高级,设计师,女}的用户可以解密该邮件消息,而属性集为{初级,设计师,男}的用户不可解密该邮件消息。属性加密方案

KeyGen(MK,X)→sk:密钥生成算法,算法输入主密钥MK和一个用户权限索引X,输出密钥sk。属性加密方案Dec(params,sk,M)→M:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论