BTCV光复资讯 > 数字货币 > 哈斯基:解释安全多方计算的技术方案、挑战和未

哈斯基:解释安全多方计算的技术方案、挑战和未

来源:btcv-光复资讯  |   作者:btcv-光复资讯  |   时间:2020-08-31 07:24  |   点击量:

作者:钱百俊,在哈斯克资本研究公司工作

点评:万向集团首席经济学家邹传伟

本文分析了安全多方计算技术及其应用。结论是安全多方计算可以解决不信任方之间的隐私保护合作计算问题。安全多方计算拓展了传统分布式计算的边界和信息安全的范畴,对解决网络环境下的信息安全具有重要价值。安全多方计算可以将多行业领域结合起来进行数据融合,这对数据市场的发展非常重要。数据是一个复杂的概念,有许多类型和丰富的特征。随着时代从互联网向区块链转变,数据将很快成为能够创造经济价值的资产。然而,考虑到数据安全和个人隐私,大多数企业对数据共享都非常谨慎。对于个人数据,控制和隐私保护比所有权更重要。因此,企业在平衡数据输入的私密性和输出结果时经常会遇到困难。例如,医院需要与保险公司共享患者数据,但不能披露患者的个人隐私。安全多方计算提供了一种无需可信第三方就能安全执行多方协作计算的技术解决方案。

本文分为三个部分。第一部分讨论了安全多方计算的体系结构。第二部分研究安全多方计算的技术实现。第三部分分析了安全多方计算的应用和未来发展。

安全多方计算定义和架构定义

安全多方计算可以定义为,在没有可信第三方的分布式网络中,多个参与实体持有秘密输入,并希望完成某个函数的计算并一起得到结果,前提是每个参与实体除了自身之外不能知道其他参与实体的任何输入信息。以下是安全多方计算的数学表达式:

安全多方计算架构安全多方计算主要分为两个参与者:参与节点和中枢节点。每个参与节点具有相同的状态,并且可以发起协同计算任务或者选择参与由其他方发起的计算任务。中枢节点不参与实际的协同计算,但主要用于控制传输网络、路由寻址和计算逻辑传输。此外,在分散网络拓扑中,可以删除中心节点,参与节点可以与其他参与节点点对点连接,直接完成协同计算。在安全多方计算过程中,每个数据持有人可以发起协同计算任务,并通过中枢节点路由,选择其他具有相似数据类型的数据持有人进行安全协同计算。参与协同计算的多个数据持有人的参与节点将根据计算逻辑从本地数据库中查询所需数据,并在密集的数据流中联合执行协同计算以完成安全的多方计算任务。整个过程中各方的明文数据都存储在本地,不会提供给其他节点。在保证数据隐私的情况下,中心节点将计算结果输出到整个计算任务系统,使各方都能得到正确的数据结果。

安全多方计算有三个主要特征:

隐私。安全多方计算的主要目的是如何保护协同计算中每个参与者的私有数据,也就是说,必须保证各方的私有输入是独立的,并且在计算过程中没有本地数据泄露。

正确性。参与多方计算的各方通过约定的安全多方计算协议发起计算任务并进行协同计算,计算数据结果正确。

权力下放。在安全的多方计算中,每个参与者地位平等,没有特权参与者或第三方,这提供了一种分散计算模式。

图1:安全多方计算技术框架,来源:中国信息通信研究院云计算与大数据研究所

安全的多方计算信任环境

安全多方计算,信任环境或整体安全的定义通常用真实-理想范式来表达。在真实-理想模型中,有一个虚拟的“理想”环境,它与真实环境相比较。在一个理想的环境中,所有的参与者将把他们的秘密数据发送给一个可信的第三方,可信的第三方将完成计算。然而,在现实环境中,并没有这样的可信第三方,所有的参与者都是通过相互交换信息来完成协同计算的,其中一些会被对手所控制。一个安全的多方计算系统满足真实-理想模型下的安全性,这意味着真实环境中的对手不会比理想环境中的攻击者产生更多的伤害;换句话说,如果有一个对手可以对真实环境造成伤害,那么也有一个伤害就是这个对手可以对理想环境做出同样的事情。根据逆否定命题,事实上,不存在可以危害理想环境的敌人,因此可以得出结论,在现实环境中不存在成功的敌人。一般来说,在安全多方计算中,可以根据攻击者能力的不同定义两种不同的攻击者相关安全模型。

