一、安全多方计算产生背景
??如今,互联网已经完成了从IT时代向DT时代的转变,数据已经成为DT时代企业的核心竞争力。二数据作为一种新能源,只有流动起来才能产生价值。不过,大多数的企业考虑到数据安全和个人隐私等问题,对数据共享都非常谨慎。面对现实生活中产生的“数据孤岛”现象,安全多方计算的出现提供了一种解决方案,为实现数据的可控共享做出了重大贡献。
二、安全多方计算简要介绍
??安全多方计算(Secure Muti-party Computation,简称MPC,亦可简称SMC或SMPC)的研究主要是针对无可信第三方的情况下,如何安全地计算一个约定函数的问题。安全多方计算是电子选举、门限签名以及电子拍卖等诸多应用得以实施的密码学基础。 ??一个安全多方计算协议,如果对于拥有无限计算能力的攻击者而言是安全的,则称作是信息论安全的或无条件安全的;如果对于拥有多项式计算能力的攻击者是安全的,则称为是密码学安全的或条件安全的。已有的结果证明了在无条件安全模型下,当且仅当恶意参与者的人数小于总人数的1/3时,安全的方案才存在。而在安全条件模型下,当且仅当恶意参与者的人数小于总人数的一半时,安全的方案才存在。
三、安全多方计算的发展历程
??用于特定任务特定目的的“安全多方计算协议”可以追溯到1970年代后期。但能够安全地计算任何功能的通用安全多方计算起源于1982年。1982年华裔计算机科学家、图灵奖获得者姚期智教授提出了百万富翁问题,该问题表述为:两个百万富翁Alice和Bob想知道他们两个谁更富有,但他们都不想让对方知道自己财富的任何信息。在双方都不提供真实财富信息的情况下,如果比较两个人的财富多少,并给出可信证明。此问题正式引入了一种基于混淆电路的两方安全计算方法,后来又逐步产生了多种基于混淆电路的和基于秘密共享的算法。我们可以把安全多方计算的历史分为3个阶段: ??阶段一,从姚期智引入两方安全计算,距今已经有30多年了。其后又出现了各种不同的安全多方计算算法。大多数这些工作只是理论研究,因为他们效率太低了并不实用。 ??阶段二,为了解决效率问题,密码学家已经为多种用例开发出了高度优化的专用安全多方计算算法。但从头开始为每个应用设计,并不能促进安全多方计算的广泛使用。 ??阶段三,自从2000年代后期,确切来说从2010年开始,才开发出用于在任意函数上执行安全多方计算的通用编译器。这些项目迅速改进了现有技术,并开始使非专业用户可以使用安全多方计算。安全计算算法的显着改进以及硬件性能的稳定增长使安全多方计算成为解决大量现实问题的可行解决方案。现代安全多方计算协议实现足够快,可以安全地评估中等大数据集上的复杂函数,例如,具有数十到数十万个观测值的安全回归分析的众多实现。
四、安全多方计算的主要特点
??安全多方计算理论主要研究参与者间协同计算及隐私信息保护问题,其特点包括输入隐私性、计算正确性及去中心化等特性。能使数据既保持隐私又能被使用,从而释放隐私数据分享,隐私数据分析,隐私数据挖掘的巨大价值。 ??输入隐私性:安全多方计算研究的是各参与方在协作计算时如何对各方隐私数据进行保护,重点关注各参与方之间的隐私安全性问题,即在安全多方计算过程中必须保证各方私密输入独立,计算时不泄露任何本地数据。 ??计算正确性:多方计算参与各方就某一约定计算任务,通过约定MPC协议进行协同计算,计算结束后,各方得到正确的数据反馈。 ??去中心化:传统的分布式计算由中心节点协调各用户的计算进程,收集各用户的输入信息,而安全多方计算中,各参与方地位平等,不存在任何有特权的参与方或第三方,提供一种去中心化的计算模式。
五、安全多方计算的关键技术
??根据参与方个数不同,可分为两方计算(two party computation,简称2PC)和多方计算(multi-party computation)。 ??主流的两方计算框架的核心是用了混淆电路(Garbled Circuit,简称GC)和不经意传输(Oblivious Transfer)这两种密码学技术:一方将需要计算的逻辑转换为布尔电路,再将布尔电路中的每一个门进行加密的过程。在完成该操作后,该参与方将加密电路以及与其输入相关的标签发送给另一参与方,而另一方无法从标签中反推输入的信息。另一方(作为接收方)通过不经意传输按照其输入选取标签,并在此基础上对加密电路进行解密获取计算结果。 ??通用的多方安全计算框架可以让多方安全地计算任何函数或某类函数的结果。自1986年姚期智提出第一个通用的多方安全计算框架(常被称为Yao’s GC,即姚氏加密电路)以来,30多年间已经有BMR、GMW、BGW、SPDZ等多个多方安全计算框架陆续提出。至今,每年仍有大量的研究工作在改进和优化这些多方安全计算框架。这些框架涉及混淆电路、秘密共享(Secret Sharing,由Adi Shamir最先提出,秘密分享的原理是将每个参与者的输入分割为若干分片,散布在所有参与者当中,并通过这些分片来进行电路计算)、同态加密、不经意传输等多种密码学技术。
六、安全多方计算的应用场景
??作为一项生命力强大的技术体系,多方安全计算为数据融合的落地场景提供了强有力的底层技术支持,在实际应用中可扩展性强,能够灵活适配,前景广阔。 ??第一种,数据融合场景。从目前的数据集融合应用和将来的数据流融合应用两个角度分别进行描述。 ??数据集融合,多方安全计算能在数据集上实现联合查询与统计分析、数据建模与预测、个人信息隐私保护、信息安全存储等应用。典型的应用场景有:联合查询与统计分析、个人隐私保护、模型训练与预测分析、 信息安全存储等。数据流融合,相对于静态数据集上的应用,将来5G/6G技术兴起后,在高带宽、低时延的网络传输场景中,MPC基于数据源的密码处理特点将更有优势,能够避免传统密码技术在数据存储保护和传输保护之间的转化处理过程,减少密码运算环节,提升数据流通效率。 ??第二种,数据资产化场景。 ??展望未来,多方安全计算还能实现伟大的愿景:促使数据资产化,促进数据市场的发展。由于MPC能够为数据传递过程中的数据确权问题奠定技术基础,使数据的所有权和使用权合理剥离,因此企业或个人将会把数据视为一种重要的资产在数据市场上进行交易。在MPC的助力下,数据提供方可以规定数据的用途、用量、有效期等使用属性,数据的使用者在拿到数据后只能在授权范围内合理地使用数据,并能够将剩余数据的使用权再次转让给第三人。MPC技术将数据交易的本质由数据所有权转向数据使用权,保障原始数据所有者的权益,有效遏制原始数据泄漏,降低数据泄漏引起的数据流通风险,促进数据的大规模应用。基于此,数据价值链将会被重构。
七、安全多方计算与区块链的结合
??安全多方计算,支持互不信任的个体,在无可信第三方的情况下,进行保护隐私的计算。这和区块链的互不信任的网络,去中心化特性,解决信任问题的目标极其吻合,因此也受到了区块链行业的欢迎。 ??区块链安全多方计算市场,隐私智能合约。有时,比起获得单个的个人隐私数据,人们更感兴趣于对与这个人相关的数据进行统计分析,获取汇总的答案通常更有意义。区块链安全多方计算市场或隐私智能合约就可以解决这类问题。安全多方计算使得不可信的多方之间,可以进行敏感数据联合计算、敏感数据求交集、敏感数据联合建模等。这个过程与智能合约结合,则可以实现隐私智能合约,自动化支付,并形成一个安全多方计算市场。 ??基于安全多方计算的密钥管理。在数字货币里拥有账户的私钥就表示拥有了资金的所有权。为了提高资产安全,尤其是大额资产,目前有两种方案:多重签名和秘密共享。 ??基于安全多方计算的随机数生成。去中心化系统中随机数生成是一个难题,有的区块链系统采用安全多方计算的方法来生成公平的不受单个个体操纵的随机数。 ??安全多方计算技术框架在不断发展,使得安全多方计算的通用型和性能得到提高。安全多方计算的应用将大量出现。同时,它在区块链系统中的作用也在不断被挖掘,区块链多方计算成为了当下一个受瞩目的技术亮点。
八、技术难点及未来展望
??当然,技术的发展需要时间。区块链+安全多方计算项目需要克服两大技术难点。 ??一个是网络等待时间,传输速率,数据包丢失以及节点的数量会严重影响安全多方计算运行时间、内存分配和传输的数据量。在区块链系统中,尤其是公链系统中,如何克服难题提高效率是难点之一。 ??一个是链上和链下如何配合,如何验证参与方是否正确地执行了安全多方计算,是另一个难点。 ??虽然存在技术难点,但安全多方计算技术是一项非常有前景的技术。且经过这些年的发展,已经非常接近落地了。而安全多方计算和区块链技术的组合也是非常适合的,在将来可能和区块链一同成为通用的基础设施,解决信任问题,释放巨大价值。
|