火星链 火星链
Ctrl+D收藏火星链
首页 > MANA > 正文

PRO:如何将交互式证明改造为非交互式?

作者:

时间:1900/1/1 0:00:00

作者:康水跃,FoxTechCEO;孟铉济,FoxTech首席科学家

前言

密码学当中的零知识证明技术在web3世界有着广泛的应用,包括进行隐私计算、zkRollup等等。其中Layer2项目FOX所使用的FOAKS就是一个零知识证明算法。在上述的一系列应用当中,对于零知识证明算法而言,有两方面属性极为重要,那就是算法的效率以及交互性。

算法效率的重要性不言而喻,高效的算法可以明显的降低系统运行时间,从而降低客户端延迟,显著的提高用户体验和效率,这也是FOAKS致力于实现线性证明时间的一个重要原因。

另一方面,从密码学的角度来讲,零知识证明系统的设计往往依赖证明者和验证者的多轮交互。例如在许多介绍零知识证明的科普文章当中都会使用的「零知识洞穴」的故事当中,证明的实现就依赖于阿里巴巴和记者多轮的信息传递交互才能实现。但是事实上,在许多应用场景当中,依赖交互会使得系统不再可用,或者极高的增加延迟。就像在zkRollup系统当中,我们期望证明者能够在本地,不依赖于和验证者交互的情况下就计算出正确的证明值。

JAN3首席执行官受邀与墨西哥参议员就墨西哥如何采用加密货币进行讨论:5月1日消息,据Bitcoin Magazine发推表示,JAN3首席执行官、比特币中国前首席运营官Samson Mow于4月29日与墨西哥参议员兼财政委员会主席讨论了关于墨西哥如何采用加密货币墨西哥如何采用加密货币的问题。

据悉,墨西哥是拉丁美洲最大的经济体之一,如果成功采用加密货币,将为整个地区带来深远的影响,对于加密货币市场来说是一个重要的里程碑。[2023/5/1 14:36:45]

从这个角度说,如何将交互式的零知识证明协议改造为非交互式,就是一个很有意义的问题。在这篇文章当中,我们将介绍FOX使用经典的Fiat-Shamir启发式来生成Brakedown中的挑战从而实现非交互式协议的过程。

零知识证明中的Challenge

零知识证明算法随着应用的铺开而变得异常火爆,近些年也诞生了包括FOAKS、Orion、zk-stark等在内的各种算法。这些算法,以及密码学界早期的sigma协议等的核心证明逻辑都是证明者先将某个值发送给验证者,验证者通过本地随机数产生一个挑战,将这个随机产生的挑战值发给证明者,证明者需要真的有知识才能以大概率做出通过验证者的响应。例如在零知识洞穴当中,记者抛一个硬币,告诉阿里巴巴从左侧出来还是从右侧出来,这里的「左和右」就是对阿里巴巴的挑战,他如果真的知道咒语,就一定可以从要求的方向走出来,否则就有一半的概率失败。

Curve社区讨论如何分配Synthetix跨资产交易费:根据YFI创始人Andre Cronje此前发布的链接,在Curve用900万USDT兑换895.3万枚sUSD,随后利用这些sUSD在Synthetix交易所完成交易,获得6689.94枚sETH。有社区成员指出,26859美元的费用收入将分配给Synthetix(SNX)质押者。

Curve团队成员向社区征求意见,Curve跨资产互换将Synthetix作为桥梁,Synthetix将小部分交易费返给Curve,如何分配这些费用?其中列出四个选项:veCRV持有者、LP、两者都分配、两者都不分配。[2021/1/21 16:41:10]

这里我们注意到,Challenge的生成是一个很关键的步骤,它有两个要求,随机和不可被证明者预测。第一点,随机性保证了它的概率属性。第二点,如果证明者可以预测挑战值那就意味着协议的安全性被破坏了,证明者没有知识也可以通过验证,可以继续类比,阿里巴巴如果能预测记者要求他从哪边出来,他即使没有咒语也可以提前进入那一边,结果表现出来一样可以通过协议。

所以我们需要一种办法,能够让证明者自己本地生成这样一个不可预测的随机数,同时还能够被验证者验证,这样就可以实现非交互式的协议。

