采用零知识证明最知名的技术就是匿踪币Zcash的zk-SNARKs。
目前主流加密货币,不论是比特币或以太币都是匿名资讯公开,简单来说就是不会有人知道钱包的主人是谁,但是大家都知道这钱包有多少钱、做过哪些交易,这将大幅降低人们使用的意愿。
请想象一下,在加密货币支付的生活下,你想瞒着你老婆买SWITCH,虽然他不直接拥有钱包,但他却能看到你的钱包转帐金额,与转到哪个钱包,轻轻松松就能查出你做的好事。
零知识证明是一个相当有趣的验证方式,能够在不公开交易资讯的情况下,矿工还能够验证交易的有效性。
以太坊创办人Vitalik Buterin也多次公开赞赏zk-SNARK的零知识证明技术,并表示此技术有助于提升以太坊的交易速度。
零知识证明
究竟零知识证明是什麽意思呢?用一个有趣的方式跟大家解释。
蚂蚁链隐私协作平台AntChain FAIR引入基于零知识证明的可验证计算技术:7月8日消息,在2023世界人工智能大会全球区块链产业高峰论坛上,蚂蚁链宣布隐私协作平台AntChain FAIR进行全新架构升级,引入零知识证明(ZKP)为核心的可验证计算技术,从可信数据流转拓展到计算过程、数据属性以及身份的可验证。此外蚂蚁链FAIR在可信计算架构中加入新型零知识证明虚拟机zkWASM,实现指令级别的可证明特性,可以依托 WASM 多语言生态将多种前端语言编写的算法程序进行证明转化,而无需关心底层复杂的算法细节,提升开发应用的友好性。
FAIR 是蚂蚁链面向数据流转推出的隐私协作平台,综合了区块链和隐私计算的优势,协作流程由智能合约驱动,数据流转由隐私计算引擎来解决,并通过区块链技术确权,登记和交易共识,可以解决数据流通过程中,数据共享与隐私保护之间的天然矛盾。目前 FAIR 已经在杭数交、贵数所等多家数据交易所得到应用。[2023/7/8 22:25:31]
小时候没有智能型手机也没有电脑玩,唯一的乐趣就是玩Whereis Wally,找出图片中Wally在哪里,大家可以玩玩看,回味一下没有3C的童年时光。
Vocdoni 认为以太坊和零知识证明等技术可以实现数字投票方案:去中心化治理工具 Vocdoni 撰文认为在经历了 2020 年美国大选期间的投票混乱之后,是时候该考虑基于以太坊、零知识证明(zkSNARK)和 IPFS 等去中心化技术实现安全且匿名的数字投票解决方案。
Vocdoni 认为这不是一个简单的挑战,但是他们设计了一套系统希望能解决投票的问题,将利用以太坊、IPFS 和 Tendermint 等技术。Vocdoni 表示他们的投票协议技术(Vocdoni Open Stack)是完全开源的,已经在欧洲的一些文化组织选举中被证明是成功的,涉及近 20 万投票者。[2020/11/9 12:06:07]
如果你找了十分钟还是找不到,开始怀疑我在你,Wally根本不在图片里的时候,零知识证明就能太上用场了!
零知识证明的概念就是“不透漏详细资讯的情况下,证明自己知道真相”。
如果我直接告诉你Wally在哪里,那你就没办法继续玩了,所以我给了你一张Wally的截图:
西班牙跨国银行BBVA探索零知识证明及加密技术:5月4日消息,总部位于西班牙的跨国银行Bilbao Vizcaya Argentaria银行(BBVA)宣布与马德里研究中心IMDEA Software Institution合作,以探索零知识证明(ZKP)以及其他“先进的加密技术”。(Cointelegraph)[2020/5/5]
透过这张图,除了能够证明Wally真的存在,而且我知道在哪里之外,由于你不知道Wally的实际位置,你还能够继续寻找Wally,零知识证明就是这麽简单的概念。
交互式零知识证明
了解零知识证明之后,我们再来介绍什麽是交互式零知识证明,我们一样用童年游戏来跟大家解释。
有一天阿菜出了一道数独的题目给阿平,阿平回家玩了三天三夜,发现根本解不出来。
由于阿菜平常做人不老实,阿平怀疑阿菜的这道题目根本没有答案,只是随便填几个数字进去,于是隔天气冲冲地跑去找阿菜。
但是阿菜觉得自己秀才遇到兵,有理说不清,这道题目明明就是好不容易设计好的,于是阿菜就决定用一个方式证明给阿平看,让他知道这道题目是真的有解。
声音 | V神:零知识证明技术对Layer 2更有帮助:在万向区块链实验室主办的第五届区块链全球峰会上,当被问及最新进展时,V神表示目前正在关注零知识证明,该技术经过十几年的发展仍然有创新,Zk-SNARKs就取得了一些进步。V神还表示,零知识证明对Layer 2 也许并没有太大帮助,但对Layer 2也许会有帮助。[2019/9/18]
阿菜先让阿平转过身去,阿菜拿出81(9×9)张空白的卡片放在桌上,在每张纸上写上1-9中的一个数字,然后把这81张卡片按照解答顺序排列在桌上,代表谜底的卡片,数字面朝下放在桌上,公开数字的卡片,则数字面朝上放在桌上。
排好之后,阿菜叫阿平转过身,跟阿平说“现在我全部都按照顺序摆好了,但是我不会让你看答案,你可以随意选择按照行、列或按照3×3的九宫格来检验,你可以随便选一种。”
阿平不知道阿菜葫芦里卖甚麽药
“不给看答案,就能让我知道你没我,我看你搞甚麽花样,我在“行”与“列”当中选择检验“行”。”
动态 | 0x 协议推出基于零知识证明技术的 StarkDEX 测试版,每秒可处理逾 550 笔交易:去中心化交易协议 0x 宣布推出去中心化交易基础设施 StarkDEX,并提供了 Alpha 测试版供模拟交易。StarkDEX 由 0x 与零知识证明技术开发公司 StarkWare 合作开发,目的是使用 STARKs 技术突破非监管交易的无形限制,使加密货币交易所为用户提供大规模而无对手风险的交易。0x 表示目前 StarkDEX 每区块最多可批量处理 8000 笔交易,每秒可处理逾 550 笔交易,手续费成本则降低 200 倍。[2019/6/4]
于是阿菜按照顺序将每一行的牌收起来,装在麻布袋里,并将所有的牌摇散。
“好了,你随便选一袋吧,只要袋子里的数字是1~9就代表我的题目没有错。”
阿平把每一个袋子打开,仔细检查每一个袋子里的牌,结果数字确实都是1~9没有重复,但是阿平很不服气。
“那又怎样,虽然”行”的数字没有重复,那也不代表”列”跟”九宫格”里的数字没有重复阿。”
阿菜解释
“可是我事先也不知道你会按照”行”、”列”还是按照”九宫格”来检验啊。我是按照题解来放置卡片的,你选啥我都没在怕的”
阿平想了想,确实,一个数独只有真正正确的解才能保证每一行、每一列、每一个九宫格里的数字都是没有重复的1-9。
阿菜如果真的在他,阿平也至少有1/3的概率可以抓到他在人。
阿平又按照同样的方式轮流将”行”、”列”和”九宫格”检验了好几遍,结果袋子里的数字真的都没有重复。
藉由这个故事,我们发现,阿平选择”行”、”列”和”九宫格”,阿菜再将卡片收集起来交给阿平验证,像这样一来一往,不断提出证据给对放验证,就是所谓的“交互式零知识证明”。
“交互式零知识证明”需要验证方(阿平)在证明方(阿菜)放好答案后,不断的发送随机试验,是最简单的零知识证明与验证方式。
就象是我们打电话给银行客服,客服人员会询问你的出生年月日与身分证字号,来验证你是否为本人。
然而,这种方式只有建立在验证方与证明方对立的情况下才能成功,一旦牵涉到第三方,验证和证明双方事先串通好,那麽他们就可以在不知道真实答案的情况下作弊。
因此衍生出了另一种证明与验证方式“非交互式零知识证明”。
非交互式零知识证明
后来阿平跟阿菜找了阿佑一起玩数独,阿平跟阿菜向阿佑展示了这个验整方式,阿平将”行”、”列”和”九宫格”检验了一轮后,只见阿佑沉默不语,若有所思。
隔天阿佑找来阿菜跟阿平
“你们平常最爱胡搞瞎搞,我很难信任你们,昨天你们的验证方式,如果你们两个串通好,那检验出来的答案就不值得相信,所以我做了这台机器‘零知识数独非交互式证明机’。”
这台机器基本上就是把阿菜和阿平之前当面做的那套证明自动化,不再需要人为交互验证。
阿菜只要把卡片放在传送带上,机器会自动选择按行,或列,或九宫格来收取卡片,放到袋子里打乱顺序,然后把袋子通过传送带再送出来。然后阿菜就可以当着大家的面拆开袋子展示里面的卡片。
机器里有控制面板,可以设置检验”行”、”列”和”九宫格”的检验顺序,阿佑把验证顺序设定好之后就把外壳焊死,没有任何人会知道验证顺序,阿佑就能放心的和他们俩玩数读了。
但是现在换阿菜跟阿平两人不开心了,验证的顺序只有阿佑知道,这样他不就有机会搞鬼了。
于是,他们三个人集结起来,让阿佑再次把外壳打开,然后大家一起设置控制面板上的验证顺序。
这个过程称为“可信任的初始设置仪式(trusted setup ceremony)”。
阿菜提议把这台机器放在一个漆黑的屋子里,把旋钮上的指示贴纸都撕掉。
三人轮流进入屋子,阿平还提议大家进房间时蒙上眼来保证随机性。
这样,最后这些旋钮所代表的验证顺序他们三个人都没有办法知道,就能保证这验证结果的可信度了。
“交互式零知识证明”之所以存在风险,是因为过程中需要在证明方与验证方双方交互验证,但“非交互式零知识证明”则不需要这种互动,但是会额外需要一些机器或程序,并且需要一串试验序列。
这个试验序列不能被任何人知道,才能维持验证的公正性。
有了这麽一个程序和试验序列,证明机就能自动算出一个证明,并且能防止任何一方作假。
运用在区块链的零知识证明所采用的就是“非交互式零知识证明”,将交易资讯交给程序,程序会给出一份证明给矿工验证。
矿工虽然不知道交易的详细资讯,却能够透过这份证明,验证交易的有效性,最有名的例子就是Zcash的zk-SNARKs零知识证明技术。
链金研究员总结
透过这些故事,我们就能知道零知识证明的本质,就是在不透漏我所知道或拥有的某样东西的前提下,向别人证明我有很大机率(这点很重要,零知识证明只是一个概率上的证明)确实知道或拥有这个东西。
将零知识证明的概念运用在区块链上,除了解决加密货币的隐私问题外,零知识证明还能够提升网路的效率。
zk-SNARKs矿工可以不用再重新执行交易的运算,而是只要对方提得出证明即可,能够将大量信息量压缩,大幅提升网路的吞吐量。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。