导读:混淆电路(GarbledCircuit),又称姚氏电路(Yao’sGC)是由姚期智教授于1986年针对百万富翁问题提出的解决方案。
它的核心技术是将两方参与的安全计算函数编译成布尔电路的形式,并将真值表加密打乱,从而实现电路的正常输出而又不泄露参与计算的双方私有信息。由于任何安全计算函数都可转换成对应布尔电路的形式,相较其他的安全计算方法,具有较高的通用性,因此引起了业界较高的关注度。
混淆电路发展
姚氏电路是基于半诚实模型(semi-honest)的安全两方计算(Two-Party-Security-Computation)。
简单来说,可将整个计算过程分为两个阶段:
第一阶段将安全计算函数转换为电路,称之为电路产生阶段;
第二阶段,利用OT、加密等密码学原语等执行电路,称之为执行阶段。
每一阶段由参与运算的一方来负责,直至电路执行完毕输出运算后的结果。针对参与运算的双方,从参与者的视角,又可以将参与安全运算的双方分为电路的产生者(circuitgenerator)与电路的执行者(circuitevaluator)。
示意图如下所示:
辉瑞支持的VitaDAO投票决定创建营利性公司以资助长寿研究:金色财经报道,辉瑞支持的 VitaDAO 成员周三发布推文称,为了弥补 VitaDAO 的资金缺口,目前正在讨论建立一家美国营利性公司的提议,这将弥合研究和商业化之间的差距。该公司将作为 VitaDAO 的子公司或附属公司运营。如果获得批准,该提案将在 2023 年 4 月 3 日至 6 月 12 日之间进入为期 10 周的执行阶段。据悉,这家名为 VitaTech 的公司将利用公共资金来许可美国大学开发的长寿技术,并支持它们的持续发展。[2023/4/6 13:46:54]
▲?步骤一:电路产生阶段
参与运算的双方先就需要安全计算的目的依靠专有编程语言(DSL)或相关编程语言扩展等进行编程,然后针对实现计算的程序进行编译,生成布尔电路文件;
然后针对双方输入值以及中间输出结果随机产生映射label,再利用这些label做为key对每个对应的电路输出真值表采用分组密码方式进行加密,并对真值表值进行打乱操作,这一步就是混淆电路的概念。
▲?步骤二:电路执行阶段
电路执行者针对布尔电路文件进行执行,执行时电路生成者需要将自己的输入所对应的label发给电路执行者;电路执行者依据自己所有信息通过OT方式选择自己对应的label,这样电路生成者与执行者均不到对方的输入数据;电路执行者此时获取双方输入对应的label,作为key的相关信息对真值表进行解密,即可获取真值表的内容,循环往复,直至所有电路执行完毕,输出执行结果。
安全研究员:基于安卓的设备近期受到加密挖矿僵尸网络的攻击:整个8月,网络安全公司Trend Micro的网络威胁研究员Jindrich Karasek一直在监控一个以加密货币挖矿为重点的恶意软件活动。Karasek称,在设置了Honeypot环境以允许Karasek模拟安卓连接设备后,曾发生多次尝试入侵活动,Karasek推测是安装了非法加密挖矿僵尸网络。据研究人员称,一些网络罪犯似乎已经将注意力从入侵电脑系统转移到访问基于安卓系统的设备上,如手机、售货亭、平板电脑和智能电视。可能是因为这些设备在很大程度上没有受到保护,这使得它们很容易受到攻击。正因为如此,恶意软件可以通过搜索开放的安卓调试桥(ADB)端口来攻击设备,并利用Secure Socket Shell(SSH)进行传播,SSH是一种加密的网络协议,用于提供安全的远程登录,甚至在不安全的网络上。(BeInCrypto)[2020/9/14]
姚氏电路是第一个安全两方计算协议,后续大多数安全地计算布尔电路/算术电路的安全多方计算协议都是基于姚氏混淆电路进行扩展的。
比较常见有GMW/CCD/BGW/BMR等,这些协议将姚氏协议支持的两方安全计算扩展到多方安全计算;将布尔电路扩展到算术电路;将安全模型由半诚实模型扩展到恶意模型,以抵抗一定数量恶意敌手攻击。
上期文章已经就两方安全计算混淆电路进行介绍,我们在此基础上介绍下支持多方安全计算协议GMW。
研究员:流通中的每43枚比特币中就有1枚由灰度持有:加密研究员Kevin Rooke发推称,Grayscale(灰度)在GBTC基金中持有超过42.9万枚比特币。也就是说,流通中的每43枚比特币中就有1枚是灰度持有的。这不真实。[2020/9/3]
GMW协议介绍
GMW协议是由Goldreich等人提出,支持多方(2+)安全计算,它不但支持布尔电路还支持算术电路。但与姚氏电路协议略有不同,电路评估时不再使用混淆的真值表,而是在本地直接进行计算,这样大大节省混淆真值表带来的解密操作,节省比较多的计算量。
GMW协议采用秘密分享及OT等常见的加密原语,可将整个计算过程分为三个阶段:
▲?秘密分享阶段
参与运算的多方将自己的私有数据采用线性秘密分享方式对参与运算的多方进行秘密分享,保证每一个参与方都可以获得自己秘密的分量。
▲?电路执行阶段
将接收到的每个秘密分量输入到电路中,本地逐门执行电路(AND门需要再执行OT协议),重复此过程,直到所有门都执行完成,获得结果的分量。
▲?结果广播再计算
每一方将最后的执行结果广播出来,各参与方获得各个参与方结果分量后求取最终结果。
举例分析
参与运算的双方有Alice和Bob:
动态 | 孙宇晨称将启动一个秘密项目,遭The Block研究总监等人嘲讽:孙宇晨发推表示,“将为BitTorrent、DLive启动一个秘密项目。根据保守预测,该项目将为BTT和TRX生态系统创造至少数十亿美元的收益,并吸引至少1亿新用户。详情待公布。”The Block研究总监Larry Cermak转发并评论称,这条推文证明需要某种监管。“保守估计将带来1亿用户和数十亿收益的秘密项目。”别说这些废话了。EthHub创始人Eric Conner则表示,“我不确定这是否意味着需要监管,只是意味着子应该被逮捕。”Larry Cermak回复称,“为什么被捕?这正是问题所在。”[2020/1/12]
Alice拥有私密信息u,将秘密进行加法秘密分享(additivesecretsharing)后,使得⊕=u,可以看作u的秘密分量,Alice将发给Bob;
Bob拥有私密信息v,将秘密进行分拆后,使得⊕=v,可以看作v的秘密分量,Bob将秘密分量发给Alice。
这样Alice与Bob都拥有彼此的秘密分量,如下表所示:
PartyAlice_shareBob_sharecommentsAliceAliceholdssharesBobBobholdsshares
uv
(1)布尔电路之XOR(相当于加法)
动态 | 世界经济论坛研究确定应对环境问题的区块链技术用例超过56个:据消息,世界经济论坛(WEF)发起了一项名为“塑造环境和自然资源安全的未来”的倡议,致力于在不损害环境的情况下实现全球经济增长。倡议已经发表了大量的研究论文,区块链技术也在其中:WEF与普华永道(PWC)和斯坦福大学(Stanford University)的斯坦福伍兹环境研究所(Stanford Woods Institute for the Environment)合作,发表的一篇题为《构建更美好地球的链条》(Building Block(chain)s for a Better Planet)的研究论文。世界经济论坛为论文进行的研究和分析已经确定了超过65个区块链技术在应对环境挑战方面的用例,表明该领域的用例存在潜力。[2018/11/18]
Alice与Bob安全计算和(异或门),表示成电路形式如下所示:
Alice和Bob进行秘密分享后,Alice与Bob获取的秘密分量及计算电路如下所示:
Alice与Bob分别在本地执行此电路:
Alice:u1⊕v1?=w1
Bob:u2⊕v2?=w2
Alice与Bob分别将执行电路后的结果分量广播出去,本地计算后获取最终结果:
w1⊕w2?=(u1⊕v1)⊕(u2⊕v2)
=(u1⊕u2)⊕(v1⊕v2)?(异或满足交换律)
=u⊕v
(2)布尔电路之AND(相当于乘法)
Alice与Bob安全计算乘积(and门),其表示成电路的形式如下所示:
Alice和Bob进行秘密分享后,Alice与Bob获取的秘密分量及计算电路如下所示:
Alice本地计算AND门时,求得u1v1
Bob本地计算AND门时,求得u2v2
可以发现还缺少其他分量u1v2⊕?v1u2,此时GMW协议构造1-4OT进行计算,Alice作为sender,拥有变量u1,v1,Bob拥有选择bit变量u2和v2,作为receiver。
记T=(u1v2)⊕(v1u2),Alice在构造1-4OT时,对真值表加了干扰σ⊕T,这样做的目的主要是防止Bob根据T的结果推测出Alice的秘密分量u1。
经过1-4OT后,双方值情况如下:
Alice计算得到的值为:u1v1⊕σ
Bob计算得到的值为:u2v2⊕σ⊕T
Alice与Bob分别将本方的结果分量广播出去,本地计算后获取最终结果:
w=u1v1⊕σ⊕u2v2⊕σ⊕T
=u1v1⊕u2v2⊕T
=u1v1⊕u2v2⊕(u1v2⊕v1u2)
=(u1+u2)⊕(v1+v2)
三方或者更多方扩展
(1)异或门(XOR)
各参与方获得各个分量后本地执行电路,与两方计算类似,然后广播自己本地计算结果,当收集全各个参与方自己计算结果时再计算最终结果。
(2)与门(AND)
c=a∧b,a1...an,b1..bn代表a,b分量
每个参与方本地计算ai⊕bi,然后每两个参与方相互组合计算ai⊕bj
最后各参与方广播自己最终本地计算结果(a∧b分量),求得最终安全计算结果a∧b
总结
混淆电路的优化可以分为两个方面:
一方面:电路优化(circuitoptimization),主要是减少编译后电路的size,常用技术有free-xor/Garbledrowreduction/Circuitsimplification等;
另一方面:执行阶段优化,常用的技术有fasttablelookup(减少解密混淆真值表次数)和pipelinedcircuitexecution(将原来电路的产生与执行两阶段转换成一个阶段,一边产生一边执行电路,这样可以提高安全计算的效率)。?
基于姚氏混淆电路进行扩展的协议与方法,大多已不再使用混淆真值表的做法,只保留电路的形式,且为了扩展至多方(2+)安全计算,普遍采用秘密分享/不经意传输等技术。
相较其他安全计算方案,混淆电路是一种比较通用的解决方案,安全性相对高,但其性能一般,尤其是当参与运算多方数目超过3+且数据量较大时,安全计算的过程中通信量会比较大(两方各1000个数据情况下求PSI通信量可达到GB数量级),特别不适合带宽受限或WAN网络环境下使用。
所以业内给混淆电路的评价是“efficientbutexpensive”,有效但计算代价比较高。
作者简介
滕海明
来自趣链科技数据网格实验室BitXMesh算法研究团队
研究方向:数据安全
本文来源:中国宏观经济论坛CMF作者:邵宇,东方证券首席经济学家以下观点整理自邵宇在中国宏观经济论坛宏观经济热点问题研讨会上的发言对数字货币的界定?货币就是指M0、M1、M2.
1900/1/1 0:00:00美国财政部长提名人耶伦周二在参议院的确认任命听证会上表示,加密货币令人担忧。她强调了加密货币的在非法活动中使用的情况,她指出,加密货币是恐怖分子在融资和方面的特别关注点.
1900/1/1 0:00:0012月23日,灰度官方发布《2020年第三季度数字资产投资报告》。报告显示,2020年第三季度灰度数字资产总投资金额达10.5亿美元。这一数字创下灰度季度资金流入最高纪录.
1900/1/1 0:00:00作者?|?AlexMenUskin以太坊的黑暗森林怪物并不是开玩笑的。这些Frontrunning的机器人可以分析它们从未在智能合约中使用过的智能合约调用和功能,以获取潜在利润.
1900/1/1 0:00:00据外媒1月9日报道,Web3APIDAO正式完成了100万美元的前种子轮融资。参与次轮融资的包括RarestoneCapital、TRGC、Gnosis、AutarkVentures、MANTR.
1900/1/1 0:00:001月9日,跨链项目Cosmos核心开发者JackZampolin表示,CosmosHub治理提案将于下周发布,如果提案通过,Cosmos网络将于大约1月25日进行升级,同时也意味着.
1900/1/1 0:00:00