区块链在隐私计算中的应用研究进展

2022-08-18 03:51唐琮轲刘宇昭
郑州大学学报(理学版) 2022年6期
关键词:参与方联邦加密

刘 炜, 唐琮轲, 马 杰, 刘宇昭, 田 钊, 佘 维

(1.郑州大学 网络空间安全学院 河南 郑州 450002; 2.郑州市区块链与数据智能重点实验室 河南 郑州 450002; 3.郑州大学 互联网医疗与健康服务河南省协同创新中心 河南 郑州 450052)

0 引言

随着各类技术的创新与发展,整个社会早已进入了大数据时代,各行各业都涌动着大量数据,这些数据是驱动行业前进的关键。在数据资产化的同时,确保数据隐私安全的需求日益增强。用户数据在被获取和使用时,缺少完整的保护流程。数据的安全性越来越受到社会的重视,在国家发布的关于构建要素市场化配置体制机制的文章中,要求企业或个人在发展人工智能、物联网领域研究时,更要注重政府、企业和用户的数据隐私[1]。个人信息泄露,不仅影响了民众生活,更对社会安定造成严重威胁。

隐私泄露造成的危害使人们的隐私保护意识也在不断提高。这使得数据的流动性降低,形成数据孤岛,原有的集中式收集数据进行分析的方式越来越难以实现,从而难以挖掘到数据的深层价值。隐私保护计算即在保护隐私的前提下,通过分析和计算,合理运用数据的价值。

隐私计算是使数据“可用不可见”的技术,它包括了密码学、人工智能、安全硬件等众多领域交叉的学科体系[2]。隐私计算的主要工作就是保护数据在训练周期内的安全,利用加密技术实现数据的分析和计算,在融合多方数据的同时,又兼顾数据的安全性。

尽管隐私计算有很多实际应用,但是仍存在一些问题限制其发展。例如,多方安全计算受到网络带宽或者延迟的影响,在实际应用中有存储、计算要求过高,算法验证设计难度大等问题[2],且在大规模应用中缺乏多方协同的保证。联邦学习对参与方和服务器之间的通信稳定性和带宽要求较高,参与方的数据集大小和数据质量的不均衡也会影响模型精准度,在面对数据投毒、模型投毒、推理攻击等恶意攻击时,不单单影响到模型质量,用户的隐私安全也将面临严重的威胁。可信执行环境依靠的是硬件,硬件的升级改造成本不亚于软件,且目前可信执行环境还没有解决侧信道攻击的问题。

作为比特币的核心应用技术,区块链有着不可篡改、可追溯等特性。现如今区块链已经进入了3.0时代,区块链不再局限于数字货币,而是逐渐应用于政府、医疗、金融等各大领域,实现信息存储、身份认证、追溯、交易审计、资产管理等功能。

区块链是能够解决多方信任和协作的有利工具,可以记录从数据发布到使用的全过程,通过智能合约制定策略,实现权限控制、记录、回溯等功能,还能够实现点对点的高效传输网络。区块链不可篡改的链式结构提供了存证和可信记账的能力,这一点契合了跨机构合作的可信管理需求,再进一步结合密码学等技术,实现密文信息的安全存储和可信传输,解决数据敏感无法上链的难题[3]。数据拥有信息和价值的双重属性,在处理数据的同时如何保证信息和价值的解耦变得至关重要,在这一背景下,区块链和隐私计算正在加速融合[4]。

综上所述,本文将对区块链及隐私计算的发展技术现状进行讨论,再分别从区块链结合多方安全计算、联邦学习、可信执行环境三个方向研究讨论现有的理论研究与发展。

1 相关技术

1.1 区块链

区块链是将密码学、P2P、智能合约、共识机制等技术进行结合的一个分布式共享账本,这些技术赋予了区块链不可篡改、可追溯、去中心化等特性[5],在数据结构上是使用哈希指针代替普通指针的链式结构。区块包括了块头和块体,块头包含了版本号、前一个区块的哈希值、默克尔树的根哈希值、时间戳、难度值和随机数,块体包含了本区块的交易。区块链有六个层级结构,分别包括基础网络层的数据层和网络层,中间协议层的共识层、激励层和合约层,应用服务层的应用层,如图1所示。

图1 区块链层级结构Figure 1 Blockchain hierarchy