万向区块链首席经济学:央行要考虑如何激励支付宝等参与推广数字人民币:万向区块链首席经济学家邹传伟认为,数字货币的确会对第三方支付产生一定影响。在零售支付场景下,数字人民币和第三方支付之间会有某种相互替代关系。数字人民币的份额涨起来了,就意味着支付宝和微信份额会下降。这个环节中,央行要考虑如何激励支付宝、微信等机构参与推广数字人民币,数字人民币应用还需依赖于支付宝、微信等线下场景拓展、二维码渗透。邹传伟称,可以设想一个激励相容设计,支付宝、微信支付如果帮助推广了数字人民币应用,它们存管在央行的支付备付金就可以获得更多利息收入。(第一财经)[2020/11/19 21:18:01]

哈希函数

哈希函数的名字对我们来说或许并不陌生,无论是在比特币的共识协议POW当中担任挖矿的数学难题,还是压缩数据量,构造消息验证码等等,都有哈希函数的身影。而在上述不同的协议当中,其实是运用了哈希函数的各种不同性质。

具体来讲,安全的哈希函数的性质包括以下几点:

压缩性:确定的哈希函数可以将任意长度的消息压缩成为固定长度。

有效性:给定输入x,计算输出h是容易的。

大咖零距离 | 宝二爷,李笑来的成功我们能复制吗?该如何抓住减半行情?:3月3日18:00,金色盘面邀请币圈KOL老俞说币做客金色财经《大咖零距离》直播间,将分享《宝二爷,李笑来的成功我们能复制吗?该如何抓住减半行情?》,敬请关注,欲进群观看直播扫描海报二维码报名即可![2020/3/3]

抗碰撞性:给定一个输入x1,希望找到另一个输入x2,x1x2,h=h,是困难的。

注意,如果哈希函数满足抗碰撞性,那么必然满足单向性,也就是说给定一个输出y,要找出x满足h=y是困难的。在密码学当中,还不能构造出理论上绝对满足单向性的函数,但是哈希函数在实际应用当中可以基本视作单向函数。

这样一来,可以发现上述的几种应用分别对应于哈希函数的几点不同的性质,同时我们说,哈希函数还有一个很重要的作用是提供随机性,虽然密码学理论当中要求的完美的随机数生成器目前也无法构造,但是哈希函数在实际当中同样可以充当这个角色,这就为我们后文介绍的Fiat-Shamir启发式的技巧提供了基础。

Fiat-Shamir启发式

事实上,Fiat-Shamir启发式就是利用哈希函数来对前面生成的脚本进行哈希运算,从而得到一个值,用这个值来充当挑战值。

动态 | 美国国防部将向国会提交“区块链技术如何增强美军工作”相关报告:今年晚些时候,美国国防部(DoD)将向国会提交报告,介绍区块链技术如何增强美军工作。价值技术协会(VTA)主席Jason Brett上周在拉斯维加斯举行的消费电子展(CES)上接采访时说,VTA将牵头要求国防部组织这样一个听证会。(Coindesk)[2020/1/16]

因为将哈希函数H视作一个随机函数,挑战是均匀随机的被选择,独立于证明者的公开信息和承诺的。安全分析认为Alice不能预测H的输出,只能将其当作一个oracle。在这种情况下,Alice在不遵循协议的情况下做出正确响应的概率(特别是当她不知道必要的秘密时)与H的值域的大小成反比。

图1:利用Fiat-ShamirHeuristic实现非交互式证明非交互式FOAKS

在本节,我们具体展示Fiat-Shamir启发式在FOAKS协议当中的应用,主要是用来产生Brakedown部分的挑战,从而实现非交互式的FOAKS。

首先我们看到,在Brakedown生成证明的步骤当中,需要挑战的步骤是「近似性检验」以及MerkleTree的证明部分。对于第一点原本的过程是证明者在这里需要验证者产生的一个随机向量,计算过程如下图所示:

图2:非交互证明FOAKS中的BrakedownChecks

现在我们使用哈希函数,让证明者自己产生这个随机向量。

令0=H(C1,R,r0,r1),对应的,在验证者的验证计算当中,也需要增加这个计算出0的步骤。根据这样的构造,可以发现,在生成承诺之前,证明者并不能提前预测挑战值,于是不能提前根据挑战值来对应的「作弊」,也就是对应的生成假的承诺值,同时,根据哈希函数输出的随机性,这个挑战值也满足随机性。

