第162篇 笔记-安全多方计算
创始人
2024-06-02 17:48:07
0

一、主要概念

安全多方计算(Secure Multi-Party Computation):指多个参与者在不泄露各自隐私数据情况下,利用隐私数据参与保密计算,共同完成某项计算任务。

该技术能够满足人们利用隐私数据进行保密计算的需求,有效解决数据的“保密性”和“共享性”之间的矛盾。多方安全计算包括多个技术分支,也可以认为是一堆协议集,主要包括:

  1. 秘密共享:将秘密以适当的方式拆分,拆分后的每一个份额由不同的参与者管理,单个参与者无法恢复秘密信息,只有若干个参与者一同协作才能恢复秘密消息。更重要的是,当其中任何相应范围内参与者出问题时,秘密仍可以完整恢复。

  1. 同态加密:一种允许在加密之后的密文上直接进行计算,且计算结果解密后和明文的计算结果一致的加密算法。这个特性属性对于保护信息的安全具有重要意义,利用同态加密技术可以先对多个密文进行计算之后再解密,不必对每一个密文解密而花费高昂的计算代价;利用同态加密技术可以实现无密钥方对密文的计算,密文计算无须经过密钥方,既可以减少通信代价,又可以转移计算任务,由此可平衡各方的计算代价,利用同态加密技术可以实现让解密方只能获知最后的结果,而无法获得每一个密文的消息,可以提高信息的安全性。

  1. 不经意传输:一种可保护隐私的双方通信协议,消息发送者从一些待发送的消息中发送某一条给接收者,但并不知道接收者具体收到了哪一条消息。不经意传输协议是一个两方安全计算协议,协议使得接收方除选取的内容外,无法获取剩余数据,并且发送方也无从知道被选取的内容。

  1. 零知识证明:证明者能够在不向验证者提供任何有用信息的情况下,使验证者相信某个论断是正确的。

  1. 混淆电路:双方进行安全计算的布尔电路。混淆电路将计算电路中的每个门都加密并打乱,确保加密计算的过程中不会对外泄露计算的原始数据和中间数据。双方根据各自的输入依次进行计算,解密方可得到最终的正确结果,但无法得到除结果以外的其他信息,从而实现双方的安全计算。

安全多方计算的优点:

1.基于密码学安全,其安全性有严格密码理论证明,不以信任任何参与方、操作人员、系统、硬件或软件为基础;

2.各个参与方对其拥有的数据拥有绝对的控制权;

3.保障基本数据和信息不会泄露,同时计算准确度高;

4.支持可编程通用计算。

二、在区块链中的应用

在安全多方计算中,程序的输入(更准确地说,是模拟电路的输入,因为安全多方计算不能处理if声明和条件循环)通过Shamir秘密共享算法被分成若干份信息,并且每一份信息分别分发给一位参与者。Shamir秘密共享算法可以用来把任意数据切分成N份,并且只需其中任意K份就能恢复出原始数据,但任意(K-1)份都无法恢复出原始数据。在运行算法时,用户可以算则N和K的值,比如3取2、10取5和1000取501。然后,可以根据切分出来的信息以去中心化的形式来评估电路,从而使得计算完成时每个人都有一份计算结果。但在计算过程中的任何时刻,所有人都对计算状况一无所知。最后,所有的信息都被整合在一起来揭示结果。

这个算法的运行时间是O(n**3),也就是说,它用来评估一个计算的计算步数与参与者数量的三次方大致成正比。比如,在10个节点的情况下,对应1000步计算;而在1000个节点的情况下,对应10亿步计算。一个简单的10亿步计算在普通个人电脑上运行完大约需要10秒,二服务器可以在零点几秒的时间内运行完。因此,在满足计算可行性的前提下,当前节点数量的极限值大约为1000。

结果表明,安全多方计算可以被用来生成区块链的地址和签署交易。地址的生成协议很简单:

  1. 每个人生成一个随机数作为私钥;

  1. 每个人计算对应于私钥的公钥;

  1. 每个人展示自己的公钥,并使用Shamir秘密共享算法来计算一把可以由这1000把已被展示的公钥中的501把密钥重构的公钥;

  1. 地址依据那把公钥生成;

由于公钥可以被整数进行加减乘除运算,这种算法的有效性与预期惊人地完全一致。如果每个人都以相同的方式用1000把密钥中的501把合成一个私钥,则这个密钥将能够花费被发送到它对应公钥所产生的地址里面的资金。

这个方法之所以有效,是因为Shamir秘密共享算法其实只是一个代数公式。也就是说,它仅需要进行加减乘除运算,并且人们在公钥上计算这个公式就像用这个公式计算地址一样简单。因此,无论在私钥转换成公钥的过程之前还是之后使用这一代数都没有关系。签署交易可以用类似的方法完成,只是过程会复杂一些。