区块链的不可篡改性是由块头结构来保证的。每个区块的块头包含前一区块的哈希值,而这个哈希值正是每个区块链接前一区块的关键,若某一节点将区块内容进行篡改,此节点区块链的哈希值会发生改变,从而无法达成篡改目的。

数字签名包含签名和验证两个过程。签名是交易发起人将数据进行哈希运算后用私钥加密后的哈希值。验证方利用发起人加密算法的公钥对签名解密验证,保证数据是发起人发送的。

区块链采用的是点对点的对等式网络,网络规定每个节点都有同等地位并且相互连接。节点又分为全节点和轻节点,全节点保存有从创世区块以来所有区块的信息,并能实时独立地完成区块链的查询、验证和更新。而轻节点只需要存储每个区块的块头信息,不需要存储全量的交易列表,轻节点只能检验与自己相关交易是否合法。

智能合约是区块链的核心要素,它本是一套数字形式定义的承诺[5],在以太坊提出以后,被重新定义为一段满足条件就能够自动执行的计算机程序。智能合约收到来自外部的请求,触发运行提前写好的代码,生成交易和事件。

区块链是一种去中心化的网络,共识机制在交易的过程中使分布式的区块链达成一致性。常用的共识机制有工作量证明(PoW)[6]、权益证明(PoS)[7]、委托权益证明(DPoS)[8]、实用拜占庭容错算法(PBFT)[9]。

1.2 隐私计算

隐私计算既能够联合各方进行训练学习,又能保证各方私密数据不被泄露。隐私计算技术可归纳为三类[10]:数据加密与再处理、数据不动而模型动、通过可信环境进行大数据分析与管理,即多方安全计算、联邦机器学习、可信执行环境三大核心技术。下面将分别对三种技术进行介绍,并分析和总结它们的优势与不足,如表1所示。

1.2.1多方安全计算 多方安全计算是密码学的一个子领域,目的是多个参与方从每一方的隐私输入中协同计算某个函数的结果,而不用将这些数据展示出来。多方安全计算即著名的百万富翁问题[11],其目的是解决两个百万富翁在不泄露自己的财产信息的情况下来比较谁更富有。Goldreich等推广到了多方共同参与的场景[12]。如今多方安全计算衍生出同态加密、秘密共享、不经意传输和混淆电路等多个技术分支。

同态加密(homomorphic encryption,HE)是由Rivest等[13]首次提出。同态加密提供了一种对加密的数据进行操作的方法,是一种允许对加密的数据进行计算操作并生成加密结果的加密技术。在明文上进行计算后将获得的结果进行加密后与在密文上进行相同计算后的结果相同,这种方式就称作同态加密。同态加密方法主要有三类[14]:部分同态加密、些许同态加密和全同态加密。部分同态加密只要求加密操作满足加法同态或者乘法同态之一即可,不需要两个同时满足。些许同态加密是经过同态加密后的密文只能进行有限次的加法或乘法操作。全同态加密是对些许同态加密的扩展,可允许对密文进行无限制的加法或乘法操作[15-17]。

秘密共享(secret sharing,SS)是保护信息安全和数据保密常用的技术手段[18-19],是指在一个组内将要共享的秘密进行分配,每个成员都掌管着秘密的一部分,达到所有成员共同掌管秘密的目的。只有当多个成员所掌握的秘密达到一定数量,才能够重新获得被共享的秘密。

不经意传输,又称为茫然传输,它是由Rabin[20]首次提出,多用来解决信息发送方在向消息接收者发送消息的同时,保证消息发送方和消息接收者隐私性的问题。目前不经意传输通常有两种形式,一种形式是1-out-of-2[21],另一种是1-out-of-n[22]。不经意传输协议还有多种变体,例如随机不经意传输、相关不经意传输协议等[23]。通过使用这种加密技术来隐藏参与方的输入,实现多方安全计算。

混淆电路最初是百万富翁问题的解决方案。因为函数的计算可以通过使用布尔电路进行替代,所以混淆电路通过使用布尔电路来构造安全函数计算,后来由Goldreich等[24]将两个参与方扩展为多个参与方。Lindell等[25]在证明Yao氏混淆电路时提出了混淆电路方案,Bellare等[26]给出混淆电路的具体定义,为混淆电路作为一套解决方案在密码学领域奠定了基础。混淆电路中的参与方可以针对某个数值来计算答案,而不需要知道它们在计算式中输入的具体数值,从而保护了各个参与方数据的隐私性。

