本来想写《用人话解释零知识证明》,但是发现做不到,因为至今我也没能用人话解释区块链原理,零知识证明比区块链原理更抽象,网上的资料90%以上是关于这个算法的推导,但是对于90%以上的程序员来说,我们并不关心哈希算法的原理,我们只关心哈希算法怎么用。(作为一个10年+老码农,我也不懂哈希的原理,但我并不惭愧,会用就好)
首先,这是一个非常基础的函数结构:
如果这个function是一个哈希算法,那么,输入任意文件,就可以得到对应的哈希值。假设有这样的一个情况,某个哈希值我们大家都知道了,想要知道是哪个文件,这个文件在你手上,你很兴奋的说,文件找到了,大伙说好啊你把文件拿出来,我们算一下哈希,看能不能对上。这时候你就犯愁了,这是个机密文件,哪能说提供就提供的,咋办?
欧洲央行:数字欧元可以通过现有的银行应用程序和欧元系统应用程序提供:金色财经报道,欧洲央行表示,数字欧元可以通过现有的银行应用程序和欧元系统应用程序提供,数字欧元最初可能提供给欧元区居民、商人和政府。[2023/4/24 14:24:18]
这就请来零知识证明,这个算法结构如下:
橙色部分就是zk-proof,分成证明和验证两个部分,其中证明部分也叫电路circuit,需要用电路描述语言编程(Rust\C++\Circom),最终编译为电路逻辑(.wsam\.r1cs)。在这个例子里,我们用circuit写了个哈希算法,用来替代原来的function,circuit的特点是输入是不需要公开的,输出的是哈希值和proof,这个proof证明的就是:
美国大选中使用的区块链应用程序Voatz存在诸多安全问题:金色财经报道,根据第三方公司的公共安全审计报告,在美国多个州或县的选举中使用的区块链移动投票应用程序Voatz由于缺乏透明度引起了公众批评,尤其是在数据安全方面。由于存在选举被篡改的威胁,因此风险仍然高。报告称,Voatz系统没有任何缓解措施,无法根据选民在区块链中记录的投票时间对选民进行匿名化处理。[2020/3/14]
重要的事情说三遍!并且我还要画出来:
动态 | 达世币钱包Dash Text被纳入委内瑞拉和哥伦比亚的Telegram应用程序:据Bitcoin Exchange Guide消息,达世币钱包Dash Text已被委内瑞拉和哥伦比亚的Telegram应用程序所采用。Dash Text联合创始人兼首席技术官Lorenzo Rey表示,Telegram应用程序似乎是最好的集成应用程序,因为它支持在旧版本的智能手机上使用加密货币,而不需要任何额外的软件,比如数字钱包。[2019/4/28]
这个proof就相当于对这个过程的认证盖章,就这么板上钉钉了,无争议了,别问input是啥,问就是不知道,所以叫零知识。已知的是啥呢,电路逻辑(这部分理应开源),输出的值,还有证明文件proof。
黄立成投资的秘银(Mithril)将在Qtum上开发新的社交媒体应用程序:量子链Qtum官方推特宣布,社交媒体区块链项目Mithril计划在Qtum上开发社交媒体分散应用程序DApps。Mithril 是去中心化的社交网络,目前在okex价格为3.8626美元,24小时跌幅11.86%;量子链Qtum是基于UTXO模型的POS智能合约平台,现全球均价27.1美元,24小时涨幅5.34%。[2018/3/6]
在这个例子中,电路逻辑相当于哈希函数,如果你算出的哈希值和公开的那个哈希值一样,那就说明你输入的文件就是大家要找的那个机密文件,而你并不需要提供这个文件,只需要提供证明文件proof就行。
验证的时候,大家把哈希值和proof放进verify函数,返回true,那就证明了:
那还能是哪个文件,那肯定是那个正确的文件啊,要不怎么生成这个哈希!
zk-proof显而易见在隐私场景很有用。混币的原理是用户把币存进保险箱,保险箱的密码的哈希值帖在保险箱上,谁要是能提供这个密码,谁就能把保险箱里的币全部拿走。跟上面这个找文件的原理是一样的,用户不用提供密码,只要提供proof就行,合约校验通过就让你提币。
还有一个问题,如果你能开某个保险箱,那就说明你就是放钱进去的人,谁放了多少钱到哪个保险箱,这在链上是可查的,所以你开哪个保险箱,你不能说。在合约里用树形结构来存放保险箱,且层数固定,一般为16层。从你要开的保险箱到树根root,中间的15个节点确定了,就确定了你要开哪个保险箱,所以这15个节点(路径),也在circuit的private input里面。
最后合约校验的时候,证明了保险箱的位置、保险箱密码全部正确,但不知道是什么密码也不知道是哪个保险箱,可能用户也不知道,但是用户把proof保管好就行,谁拿这个proof都可以去提款。
zk-proof除了隐私场景的应用,这两年还发现可以做区块链扩容。区块里的每一个tx,都有用户的签名,用来证明这个(转账)操作不是伪造的,一个区块的大小是有限的(固定的),所以要是能在区块中塞入的tx越多,TPS也就越高。
如果把签名砍掉,给tx瘦身,那就可以塞入更多的tx。问题是,砍掉了签名,又如何证明这个操作是用户签名过的呢?用零知识证明,把用户签名的校验逻辑写进circuit电路,输入是(包括签名的)区块数据,输出是(不包含签名的)区块数据,并附上proof,一个proof这就能证明所有tx都是被用户签名过的,达到瘦身目的。本文来源:https://bress.xyz/zh/post/nKtuByYTvPri75xHQoA7f8vNyJ6NQPvCL_YH8KVp31Q
作者:加戈
标签:ROOProofPRO区块链MushroomzkProofUnited States Property Coin区块链专业方向好就业吗
你有没有想过未来的数字生活到底会是怎样的?电影《头号玩家》展示了其中的一种图景,人们通过“化身”在虚实结合的世界中探索各种可能.
1900/1/1 0:00:001.DeFi代币总市值:1153.18亿美元 DeFi总市值 数据来源:coingecko2.过去24小时去中心化交易所的交易量:55.
1900/1/1 0:00:00In brief2022年5月8日起,UST轻微脱锚,且长时间在“水下”运行,引发市场恐慌。巨鲸们持续抛售UST,最后形成死亡螺旋,UST价格最低点触及0.21美元,LUNA则灰灰飞烟灭.
1900/1/1 0:00:00对于众筹这个概念,相信所有人都并不陌生,不过相比于 Web2 时代而言,Web3 在推动众筹方面具备相当的优势.
1900/1/1 0:00:00金色财经报道,4月27日,以太坊侧链Ronin Network发布漏洞报告。报告显示本次黑客攻击共导致了17.36万枚以太坊和2550万枚USDC被盗.
1900/1/1 0:00:00《纪梦十首》提到:“灵境在何处,梦游今几回”。文中灵境一词指“虚幻的境界”。参考「元宇宙」的理念,与30多年前钱学森提出的灵境一词不谋而合.
1900/1/1 0:00:00