安全多方计算技术特征及应用研究

2021-07-21 08:34:43
twt社区
文章摘要: 安全多方计算技术核心思想是设计特殊的加密算法和协议,从而实现利用加密数据直接进行计算,获得计算结果,同时不知道数据明文内容。

安全多方计算是密码学的一个重要研究领域,解决的是一组互不信任的参与方之间保护隐私的协同计算问题。Gartner研究报告指出,安全多方计算正处于期望膨胀期,技术逐步成型,炒作接近高峰,其发展面临一系列挑战,包括:需提升基础性能以满足大规模商用要求;缺乏相关的法律法规定位;缺乏成熟的市场环境;缺乏行业数据治理基础。安全多方计算在金融、医疗以及政务等行业已有解决方案。对于证券行业,联合安全多方计算和区块链技术构建的解决方案,可以实现数据安全有序地互联互通,满足数据流通中信息保护、权益分配、数据安全、追溯审计方面的需求。

经研究分析,本文提出三项建议:一是推动相关技术和解决方案的内外交流,挖掘应用场景以备实施,并给出三类业务场景作为参考;二是推动安全多方计算的验证性测试环境建设,做好相关技术储备;三是推动建立行业数据共享的合作生态,尝试利用监管沙盒,推动解决方案小范围落地实施。

一、安全多方计算技术简介

(一)概念

安全多方计算(Secure Multi-party Computation,MPC或SMPC)源于1982年姚期智的百万富翁问题[1],是一种分布式计算和加密方法,主要研究的是在无可信第三方的情况下,如何安全的计算一个约定函数的问题。具体而言,安全多方计算允许多个参与方在使用机密数据时数据不出门,可用不可见。

安全多方计算技术核心思想是设计特殊的加密算法和协议,从而实现利用加密数据直接进行计算,获得计算结果,同时不知道数据明文内容。从定义上说,安全多方计算问题可简化示例如图1所示,其中六个人希望在不透漏敏感信息的情况下,计算他们之间的平均年龄。

图1多方安全计算示例

资料来源:Gartner

图1所示循环中的1号人选择一个只有他知道的随机数38,然后将自己的年龄加到该数字上,将其得出的总和发送给2号人,然后2号人将自己年龄加到该总数上,将得出的总和传递给3号人,依此类推。最后的人将总和传回给1号人来,1号人通过减去开始的随机数38并除以参与者数量来完成计算。圈子中的任何人都没有获知他人敏感的任何信息,但是他们之间却能够安全地完成计算。

(二)关键技术及主要特征

安全多方计算主要研究互不信任的参与方之间保护隐私的协同计算问题,主要包括六大关键技术和三大主要特征。其中六大关键技术如下:

(1)同态承诺(Homomorphic commitment)

同态承诺是一种允许一个人向其他人提交任何选定数值而又不泄露该值的密码协议,承诺提交后不能更改,且事后可公开验证。同态承诺允许在提交的承诺上进行计算而不失去承诺的保密、不可更改及事后可验证的特征。

(2)零知识证明(Zero—Knowledge Proof)

零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。