表1 隐私计算技术对比Table 1 Comparison of private computing technologies

1.2.2联邦学习 联邦学习是一种基于隐私保护的分布式机器学习框架,许多参与方在中心服务器的协调下共同训练模型,同时保持训练数据的分散性,在不暴露数据的前提下分析和学习多个数据拥有者的数据,如图2所示。

图2 联邦学习示意图Figure 2 Federated learning diagram

谷歌在2016年首次提到联邦学习,它被使用在谷歌输入法(Gboard)项目上,目的是聚合用户的本地数据模型,在输入法方面为用户提供更好的词汇提示功能。

联邦学习分为横向联邦学习、纵向联邦学习和联邦迁移学习。横向联邦学习的本质是样本的联合,适用于特征重叠多、样本重叠少的场景。纵向联邦学习的本质是特征的联合,适用于样本重叠多、特征重叠少的场景。联邦迁移学习适用于当参与者间特征和样本重叠都很少的情况,主要应用于以深度神经网络为基础模型的场景。

联邦学习中用来保护数据隐私的主流方法是使用差分隐私和加密算法[27]。联邦学习的发展需要进一步结合一些技术或算法,在保证模型质量的前提下提高安全性和效率。

1.2.3可信执行环境 可信执行环境是通过利用软硬件方法,在计算中构建多个安全运行环境,并让数据在所构建的安全运行环境中运行。任何外部攻击者甚至是拥有高级权限的管理员都无法窃取敏感数据,与传统技术相比较能更加有效保护数据的安全性和完整性[28]。可信执行环境概念的提出源于开放式移动终端平台OMTP[29]提出的一种保护移动设备中敏感信息的方案,该方案使用双系统运行,与传统的单系统运行环境相比较,该方案增加一个隔离的安全系统,专用于处理敏感数据,从而保证敏感数据的安全性和完整性。目前市面上主要的两种可信执行环境有SGX和Trust Zone。

SGX[30]在不依赖固件和软件安全状态的情况下,使用硬件安全作为保障,为拥有敏感数据的程序提供一个可信执行环境,将拥有敏感数据的特殊程序运行于可信执行环境,与普通程序进行隔离,来保障拥有敏感数据程序的安全性和完整性[31]。UCloud[32]将区块链和SGX技术相结合,将智能合约放在可信环境中运行,为智能合约提供了机密性。

Trust Zone[33]技术将设备的硬件资源和软件资源统一划分为安全区域和非安全区域,为保证数据在安全区域的安全性,安全区域和非安全区域之间的数据不能随意进行数据交换,同时非安全区域的进程禁止访问安全区域。在硬件资源方面,Trust Zone将处理器进行虚拟化后划分为安全核和非安全核。非安全核只能访问自己的系统资源,而安全核可以访问全部系统资源[34]。在软件资源方面,Trust Zone实现了安全可信启动,在系统引导加载的过程中先启动安全区域,并检查启动状态的完整性,确认无误后再启动非安全区域,通过这种方式来确保系统启动的安全性。目前常见的基于Trust Zone开发的安全技术有华为的指纹识别技术、苹果的Secure Enclave技术、三星的Knox系统等[35]。

2 基于区块链的隐私计算

隐私计算与区块链的发展逐渐成熟,但是,单一的隐私计算技术功能有限,很难构建高效的数据流动共享网络。由于区块链的去中心化、可溯源的特性与隐私计算的安全性、隐私性相吻合,可以将区块链应用在隐私计算中,实现技术的多元应用。传统隐私计算的研究中也开始了与区块链技术相结合,在医疗、金融、物联网、数据分析等领域都取得了成果。本章分别介绍区块链与多方安全计算、联邦学习和可信执行环境结合的三种主要形式,并对目前的相关研究加以总结。

2.1 区块链+多方安全计算

传统系统的中心化可信机制由于不基于完全可靠的第三方,数据隐私容易泄露;并且数据在第三方中不能由用户自己控制,对数据的不可控性会产生一系列的安全问题。利用多方安全计算可以扩展至医疗等其他领域解决现实问题。由于医疗数据中含有大量的隐私敏感信息,导致各个医疗机构不愿共享原始数据[36]。通过多方安全计算来保护各个医疗机构的数据隐私性的前提下,能得到具有高价值的数据分析结果,这对推动医疗技术发展、提升诊疗准确率和效益有着重大意义。