半诚实模型(半诚实倡导者的安全)。在半诚实行为模型中,假设对手会诚实地参与特定的安全多方计算协议,并遵循协议的每一步,但会试图通过协议执行过程中获得的内容猜测对方的隐私。

恶意行为的安全性。在恶意行为模型中,恶意节点可能不遵守协议并采取任意行为(如伪造消息或拒绝响应)来获取其他方的隐私。

目前,有许多改进的安全多方计算方案,可以实现恶意行为模型下的安全,但都需要付出很高的性能代价。大规模安全多方计算产品通常只考虑半诚实模型,恶意行为模型的解决将严重影响效率和实用性。安全多方计算:秘密共享秘密共享是多方安全签名中经常使用的技术,主要用于保护重要信息不被丢失或篡改。通过秘密共享机制,秘密信息将被分割,每个参与者只持有一部分秘密,而个人持有的一些碎片不能用于恢复秘密,因此需要收集预定数量(或阈值)的碎片。

无意转移无意转移是一种密码协议,广泛应用于安全多方计算领域。它解决了以下问题:

例如,爱丽丝有两套密封的密码组合,鲍勃只能得到一套密码,鲍勃希望爱丽丝不知道他选择哪套密码。这时,我们可以用偶然的传输来完成交易。

图2:无意传播示意图,来源:连锁新闻

无意传播有两个角色:发送者和接收者。可行的实施过程分为四个步骤:

混淆电路混淆电路是姚期智教授在20世纪80年代提出的安全多方计算的概念。混淆电路是一种密码协议,根据这种协议,两个参与者可以在不知道对方数据的情况下计算某个函数。以姚的百万富翁问题为例。两个百万富翁爱丽丝和鲍勃想比较谁的财富值更高,而不知道对方的确切财富值。例如,爱丽丝的财富值是20,鲍勃的财富值是15。通过混淆电路,爱丽丝和鲍勃都可以知道谁更富有,但爱丽丝和鲍勃不知道对方的财富价值。混淆电路的核心逻辑是将计算问题转化为由与门、或门和非门组成的布尔逻辑电路,然后通过公钥加密、无意传输等技术干扰这些电路值来掩盖信息。在整个过程中,双方都传输密码或随机数,没有任何有效的信息泄露。因此,双方都能得到计算结果,达到保护私有数据的目的。假设爱丽丝和鲍勃混淆了一个电路协议。混淆电路的实现过程分为四个步骤:

爱丽丝生成一个模糊电路。从图4可以看出,在Alice产生的混淆电路中连接了许多逻辑门,每个逻辑门都有一条输入线和一条输出线,并有一组真值表。

爱丽丝和鲍勃交流。爱丽丝对称地加密逻辑门的真值表,并将真值表的行和列打乱成乱码表,并发送给鲍勃。

鲍勃收到加密真值表后,对加密真值表的每一行进行解密,最后只有一行能够成功解密并提取相关的加密信息。其中,鲍勃通过随机传输协议从爱丽丝那里获得相应的解密字符串。不经意的传输可以确保鲍勃得到相应的解密字符串,而阿尔塞不知道鲍勃得到哪一个。

最后,鲍勃将计算结果返回给爱丽丝,双方分享计算结果。由于双方都需要对电路中的每个逻辑门执行若干次对称密钥运算,因此使用混淆电路的方案的计算复杂度相对较高,并且当扩展到参与者较多的计算场景时会更加复杂。

图:通用电路,门和真值表,源:安全计算和加密