(3)同态加密((Homomorphic Encryption)

同态加密是一类具有特殊自然属性的加密方法,可在密文域下进行数据运算的加密算法。与一般加密算法相比,同态加密除了能实现基本的加密操作之外,还能实现密文间的多种计算功能,即先计算后解密等价于先解密后计算。

(4)混淆电路(Garbled Circuit)

混淆电路的基本思想是将计算电路的每个门都加密并打乱,保证计算过程中不会泄露原始输入和中间结果。双方根据各自输入依次进行计算、解密方可得到唯一的正确结果,无法得到结果以外的其他信息,从而实现双方安全计算。

(5)不经意传输(Oblivious Transfer)

不经意传输协议是一种可保护隐私的秘密协议,它使得服务发送方和服务接收方以不经意的方式交互信息,从而可达到保护隐私的目的。不经意传输协议是一个两方安全计算协议,接收方从发送方的数据中选取部分数据,协议使得接收方除选取的内容外,对剩余数据一无所知,并且发送方也无从知道被选取的内容。

(6)秘密分享(Secret Sharing)

秘密分享的基本思想是将数据切割成多份,并分发给不同的参与者,每个参与者持有其中一份,协作完成计算任务(比如加法、乘法运算)。因为参与者看不到数据全量信息,从而实现数据隐私保护。

安全多方计算关键技术天然具有输入隐私性、计算正确性和去中心化三大主要特征,具体如下:

(1)输入隐私性

安全多方计算研究的是在无可信第三方的情况下,如何安全地计算一个约定函数的问题,同时在安全多方计算过程中保证各参与方的输入保证独立性和本地数据与隐私不被泄漏。

(2)计算正确性

安全多方计算参与者根据一定的相关逻辑,在保证数据隐私的情况下,从本地数据中进行采集并计算,最后将输出的计算结果发送至指定节点,多方完成协同计算任务,输出唯一性结果。

(3)去中心化

在传统分布式计算中,都有中心节点协调各用户的计算进程,而安全多方计算中,各参与方的权力平等,不存在任何有特权的参与方或者第三方。安全多方计算将数据的使用权与所有权分离,实现了数据的可用而不可见,并在数据生产方、数据需求方以及数据监管方三方相互制约的情况下运营。

(三)发展趋势

Gartner 2020年身份和访问管理技术的成熟度曲线,如图2所示,安全多方计算正处于期望膨胀期,技术逐步成型,炒作接近高峰。

图2安全多方计算成熟度周期

图片

资料来源:Gartner

安全多方计算为大数据安全和隐私保护计算提供了一条重要的技术路径。安全多方计算的发展,有以下几个重要趋势。

一是提升基础性能。在相当长的时间里,安全多方计算的大部分工作集中在可行性研究方面,而在探索实际应用和系统搭建方面起步较晚。随着软硬件技术的不断突破和算法的不断优化,安全多方计算的性能将会大幅提升,它承担的复杂运算任务将会越来越多,可编程的通用型安全多方计算产品将是大势所趋。

二是研究高扩展性协议。提高安全多方计算技术实用价值的关键,是设计出支持大规模计算和复杂网络模型的协议和算法。已有研究人员开始探索利用全同态加密技术减少安全多方计算协议的数据交互量,提高其在大数据计算下的效率。分布式中心化的部署模式,利用少数计算节点承担大部分的计算需求。分布式网络下的高扩展性研究,是重要研究方向。

三是与区块链和其它可信计算技术相结合。区块链可作为安全多方计算技术的监控和认证保护,区块链技术的去中心化、不可篡改等技术特性,将进一步增强安全多方计算的安全存储和隐私保护性。

(四)发展面临的主要挑战

国内安全多方计算存在广阔应用空间,但由于技术发展仍不完善,因此也面临着一些问题。

一是满足大规模商用,亟需提升安全多方计算技术性能。由于安全多方计算的加密机理复杂、交互次数多,当流通的数据量较大或结构较为复杂时,复杂算法的联合建模效率难以令人满意。

二是安全多方计算技术市场还需培育。目前安全多方计算技术的市场还不成熟,且培育难度较大。一方面,由于安全多方计算技术复杂且常常呈现“黑盒化”现象,大部分用户对安全多方计算缺乏理解和信任。另一方面,安全多方计算处理的对象往往是敏感的数据资产,试错的成本较高,增加了用户的接受成本。

三是缺乏高质量和规范性的数据支持。安全多方计算算法对数据规范性和数据质量要求较高,而多数行业或全社会的数据治理水平有待提高,所以技术应用存在障碍。

四是安全多方计算地位缺少明确法律支持。例如,《中华人民共和国网络安全法》中规定“未经被收集者同意,网络运营者不得向他人提供个人信息”,同时设置了“经过处理无法识别特定个人且不能复原”的例外条款。将个人信息用于安全多方计算是否属于这一例外条款,法律法规及相关标准等并无明确界定。此外,在用户授权、数据脱敏等环节,安全多方计算在操作过程中也存在法律争议。

二、安全多方计算的应用场景

(一)金融行业

国内安全多方计算产品主要应用于金融行业的风控和获客场景,即多家金融相关机构在不泄露客户个人信息的前提下对客户进行联合画像和产品推荐,在多头借贷等场景下能有效降低违约风险。

银行在使用金融科技公司的系统对接数据服务时,存在自身数据泄漏的风险。例如,进行客户三要素(姓名、身份证号、手机号)核验查询、风控评分查询,即使对查询客户的三要素进行加密处理(如MD5加密等传统方法),依然有可能被对方通过全量数据库碰撞而获得该查询客户的信息。

基于安全多方计算技术方案,可以解决客户信息泄露问题和样本数据集的合规问题。在对外查询时,不使用明文,也不使用简单的MD5哈希加密,而是用两方加密计算,实现查询方能得到想要的数据,而被查询方无法得知其查询的是哪个客户。

(二)医疗行业

医疗行业正在成为安全多方计算关注重点。在医疗机构之间或医疗机构与其它数据方(如保险公司等)可以在不共享原始数据的情况下,安全多方计算技术,使个人健康数据等敏感信息的利用成为可能。

例如,安全多方计算为临床科研的医疗数据共享提供了解决方案。在建立分散存储的标准化数据库基础上,应用安全多方计算技术,实现分布式的统计分析算法,对数据库进行联合数据分析,满足临床研究需求。

除此之外,医疗机构与保险机构之间的数据合作正在快速展开。

(三)其它行业

政务行业有望成为安全多方计算下一个应用重点。安全多方计算提供了政府数据与电信企业、互联网企业等社会数据融合的解决方案。

跨行业数据融合的需求也正催生新的安全多方计算技术应用场景。例如汽车行业和保险行业。国外UBI保险业务结合汽车数据与保险公司的数据制定详细的保险方案,即利用安全多方计算技术解决各个行业数据保护问题。

三、证券行业应用可行性分析与建议

(一)应用可行性分析

如前文所述,已知的金融行业的安全多方计算解决方案,主要围绕银行借贷或营销场景而设计。目前尚未了解到面向证券业务的解决方案和应用案例。

数据已经被证券行业各方机构普遍视为重要资产。证券公司可以利用从外部收集的客户数据、产品数据、行情及交易数据、监管数据、市场数据、营销服务数据,构建业务场景,筛选目标客户进行精准营销,预测行情,提升行业与市场洞察,实施风险评估与产品定价。

但现阶段,在缺乏明确法律保护和监管引导的情况下,各方机构普遍没有意愿主动共享自身数据,都希望获取更多优质的外部数据。究其原因,一是缺乏数据共享的激励机制,机构共享数据可能产生的利益损失无法通过其他途径的收益来补偿;二是在传统中心化系统下,缺乏平等互信的机制来确保数据在多个对等实体间流通;三是传统的脱敏技术也无法确保数据的隐私安全问题;四是传统技术手段,无法阻止数据在共享后被消费端滥用的情况;

如前文发展趋势所述,与区块链技术相结合,是安全多方计算应用发展的趋势之一。区块链技术可以解决上述第一、二点问题,而安全多方计算技术可以解决上述第三、四点问题。

联盟链方案下,参与数据流通的各方机构,拥有区块链分布式结构中的节点,数据供需双方通过链上智能合约发布和达成数据交换事务,具体事务记录、交换数据的内容或特征、抽样、摘要被记录于分布式账本,监管方作为联盟链成员,对数据流通过程进行监督和公证。联盟链运营方负责链上成员管理和对流通数据的规范化约束。区块链技术确保了链上各方成员对分布式账本记录结果达成一致性认可,并防止记录被篡改,解决由于缺乏平等互信的机制所导致的信任问题。智能合约技术为设计丰富的激励机制提供了可靠、可扩展的技术手段。

安全多方计算技术,关注计算过程中对于输入数据的保密性,可以在不泄漏原始数据的前提下,为数据需求方提供多方协同计算能力,使得需求方可以融合各方加密后的数据,并计算形成整体数据画像。在数据不离开数据拥有者的前提下,完成数据的分析、处理和结果发布。安全多方计算技术解决了传统脱敏技术的安全隐患和共享数据被滥用的风险。

(二)观点与建议

基于对安全多方计算技术的理解和行业应用分析,我们认为,安全多方计算技术可以有效解决行业数据流通中的隐私保护需求。联合安全多方计算和区块链技术构建的解决方案,可以实现数据安全有序互联互通,满足数据流通中信息保护、权益分配、数据安全、追溯审计方面的需求。

有关安全多方计算技术的后续工作,本文给出如下建议:

(1)推动相关技术和解决方案的内外交流,挖掘应用场景以备实施

建议重点考虑的场景如下:

企业信用评级,面向企业的金融服务,越来越多得与企业间信用交易相关,如供应链金融。传统的区块链方案能够将供应链商流、物流、信息流等各类信息形成链上不可篡改的数据记录并实现实时信息共享,但无法消除企业对于核心商业信息泄露的担心。企业对于共享核心商业信息缺乏动力,使得链上数据不能完整体现供应链上信用交易情况,继而无法基于链上数据形成准确的信用评级。安全多方计算技术,确保了各机构核心数据隐私和安全,结合区块链技术实现的数据共享分布式架构,促进了数据的流通和价值发现。行业层面,有助于提高数据利用率,减少金融机构的尽调成本,提升风控能力。公司层面,有助于公司构建面向产业链的合作生态,获取一手企业数据,支撑投行、资管业务发展。

金融产品销售,传统财富管理模式下,了解客户投资偏好,提供个性化投资建议与服务,需要高昂的沟通成本。与企业信用评级的解决方案类似,传统区块链方案,理论上为来互联网应用场景的提供方、银行等金融机构、政府机构等各方提供了数据共享的平台,但出于商业利益的考虑和隐私数据监管日益加强,区块链方案难以促成各方主动共享有价值信息,更无法避免数据在拥有者不知情的情况下被滥用。联合安全多方计算为客户多维数据的隐私保护提供了技术保障,使得数据提供方可以更好得管控数据用途,使得数据共享成为提升竞争力的有力手段。数据使用方可以充分利用多维数据丰富用户画像,实现金融产品精准营销。

KYC共享,即“了解您的客户”。当客户在金融机构开立账户或者开办业务时,金融机构需要对客户进行身份验证。对于客户而言,在每一家金融机构都需要反复提交相同材料,对于行业而言,带来了大量重复性的工作。传统区块链解决方案,为各方机构提供了客户KYC信息共享的分布式存储架构,但直接共享KYC信息的方案,很可能违反有关个人金融信息保护的法律法规要求。开户或业务办理中的KYC约束,主要是为了证明投资者对于法律法规条款的遵守情况。安全多方计算技术作为客户身份合规的“计算过程”,可以隔离客户身份信息与客户身份合规的证明结果。身份合规证明在区块链可验证计算的环境下共享,而客户身份信息,则作为安全多方计算的输入被保护,外部机构仍不可见。联合安全多方计算与和区块链构建的解决方案,使得金融机构间可共享KYC的客户合规证明信息,而客户无需在不同金融机构间重复提交信息,减少了行业的合规成本。

(2)推动安全多方计算的验证性测试环境建设,做好相关技术储备

安全多方计算技术的应用研发需要具备一定的基础算法能力。公司不具备这类人才储备,应推动公司与外部高校或科技公司在技术上的合作,推动验证性测试环境的建设工作。结合解决方案中的技术需求,以实现某一类具体技术指标(如实现或优化某一类算法、满足某一类性能指标)为目标,组织实施外部产品技术选型和验证性测试,为后续小范围内实施做好技术储备。

(3)推动建立行业数据共享的合作生态,尝试利用监管沙盒推动解决方案小范围落地实施

虽然安全多方计算和区块链技术可以满足机构间数据共享所需的信息保护、权益分配、数据安全、追溯审计等特性,但由于对金融数据共享和使用缺乏明确的法律约束和监管指引,解决方案落地还需“破冰”。近日,央行上海总部公布了上海首批金融科技创新监管试点应用,即上海版“监管沙盒”。之间,深圳、成都、广州也陆续加入金融科技创新试点城市名单。上海试点项目聚焦于人工智能、大数据、区块链、多方计算等前沿技术。我司应积极申报此类试点项目,在金融科技监管框架下,联合多方机构建立数据共享生态,推动解决方案小范围内落地实施。

(三)安全多方计算产品

从产品名称和产品特点分析国内外部分安全多方计算产品,具体情况如表格1所示。(根据公开信息整理,仅供参考,不做比较。最新信息请以官网发布为准。)

表1安全多方计算部分产品

信息化软件服务网 - 助力数字中国建设 | 责编:莎莉
文明上网,理性发言!请遵守新闻评论服务协议
评论