多方安全计算着重于计算过程中的保密性,而不能确保数据的正确性,区块链可以帮助多方安全计算实现计算周期下的全程可追溯,或者通过与区块链的结合,在跨机构间联合运营场景下完成联合统计数据。而多方安全计算可以在区块链跨链时充当可信中介。下面介绍区块链与多方安全计算结合的相关研究,并对其安全性和效率进行分析。

Wang等[37]提出了一种基于区块链和多方安全计算的储能共享新方法,使得能量存储运营商在只被告知最小信息的情况下完成用户的能量存储操作,在保护隐私的情况下多个用户分摊存储成本。该方法利用保护隐私的区块链来隐藏成本分担中的私有数据,利用多方安全计算隐藏个体用户的储能服务调度。有效消除了恶意第三方的影响,保证了整个过程的可验证性和透明性。

朱岩等[38]提出一种基于多方安全计算的智能合约框架,该模型为多方可以共同完成的一个智能合约。系统说明了智能合约在多方安全计算平台上的执行流程、语言结构和语法规范。为多方安全计算增加了输入隐私性,确保了计算节点在出错的情况下也能正常实现安全群组通信,为智能合约之后的开发和设计提供理论基础。

王童等[39]提出了一种基于区块链的共享及多方安全计算模型,该模型使用链上存储和链下存储相结合的方式存储数据,将大规模的数据信息存储在链下的数据库中,并将此链下数据的索引信息通过公钥加密后存储至链上。在需要计算时,数据持有者使用计算方的公钥将数据索引进行加密后发送给计算方,计算方计算结束后使用数据持有方的公钥进行结果加密,每一个数据持有者都不知道其他人的计算结果。并且在信息隐私保护的前提下实现了数据联合共享计算的功能,并设计出一种改进的拜占庭共识算法来解决节点之间相互信任的问题,增加了计算过程和共享数据中的安全性。

Parthasarathy等[40]提出了一种工作模型,该模型可以安全存储病人的历史医疗记录。将病人的医疗记录存储在数据库中,利用随机对称密钥加密方式对病人的医疗记录进行加密。病人可以将自己的私钥和医院的公钥输入一个代理密钥生成器中,将之前使用自己公钥加密的随机对称密钥改变为使用医院公钥进行加密,在需要时使用医院私钥获取病人的病历。此过程使用基于混淆电路的代理密钥生成器,这个生成器将这个私钥保存在密钥生成器中,进一步提供了安全性保障。

Zhou等[41]提出一种公开可验证的、安全的多方安全协议。该协议分为链上和链下两个部分,链下部分完成数据生成、密钥生成,利用同态加密技术对数据进行加密。将计算任务放置在链上进行,保证了透明性,计算的所有步骤都可以进行公开验证,同时所有数据的输入、输出都经过加密,保证了数据的隐私性。

刘峰等[42]提出了一种名为BPLSM的协议,该协议是一种在区块链上融合Pedersen[43]承诺与Schnorr[44]协议的多方安全计算协议,利用Schnorr协议对参与方的身份进行验证,来确保交易签名的正确性,相比现有的BLS[45]方案,执行效率有了明显提升。

Wang等[46]提出了一种基于区块链和多方安全计算的拍卖方案,利用区块链的去中心化和防篡改的特性,构建了一个无须通过第三方进行拍卖的环境。利用区块链保证金的形式去限制投标人的行为,使用多方安全计算和环签名技术保证投标的隐私安全,增强了密封拍卖的安全性。

区块链与多方安全计算相结合的研究总结见表2。

2.2 区块链+联邦学习

区块链和联邦学习是当前互联网研究热点,联邦学习是基于隐私保护的分布式机器学习,而区块链是能实现价值转移的分布式数据库,使用加密算法和共识机制,使得所存的数据不可篡改且公开透明。区块链和联邦学习为分布式体系架构,但本质并不同,联邦学习以数据不出域的思想为核心,而区块链要利用分布式共识,保证每个节点的一致性。通过这些能够发现,区块链能给联邦学习同比特币相似的激励机制,通过设置奖励鼓励参与方贡献自己的计算资源和数据;区块链代替联邦学习的中心服务器,为联邦学习提供一个安全的数据交换环境,或者利用区块链的可追溯性帮助联邦学习找到恶意参与方,及时进行止损和惩罚。