零知识证明意味着证明者可以在不向验证者提供任何有用信息的情况下说服验证者断言是正确的。零知识证明有两个或更多的角色:证明者和验证者。演示者声明一个命题为真,而验证者确认该命题是否为真。经典的零知识证明(西格玛协议)通常包括三个步骤:

演示者首先根据命题内容将命题话语发送给验证者,验证者必须对命题内容进行处理并将其转换为秘密话语(通常称为“承诺”),命题内容在以后不能被篡改或否认。

验证者随机生成一个挑战并将其发送给证明者。

根据挑战和命题,演示者生成证明信息并将其发送给验证者。验证者使用证明信息来判断证明者是否通过了挑战。

多次重复这三个步骤可以降低证人因运气而通过挑战的概率。演示者提供的秘密命题讨论有两个功能:一是可以防止演示者临时篡改命题内容;其次,它会使验证者无法知道所有的信息并保持隐私。零知识证明有三个属性:

完整性。如果命题为真,诚实的验证者将被诚实的演示者说服。

可靠性,如果命题是假的,演示者只能以小概率欺骗诚实的验证者。

零知识。验证者只能知道命题是否真实,但不能从整个交互证明过程中获得任何其他有用的信息。安全多方计算通常使用零知识证明作为辅助手段,例如验证恶意节点发送的虚假数据或制作节点身份证书。

安全多方计算的应用及难点

目前,安全多方计算主要通过混淆电路和秘密共享来实现。

基于混淆电路的协议更适合双方逻辑运算,通信负担较低,但可扩展性较差。然而,基于秘密共享的安全多方计算具有很强的可扩展性,支持无限多方参与计算,计算效率高,但通信负载大。目前,安全多方计算的应用可以分为两个部分:数据融合和数据资产化。数据融合使两方或多方能够合并和合作彼此的数据,这是目前安全多方计算能够发挥最大价值的地方。例如,联合信用报告。银行有与用户财务行为相关的数据,而互联网公司通常有关于用户网络使用的数据。如何使双方的数据合作,共同建立一个信用模型,是数据协作中的一个关键问题。利用安全多方计算,我们可以在双方保持隐私的情况下找到公共数据集,基于多方数据训练的信用模型将更加准确,从而为未知情况提供更合理的预测,降低数据融合的外部性。此外,数据安全存储也是一大应用。企业可以利用秘密共享技术秘密存储数据,有效防止内部人员非法窃取数据。同时,存储的数据无需解密即可计算,既保证了安全性,又提高了计算效率。数据资产化的安全多方计算有机会推动数据资产化和数据市场的未来发展。由于安全多方计算可以保证数据传输过程中从技术层面进行数据确认,并在数据的所有权和使用权之间划清界限,企业或个人将能够通过安全多方计算将有价值的数据视为资产,并在市场上流动或交易。数据提供者可以指定使用属性,例如数据的使用、使用量和有效期。数据用户收到数据后,只能在授权范围内合理使用数据,并可以量化或进一步流转剩余数据的使用权。安全多方计算可以将数据市场的本质从数据所有权转变为数据使用权,保护原始数据所有者的权益,有效遏制原始数据的泄露,降低数据泄露造成的数据流通风险,促进数据的大规模应用。未来挑战随着区块链和大数据等技术的逐步发展,我们对数据和计算的要求相对更高。例如,区块链要求匿名,数据计算要求隐私保护。因此,像安全多方计算这样的密码技术在实际应用中会存在解释成本高、效率低的问题。安全多方计算涉及大量的计算和通信,尤其是公钥计算。

目前,安全多方计算的单一操作可以达到毫秒级,这意味着每秒最多可以完成数百次计算。然而,在大数据的情况下,一个数据应用或模型训练通常涉及数十万个数据样本和特征量,因此操作效率将是一个问题。此外,对于一些具有复杂计算任务的在线或实时计算应用,安全多方计算目前可能难以承受。

来源:连锁新闻

btcv挖矿
哈斯基:解释安全多方计算的技术方案、挑战和未
网站分类
友情链接
    热门文章
    标签云
    btcv挖矿