相较于多重签名的优势:

假设由1000台可被信任的计算机,令每一台计算机都生成一把私钥,并在它们当中生成一个满足1000取501的多重签名地址。为了使用它里面的资金,只需要使用其中任意501个节点的签名构造一笔交易,然后把这笔交易广播到区块链中。在比特币网络中,这里有一个明显的问题:这笔交易将过于庞大。每个签名大约有70 byte,因此501个签名将有35 KB,而比特币网络默认拒绝脚本超过10 KB的交易,因此这笔交易很难被网络所接受。

安全多方计算可以解决这个问题。

安全多方计算的美妙之处在于,它的应用范围超越了区块链。可以同样方便地用于去中心化组织和公司的运营,甚至人工智能算法。

相关内容

热门资讯

安卓系统的手机导航软件,引领您... 你有没有发现,现在出门在外,手机导航软件简直成了我们的“小向导”,无论你是去陌生的城市,还是只是想换...
安卓系统开发单位,技术革新与产... 你有没有想过,那些陪伴我们日常生活的安卓手机,背后其实有着一群默默无闻的开发团队在辛勤工作呢?他们就...
安卓系统电话区域拦截,智能守护... 你有没有遇到过那种电话,每次接起来都是推销保险的、办信用卡的,或者是那种让你帮忙填问卷的?真是烦死了...
安卓系统优酷代理使用,畅享高清... 你有没有发现,现在用安卓手机看视频,有时候会遇到播放卡顿、广告满天飞的情况?别急,今天就来给你揭秘如...
微信运动适合安卓系统,解锁健康... 你知道吗?现在手机上有个超好玩的运动应用,叫微信运动,它不仅能记录你的步数,还能和朋友们比一比谁更活...
安卓系统kodi怎么设置中文,... 你有没有发现,安卓系统上的Kodi播放器简直就是家庭影院的神器啊!不过,用起来是不是觉得有点小麻烦?...
安卓系统显示信号强度 你有没有发现,每次拿出手机,安卓系统的信号强度显示总是让人摸不着头脑?有时候信号满格,却感觉网速慢得...
安卓系统不能玩nba吗 你有没有想过,为什么你的安卓手机上不能玩NBA游戏呢?是不是觉得这事儿有点奇怪,毕竟安卓系统那么强大...
安卓pc操作系统安装,轻松实现... 你有没有想过,把安卓系统装在你的电脑上,是不是就像给电脑穿上了时尚的潮流外套呢?想象那些你手机上爱不...
ireader是安卓系统吗,i... 你有没有想过,你的ireader阅读器是不是安卓系统呢?这可是个让人好奇的问题,毕竟现在市面上各种电...
安卓系统没有开关机,智能体验无... 你有没有发现,用安卓手机的时候,有时候会突然觉得有点儿奇怪呢?比如说,你按了电源键,手机屏幕却没有任...
美团系统怎么改安卓系统,深度解... 你有没有想过,为什么你的手机上安装的美团APP总是那么流畅,而其他APP却时不时卡顿呢?这背后,其实...
手机安卓系统怎样改定位,安卓系... 你有没有发现,手机定位有时候会不准确,让人有点头疼呢?别急,今天就来教你怎么改手机安卓系统的定位,让...
安卓导航怎么重做系统,系统重做... 你的安卓导航是不是突然卡壳了,或者你只是想给它来个焕然一新的大变身?别急,今天就来手把手教你如何给安...
安卓手写平板系统重装,轻松恢复... 你那安卓手写平板系统是不是突然间就闹起了别扭,各种卡顿、崩溃,让你头疼不已?别急,今天就来给你详细说...
小米刷安卓13系统教程,小米手... 亲爱的米粉们,你是否已经迫不及待想要升级你的小米手机到最新的安卓13系统呢?别急,今天我就要手把手教...
语音包在哪里安卓系统,语音包生... 你有没有想过,有时候一句话就能让气氛瞬间活跃起来?没错,就是那些有趣的语音包!它们就像魔法一样,能让...
htc g10安卓系统,性能与... 你知道吗?最近我在手机圈里发现了一个小秘密,那就是HTC G10这款手机。这款手机搭载的安卓系统,简...
那几款手机是安卓系统 说到手机,安卓系统可是占据了半壁江山呢!市面上那么多手机,哪几款才是安卓系统中的佼佼者呢?今天,就让...
三星安卓系统评测,体验升级 你有没有发现,手机市场里总是有那么几个品牌,它们就像明星一样,总是能吸引我们的目光?今天,咱们就来聊...