联邦学习的安全需求主要来源于模型质量和数据泄露。恶意参与方通过数据投毒[47-48]可以影响局部模型的质量,进而影响全局模型的准确度。局部模型的不加密上传有被攻击者进行推理攻击的风险,从而造成数据泄露。下文介绍区块链与联邦学习结合的相关研究,并对其安全性和效率进行分析。

表2 区块链结合多方安全计算相关研究Table 2 Related studies of blockchain combined with secure multi-party computing

Kim等[49]提出的BlockFL体系架构中,区块链不仅解决了服务器单点故障的问题,还根据设备的样本数量和矿工的验证提供奖励,称为数据奖励和挖矿奖励。BlockFL进一步改进,避免不诚实设备为了奖励而膨胀自己的样本数量,损坏样本质量,进而导致模型的精确度下降,该体系结构中设置矿工比较样本数量和模型训练时间,来验证模型是否合格,验证合格才会被矿工存储。

于秋雨等[50]提出的基于区块链的工业物联网联邦学习系统架构中,鼓励工厂提供轴承数据,以轴承使用状况为样本,用来确定轴承故障位置。对客户端的数据进行哈希运算,并将根节点存储在区块链上,实现客户端数据的验证完整性。参与方除了托管本地设备以外,还管理一个区块链节点,为了鼓励参与方贡献算力和数据,在智能合约中加入奖励注册表(包括参与方训练状态、训练轮次、参与方数据集大小),根据奖励注册表为参与方发放奖励,并将代币数量计入奖励注册表,作为分发奖励的依据。

Qi等[51]提出了一种基于区块链的联邦学习框架,使用区块链代替中心服务器,在保护车辆数据隐私的前提下实现交通流量预测。在该框架中,将来自分布式车辆的模型上传给矿工,矿工通过测试机验证模型是否合格,然后将模型存储在区块链中。在车辆上传局部模型时,使用差分隐私高斯机制添加噪声干扰位置信息。结果表明,该方案能够有效地防止数据中毒攻击,提高模型更新的隐私保护能力,实现安全的交通流预测。

Polap等[52]提出了基于区块链和联邦学习的代理模型,作为一个实时处理医疗数据的系统。该系统通过代理访问区块链,进行联邦学习,通过区块链共享训练后的分类器和模型。该模型为使用此系统的多家医院互通患者病例信息数据,向患者提供查询和诊疗服务。

Lei等[53]为了解决联邦学习效率低和易受攻击的缺点,提出了基于区块链的异步联邦学习BAFL架构,保证了系统安全和效率。该架构设计了区块链层和应用层,应用层中的设备虚拟连接到区块链层中的矿工。利用区块链防止单个服务器的故障,保证数据的分散和安全存储。使用熵权法,把训练时间、样本数量、局部更新的相关性和全局更新的作弊次数上传到区块链上,在区块链不超载的情况下尽快上传模型。该实验设计了恶意攻击者,进行了模拟投毒攻击,BAFL相较于联邦平均算法和异步联邦平均算法有较好的抗攻击能力。

Liu等[54]提出支付系统FedCoin,其中包括区块链网络和联邦学习网络,共有任务需求方、参与方、中心服务器和区块链共识节点。服务器协调完成训练,包括接受本地模型及聚合全局模型并更新损失函数、激励费和训练费。服务器在每次全局更新后发布计算贡献的任务,区块链中的共识节点协同计算沙普利值[55],根据沙普利值为参与方分发计算奖励。FedCoin为联邦学习提供了一个去中心化的支付方案,所有参与方的奖励以无第三方的方式交付,并且不可篡改和抵赖。

Korkmaz等[56]提出了基于区块链的去中心化联邦学习Chain FL,把存储模型的任务交给区块链,使用以太坊的智能合约进行模型的存储和全局模型的更新。Chain FL由矿工节点和参与方的培训服务器组成,为了保护数据的隐私,各方从区块链上获取最新的全局模型,在本地训练局部模型,然后只上传自己训练后的权值,最后由智能合约进行模型聚合。对于大型模型,Chain FL支持将智能合约进行分块处理运算,将数据和模型参数分成多个小的智能合约,然后进行联邦学习。

Kumar等[57]提出了基于区块链的联邦学习框架,利用多家医院的数据建立一个准确的模型,识别COVID-19患者的CT扫描图像。该框架使用SegCaps[58]进行图像分割,进一步使用胶囊网络[59]获取更好的泛化结果,为区块链提供了快速有效的联邦学习和节点选择方法。医院在整个训练中只共享梯度,然后由区块链与联邦学习合作训练全局模型。该框架使用了89名受试者(其中包括68名确诊阳性)的CT图像,且最终模型经过大量实验,达到了较高的精确度。

