本来想写《用人话解释零知识证明》,但是发现做不到,因为至今我也没能用人话解释区块链原理,零知识证明比区块链原理更抽象,网上的资料90%以上是关于这个算法的推导,但是对于90%以上的程序员来说,我们并不关心哈希算法的原理,我们只关心哈希算法怎么用。
首先,这是一个非常基础的函数结构:
如果这个function是一个哈希算法,那么,输入任意文件,就可以得到对应的哈希值。假设有这样的一个情况,某个哈希值我们大家都知道了,想要知道是哪个文件,这个文件在你手上,你很兴奋的说,文件找到了,大伙说好啊你把文件拿出来,我们算一下哈希,看能不能对上。这时候你就犯愁了,这是个机密文件,哪能说提供就提供的,咋办?
OpenAI:推出iOS平台的ChatGPT应用程序:金色财经报道,OpenAI称,推出IOS版ChatGpt应用程序,首先在美国推出,未来几周再推广至其他国家。App可以免费使用,并且支持跨设备同步历史记录。该App集成了Whisper开源语音识别系统,支持语音输入。ChatGPT Plus用户可在iOS上访问GPT-4的功能、及早获得功能和更快的响应时间。[2023/5/19 15:12:12]
这就请来零知识证明,这个算法结构如下:
公链项目Harmony RPC端点出现同步问题,对网络应用程序的交易速度产生影响:公链项目Harmony发布网络状态更新表示,在将一些服务的负载转移到不同的端点后,RPC端点仅在几个区块同步。总体而言,仍然对网络上的应用程序的交易速度产生较小影响。Harmony补充表示,正在积极调查同步问题。团队正在监控情况及其对应用程序的影响。
此前消息,Harmony针对RPC端点过载以及网络泛滥攻击事件提出改进方案,包括加强P2P垃圾邮件保护等。[2021/6/18 23:46:40]
橙色部分就是zk-proof,分成证明和验证两个部分,其中证明部分也叫电路circuit,需要用电路描述语言编程,最终编译为电路逻辑。在这个例子里,我们用circuit写了个哈希算法,用来替代原来的function,circuit的特点是输入是不需要公开的,输出的是哈希值和proof,这个proof证明的就是:
Matic推出专注隐私的冠状病追踪应用程序:金色财经报道,区块链可扩展性解决方案Matic推出专注于隐私的冠状病追踪应用程序。该应用程序名为Tracy,利用Matic网络进行接触者追踪和检疫管理。该解决方案还使用分散式数据存储解决方案MoiBit来存储敏感数据。[2020/5/1]
有一个未知input,经过circuit的运算,生成了output
有一个未知input,经过circuit的运算,生成了output
有一个未知input,经过circuit的运算,生成了output
重要的事情说三遍!并且我还要画出来:
动态 | Gemini推出手机应用程序:据financemagnates消息,加密货币交易平台Gemini本周二宣布,它已经推出了Gemini手机应用程序。这款应用程序现在可以在苹果应用商店和谷歌Play商店下载使用,让用户更容易地进行加密货币交易。[2018/12/11]
这个proof就相当于对这个过程的认证盖章,就这么板上钉钉了,无争议了,别问input是啥,问就是不知道,所以叫零知识。已知的是啥呢,电路逻辑,输出的值,还有证明文件proof。
在这个例子中,电路逻辑相当于哈希函数,如果你算出的哈希值和公开的那个哈希值一样,那就说明你输入的文件就是大家要找的那个机密文件,而你并不需要提供这个文件,只需要提供证明文件proof就行。
验证的时候,大家把哈希值和proof放进verify函数,返回true,那就证明了:
你用某个文件,经过circuit的哈希算法,生成了这个哈希值
那还能是哪个文件,那肯定是那个正确的文件啊,要不怎么生成这个哈希!
混币
zk-proof显而易见在隐私场景很有用。混币的原理是用户把币存进保险箱,保险箱的密码的哈希值帖在保险箱上,谁要是能提供这个密码,谁就能把保险箱里的币全部拿走。跟上面这个找文件的原理是一样的,用户不用提供密码,只要提供proof就行,合约校验通过就让你提币。
还有一个问题,如果你能开某个保险箱,那就说明你就是放钱进去的人,谁放了多少钱到哪个保险箱,这在链上是可查的,所以你开哪个保险箱,你不能说。在合约里用树形结构来存放保险箱,且层数固定,一般为16层。从你要开的保险箱到树根root,中间的15个节点确定了,就确定了你要开哪个保险箱,所以这15个节点,也在circuit的privateinput里面。
最后合约校验的时候,证明了保险箱的位置、保险箱密码全部正确,但不知道是什么密码也不知道是哪个保险箱,可能用户也不知道,但是用户把proof保管好就行,谁拿这个proof都可以去提款。
扩容
zk-proof除了隐私场景的应用,这两年还发现可以做区块链扩容。区块里的每一个tx,都有用户的签名,用来证明这个操作不是伪造的,一个区块的大小是有限的,所以要是能在区块中塞入的tx越多,TPS也就越高。
如果把签名砍掉,给tx瘦身,那就可以塞入更多的tx。问题是,砍掉了签名,又如何证明这个操作是用户签名过的呢?用零知识证明,把用户签名的校验逻辑写进circuit电路,输入是区块数据,输出是区块数据,并附上proof,一个proof这就能证明所有tx都是被用户签名过的,达到瘦身目的。本文来源:https://bress.xyz/zh/post/nKtuByYTvPri75xHQoA7f8vNyJ6NQPvCL_YH8KVp31Q
作者:加戈
“道者,万物之奥,善人之宝,不善人之所保” ——《老子》第六十二章 “去中心化社会:找寻Web3的灵魂”,是Vitalik等人的最新论文.
曾经涨过45u,总市值超过450亿美元的uni币,几乎挤进CMC前五,今天价跌到了6.xu,几乎要跌破CMC前30了。uniswap交易量一度给所有强大的中心化交易所带来“毁灭级”的压力.
来源:视觉中国 “有一个女生靠做空LUNA币,这两天赚了1000多万。”近日,一则一夜暴富的消息在社交网络疯传.
解决收入不平等 永远确保所有数据安全 让一切高效得多、无需信任 拯救垂死的婴儿 那么,区块链到底是什么样的技术?它真可以做到所有上述这些吗?区块链能为医疗、金融、供应链管理和音乐版权等形形色色的.
头条 ▌福建发放首笔数字人民币工资金色财经报道,厦门自贸委69个在岗公务员和35个事业单位在编人员已收到了单位发放的首笔数字人民币工资.
5月10日消息,由DapperLabs开发,为下一代游戏、应用程序和数字资产提供支持的Web3平台Flow宣布推出7.25亿美元生态基金,该基金将专注于游戏、基础设施、DeFi.