对于第二点,令I=H(C1,R,r0,r1,c1,y1,c0,y0)。

我们使用伪代码给出改造后非交互式的Brakedown多项式承诺当中的证明和验证函数,这也是FOAKS系统当中使用的函数。

functionPC.Commit():

Parsewasakkmatrix.TheproverlocallycomputesthetensorcodeencodingC1,C2,C1isaknmatrix,C2isannmatrix.

forido

ComputetheMerkletreerootRoott=Merkle.Commit(C2)

ComputeaMerkletreerootR=Merkle.Commit(),andoutputRasthecommitment.

functionPC.Prover(,X,R)

Theprovergeneratesarandomvector0Fkbycomputing:0=H(C1,R,r0,r1)

Proximity:c0=i=0k-10C1,y0=i=0k-10w

Consistency:c1=i=0k-1r0C1,y1=i=0k-1r0w

Proversendsc1,y1,c0,y0totheverifier.

ProvercomputesavectorIaschallenge,inwhichI=H(C1,R,r0,r1,c1,y1,c0,y0)

foridxIdo

ProversendsC1andtheMerkletreeproofofRootidxforC2underRtoverifier

functionPC.VERIFY_EVAL(X,X,y=(X),R)

Proximity:idxI,C0==<0,C1>andEC(y0)==C0

Consistency:idxI,C1==<r0,C1>andEC(y1)==C1

y==<r1,y1>

idxI,EC(C1)isconsistentwithROOTidx,andROOTidx』sMerkletreeproofisvalid.

Outputacceptifallconditionsaboveholds.Otherwiseoutputreject.

结语

许多的零知识证明算法在设计之初都依赖证明者和验证者双方的交互,但是这种交互式证明协议不适合用在追求高效,网络通讯开销大的应用场景下,比如链上数据隐私保护和zkRollup等等。通过Fiat-Shamir启发式,可以在不破坏协议安全性的条件下让证明者本地生成随机数「挑战」,并且可以被证明者验证。根据这种方法,FOAKS同样实现了非交互式的证明,并应用在系统当中。

标签:THEPROVEROAKAetheriusProject Inversexverse钱包安全吗cloak币官网

MANA热门资讯
NFT:探索 NFT 原生的解决方案:NFT MEV 的基础设施和机会

撰写:AlanaLevin,Variant编译:深潮TechFlowTL;DRNFT市场结构与FT市场结构大不相同.

1900/1/1 0:00:00
狗狗币:马斯克要求法官驳回狗狗币投资者对其提起的 2580 亿美元集体诉讼

埃隆·马斯克周五要求美国法官驳回狗狗币投资者对其提起的2580亿美元集体诉讼。在向曼哈顿联邦法院提交的一份文件中,马斯克及其电动汽车公司特斯拉(TSLA.O)的律师称,狗狗币投资者对马斯克的“无.

1900/1/1 0:00:00
虚拟资产:香港财经事务及库务局局长许正宇:金管理局计划于 2024 年实施“稳定币”监管制度

香港财经事务及库务局局长许正宇在AspenDigitalWeb3投资峰会上的致辞中表示:截至2023年2月底,投资推广署已收到超过80家与虚拟资产相关的内地和外国公司表示有意在香港设立业务.

1900/1/1 0:00:00
CHA:GMX 的挑战者们有哪些?

原文标题《GMX的挑战者们?》作者/DODOResearch自22年GMXToken上线Binance后,GMX的各项数据接连创下新高.

1900/1/1 0:00:00
HOPE:Flex Yang:HOPE 的分布式体现在三方面,HopeSwap 将于 4 月 19 日上线

分布式稳定币HOPE创始人FlexYang出席「OvertheMoon—逐浪Web3」活动并做了《香港新未来,Web3的希望与光明》主题分享.

1900/1/1 0:00:00
以太坊:以太坊 Goerli 测试网激活 Shapella 升级,仍有验证节点尚未升级

以太坊Goerli测试网于3月15日6:26激活Shapella升级,在区块触发时验证节点参与率仅为29%.

1900/1/1 0:00:00