Zhang等[60]提出了基于区块链的联邦学习架构,用于工业物联网中的故障检测。在该系统中,区块链实现客户数据完整性的验证,每个客户端定期创建一个默克尔树,一个叶节点代表一个客户端的数据,存储在区块链中。系统使用了质心距离加权联邦平均算法解决数据异构问题,并且设立基于智能合约的激励机制鼓励客户参与联邦学习。

区块链与联邦学习相结合的研究总结见表3。

表3 区块链结合联邦学习相关研究Table 3 Related studies of blockchain combined with federated learning

2.3 区块链+可信执行环境

可信执行环境与区块链具有互补性质。可信执行环境的开销很小,并可在安全环境中完成计算,而区块链节点通常具有有限的计算能力,需要公开其整个状态来让其他节点公开验证[61]。可信执行环境不能保证可用性或对网络的可靠访问,而区块链可以保证其状态的强可用性和持久性[62]。区块链和可信执行环境的结合可以提高区块链的效率和安全性。可信执行环境为区块链提供底层可信网络,因此复杂的链上计算任务可以在链下运行,区块链用于记录数据[63]。可信执行环境可以用来验证事务并认可有效性,而不需要所有共识节点验证。在通过受信任软硬件实现的安全区域,可信执行环境可以确保进程运行时的内部数据对非安全区域不可见。只有通过特定的访问接口才能对安全区域进行操作。

在与区块链的结合中,可信执行环境主要工作是完成秘密交易、计算、共识和跨链,适用于可能存在恶意参与方、计算逻辑复杂且需要短时间内完成等场景中。如果把可信执行环境的RoT、计算、代码等放在链上公开,那就可以达成基于区块链和可信执行环境的共识。下面介绍区块链与可信执行环境结合的相关研究,并分析其安全性和效率。

Ayoade等[64]提出了基于区块链和可信执行环境的去中心化物联网数据管理。使用区块链和智能合约解决管理物联网数据中的权力集中,缺乏透明度等问题。所有数据访问权限的审计跟踪使用智能合约进行控制。使用智能合约应用程序,各方可以指定规则来管理其交互,这些规则在区块链中独立执行,而不需要一个集中的系统。

Siris等[65]提出了一个基于可信执行环境的可信资源访问的区块链支付模型。使用哈希锁和时间锁加密,将可信执行环境提供的可信资源访问和授权与区块链支付结合起来。在保证支付安全的前提下完成支付过程,并将支付记录存储在区块链中,为支付记录的完备性提供了保证。

Wang等[66]提出一个名为Hybridchain的系统,它将区块链与可信执行环境相结合,将大部分的复杂计算改为链下执行,从而减少区块链上的计算负担,进而改善区块链延迟长的问题来提高区块链的运行效率。Hybridchain利用安全通信协议,使得每个参与者都能以安全的方式共享交易数据。为了缓解可信执行环境中的enclave限制,Hybridchain允许在安全区域中运行的区块链应用程序将交易记录安全地存储到外部环境中。该方案不仅具有较高的安全性,也保证了运行效率。

Zhang等[67]提出了一个经济高效的投票系统,利用区块链实现在没有可信第三方的情况下确保投票的公平性和安全性。通过盲签名和同态加密技术来保护选民和选票的隐私。投票者通过远程认证,在自己的客户端与具有SGX功能的平台之间建立安全信道。加密算法是在可信执行环境中实现加密操作,为智能合约提供可信的数据源,可以有效地减少智能合约中的复杂操作,降低智能合约的执行成本。经过在以太坊部署测试以后,能够有效降低成本,保护选民的隐私。但是因为以太坊的限制,无法适应超大规模的选举。

Maddali等[68]提出了一种名为VeriBlock的方案,通过利用可验证计算和可信执行环境技术,在不损害区块链系统安全性的情况下减少智能合约的冗余执行,从而提升区块链的运行效率,并且该框架有一定的普适性,可以更好地适配不同类型的复杂智能合约。

