【问链财经-区块链基础知识系列】 第二十六课 隐私保护方法:多方安全计算和区块链

编者按:私密计算是解决区块链无法保护隐私的问题。因为区块链上的数据天然是全公开的,任何人都可以查看。假如一个人知道了你的钱包地址,就可以看到你的余额、你所有的转账记录。设想一下买保险的场景,买保险需要提供我的体检报告来证明我的健康状况,假如用区块链来实现的话,代表着我的体检报告就要记录到区块链上昭告天下了,我感觉这样子并不是十分妥当。私密计算就是用来解决这样的问题。

私密计算支持在区块链上记录计算结果,用共识完成对于计算结果的验证,而不暴露计算所用到的原始数据。

比如用哈希(Hash)举例子,我可以在区块链上记录一个哈希值,证明我知道这个哈希值的原始数据,但是不暴露这个原始数据。私密计算上目前在研究的技术主要是安全多方计算(MPC)和零知识证明(zk-SNARKs、zk-STARKs等)。

安全多方计算

安全多方计算(SMC,Secure Multi-Party Computation)是解决一组互不信任的参与方之间保护隐私的协同计算问题,SMC要确保输入的独立性,计算的正确性,同时不泄露各输入值给参与计算的其他成员。主要是针对无可信第三方的情况下,如何安全地计算一个约定函数的问题,安全多方计算在电子选举、电子投票、电子拍卖、秘密共享、门限签名等场景中有着重要的作用。

安全多方计算框架
【问链财经-区块链基础知识系列】 第二十六课 隐私保护方法:多方安全计算和区块链_第1张图片
当一个 MPC 计算任务发起时,枢纽节点传输网络及信令控制。每个数据持有方可发起协同计算任务。通过枢纽节点进行路由寻址,选择相似数据类型的其余数据持有方进行安全的协同计算。参与协同计算的多个数据持有方的 MPC 节点根据计算逻辑,从本地数据库中查询所需数据,共同就 MPC 计算任务在数据流间进行协同计算。在保证输入隐私性的前提下,各方得到正确的数据反馈,整个过程中本地数据没有泄露给其它任何参与方。

安全多方计算理论主要研究参与者间协同计算及隐私信息保护问题,其特点包括输入隐私性、计算正确性及去中心化特性。

输入隐私
安全多方计算研究的是各参与方在协作计算时如何对各方隐私数据进行保护,重点关注各参与方之间的隐私安全性问题,即在安全多方计算过程中必须保证各方私密输入独立,计算时不泄露本地任何数据。

计算正确
多方计算参与各方就某一约定计算任务,通过约定 MPC 协议进行协同计算。计算结束后,各方得到正确的数据反馈。
去中心化
传统的分布式计算由中心节点协调各用户的计算进程,收集各用户的输入信息。而在安全多方计算中,各参与方地位平等,不存在任何有特权的参与方或第三方,提供一种去中心化的计算模式。

应用场景

1. 多头借贷问题

两个网贷公司A和B,想知道借款人是否在对方公司借款了,但他们又不想让对方知道借款人的信息。

2. 百万富翁问题

两个百万富翁Alice和Bob,想知道他们两个谁更富有,但他们都不想让对方知道自己财富的任何信息,这就是百万富翁问题。百万富翁问题是由姚期智提出的,两个百万富翁Alice和Bob想知道他们两个谁更富有,但他们都不想让对方知道有关自己财富的任何信息,这就是百万富翁问题。有具体实现方案。

3. 安全电子选举问题

电子选举方案需要满足,选票保密性、无收据性、健壮性、公平性和普遍验证性等性质。整个选举方案没有可信第三方,任何投票人都可以计票,比一般的方案具有更强的安全性。有具体解决方案。

4. 遗传病诊断

Alice认为她得了某种遗传病,想验证自己的想法。正好她知道Bob有一个关于疾病的DNA模型的数据库。如果她把自己的DNA样品寄给Bob,那么Bob可以给出她的DNA的诊断结果。但是Alice又不想别人知道,这是她的隐私。所以,她请求Bob帮忙诊断自己DNA的方式是不可行的。因为这样Bob就知道了她的DNA及相关私人信息。

5. 业务合作

经过一次花费查后,A公司决定扩展在某些地区的市场份额来获取丰厚的回报。同时,A公司也注意到B公司也在扩展一些地区的市场份额。在策略上,两个公司都不想在相同地区互相竞争,所以他们都想在不泄露市场地区位置信息的情况下知道他们的市场地区是否有重叠。(信息的泄露可能会导致公司很大的损失。比如另一家对手公司知道A和B公司的扩展地区,提前行动占领市场;又比如房地产公司知道A和B公司的扩展计划,提前提高当地的房租等等)所以他们需要一种方法在保证私密的前提下解决这个问题。

6. 电子拍卖
在进行电子拍卖时,各方依赖于拍卖服务器的安全性来进行拍卖活动,但是在实际中,会出现投标者不愿意泄露标的投标价、各方对于拍卖行不信任的情况。而安全多方计算技术的加入则使得电子拍卖成为现实,大部分方案都采取了可验证秘密共享协议或者使用其思想,具备灵活性、保密性、鲁棒性和可验证性。

7. 联合数据查询
以音乐版权为例,国内各大音乐平台的资源不尽相同,使得资源共享的壁垒不断抬高,这不管对于音乐人、用户还是音乐平台自身来说都是一种阻碍。在保障平台私密数据的同时,寻找有效的资源共享方法成为了急需解决的问题。安全多方计算可以解决这种问题,不同数据库资源共享时,多个数据库联合进行数据查询,且不泄露单方信息。

区块链与安全多方计算有一个共同点,都是多个节点协同完成一项任务,不同之处在于区块链所搭建的是一套可信的去信任网络,即保证不会有篡改计算结果的问题发生,但不能做到保护原始数据,而安全多方计算可以在多个节点之间进行协同计算任务时,让数据还保留在原节点上,不会让隐私数据泄露到外界。如果将两者结合在一起就可以做到既限制人为作恶篡改计算结果,又能够保护数据隐私,形成一套非常完整的解决方案。这也是一些区块链项目引入安全多方计算的原因,就是为了提高区块链系统隐私保护方面的能力。

你可能感兴趣的:(区块链那些事儿)