Wang等[69]提出一个名为VTchain的框架,利用可信执行环境在不可信硬件的情况下进行可靠的信任计算。利用区块链去中心化的方式来替代传统的依靠第三方管理的汽车众包网络。同时,提出一种基于Zyzzyva[70]的高效信任证明共识协议,提高整个框架的效率和安全性。

Enkhtaivan等[71]提出了一个匿名拍卖方案,利用可信执行环境替代拍卖方,跟踪密钥计数器运行在可信执行环境中用以识别投标人,通信过程在区块链上完成,利用区块链的透明性来保证投标的透明度,防止投标信息被人刻意忽略,提高方案的公平性。

Su等[72]提出了一个基于区块链的可信执行环境的数据交易框架,为公平的数据交易提供一个可信的去中心化平台。可信数据交易平台是一个区块链网络,由正常节点和可信交换节点(不仅运行数据交易平台进行共识,而且在enclave上运行可信交易程序,保证数据公平传输)组成。在一个交易过程中,数据买家首先广播数据需求,并根据感兴趣的数据找到合适的数据卖家。之后,数据买家在TDTP上选择一个可信的交易节点,并将可信交易节点的地址通知数据卖家。然后数据卖家将数据发送到受信任的节点。最后,只有在可信交易节点的区域内运行的可信交易程序检测到数据买家已经向数据卖家支付了费用之后,数据买家才能从区域内接收数据。测试表明,该框架能够有效保证数据交易的公平完成。

区块链与可信执行环境相结合的研究总结见表4。

表4 区块链结合可信执行环境相关研究Table 4 Related studies of blockchain combined with trusted execution environment

3 展望

区块链作为一种能够提供分布式信任机制的关键技术,其与隐私计算技术进行融合可以极大整合两方优势,相互补充。区块链与多方安全计算的结合并使用加密算法能够保证链上数据的安全;将多方安全计算应用在授权、管理密钥、共识机制中,提升区块链的安全性,加强跨机构的协作信任,实现联合运营。对于区块链在联邦学习上的应用,利用区块链实现联邦学习奖励机制,鼓励更多高质量参与方参与训练,提高模型准确度;使用区块链对模型参数进行筛选,避免遭受到攻击后低质量的模型参数影响全局精度。使用可信执行环境对链上数据进行保密计算,并对智能合约进行隐私保护,相较于多方安全计算等加密技术其计算损耗更少;使用基于可信硬件的应用对各个参与方数据进行交叉验证,实现上链存证。

将区块链技术应用在隐私计算中,在打破数据壁垒的同时能保证数据的隐私安全,但仍存在一些问题。在区块链与多方安全计算应用中,加密和解密的过程损耗大量计算和通信资源,提高安全性同时降低通信和计算的复杂度是下一步主要研究内容。区块链与联邦学习结合存在使用差分隐私添加噪声、参与方数据质量和大小影响模型精度的问题。将合理的激励机制应用在训练场景,保证训练学习的公平性是发展区块链融合联邦学习的关键。受限于面临攻击多、标准不完善等问题,区块链和可信执行环境的结合仍不足以作为通用安全技术广泛应用,在后续的发展中需要对不同的可信执行环境技术进一步制定统一的标准。

4 结论

隐私计算为打破数据孤岛、发掘数据价值、加强数据安全等方面提供了解决办法,但也产生了新的隐私安全问题。区块链因具有去中心化、可溯源、不可篡改等特点,为隐私计算提供了新的解决思路。区块链与隐私计算的融合,使两者优势互补,在提供隐私保护的同时也增强了数据的可用性。本文对区块链与隐私保护相结合的三种主要形式进行梳理,分别介绍了在不同领域的研究及应用方案,并进行对比分析。区块链和隐私计算的结合推动了各行各业的快速发展,打破了行业内、外间的数据壁垒,为提升数据的价值、增强数据的可用性提供了新的解决方案。但是,在区块链结合隐私计算的应用过程中,要清晰地了解其局限性和适用场景,避免产生新的安全问题。

猜你喜欢
参与方联邦加密
基于秘密分享的高效隐私保护四方机器学习方案
联邦学习在金融数据安全领域的研究与应用
一种新型离散忆阻混沌系统及其图像加密应用
一“炮”而红 音联邦SVSound 2000 Pro品鉴会完满举行
303A深圳市音联邦电气有限公司
一种基于熵的混沌加密小波变换水印算法
基于SNA视角的PPP项目参与方行为风险研究
BT模式研究
加密与解密
绿色农房建设伙伴关系模式初探