12月22日,2019数字资产与区块链年会暨中国投资协会数字资产研究中心成立大会在北京召开。安比实验室创始人、数字资产研究院学术与技术委员郭宇以《零知识证明,区块链技术缺失的一环》为题进行了分享。
以下是郭宇演讲内容精编,由巴比特整理发布。
什么是区块链?在网上搜索了批评区块链的文章,其中一个理由是吞吐率低。比特币交易速度只有7笔/秒,以太坊交易处理速度不超过30笔/秒,而国际信用卡Visa至少2000笔/秒。区块链吞吐率如此低下,核心原因在于网络带宽。当全球超过1万个节点进行分布式共识时,不可避免的造成吞吐率的下降。单纯靠提高出块速度来提升吞吐率,到以太坊已经是极致了,出块速度快则会导致分叉的频繁出现,不会实质上提升吞吐率,或者靠降低节点数量提升吞吐率,会让系统安全将得不到保证。那么,如何在不降低安全性的基础上,提高吞吐率?
反直觉的零知识证明
零知识证明就是解决方案之一。以太坊创始人Vitalik在2018年做了一个实验,引入零知识证明,以太坊的吞吐率可以有几十倍的显著提升,可以达到500TPS。最新的路印协议采用了零知识证明技术方案——ZKRollup,根据他们的测试数据,能够在以太坊上实现高达10500TPS的去中心化应用。
亿邦国际正式上线其加密货币交易所:4月6日消息,美股上市公司亿邦国际(Ebang International Holdings Inc)正式上线其加密货币交易所,符合条件的投资者可以访问其官网进行注册和交易。亿邦国际董事长兼首席执行官胡东表示,加密货币交易所的启动不仅将扩大公司加密货币业务的收入来源,还将优化其区块链产业链的发展。
注:亿邦国际是一家美股上市的比特币采矿机生产商,能设计专用集成电路(ASIC)芯片。[2021/4/6 19:50:56]
1985年,麻省理工学院的研究人员ShafiGoldwasser,SilvioMicali和CharlesRackoff提出了“交互式证明系统”与“零知识证明”的概念,后来前两位因为这个工作而获得2012ACM图灵奖。
解释零知识证明前,我们首先要问,“证明”是什么?这个词从古希腊开始,它代表“洞见”;到1920年代,证明意味着形式化逻辑,怀特海和罗素在《数学原理》里花了几百页来证明1+1=2,它代表“符号推理”;到1970年代,证明被发现实际上“程序”没有区别;而到了1985年,证明的概念被延拓到了一个更广泛的概念“交互系统”,零知识证明系统正是一种交互系统。
亿邦国际成立加拿大子公司,已获得提供虚拟货币交易服务的营业许可:亿邦国际(Nasdaq: EBON)已在加拿大成立了一家新的全资子公司,以改善其产业链布局,升级其数字资产金融服务平台。新的加拿大子公司已于2020年9月16日获得了加拿大金融交易和报告分析中心(FINTRAC)颁发的货币服务营业许可,这将允许该公司在加拿大从事外汇交易、数字货币转移以及虚拟货币交易服务。
亿邦国际董事长兼首席执行官胡东表示:“继我们的新加坡子公司成立之后,我们很高兴地宣布新的加拿大子公司的成立。此举符合公司的成长战略,即抓住区块链产业价值链上的成长机会,建立数字资产金融服务平台。加拿大子公司将为亿邦进入北美市场奠定坚实基础。”(GlobenewsWire)[2020/9/29]
但是,零知识证明非常反直觉。为什么这么说?如图所示,右边的Bob把输入X传给左边的硬件设备,在这个硬件设备上会跑一个程序Y=F(X,W),W则是一个秘密数据,设备算出结果后,会返回Y,Bob如何相信Y的计算过程没有问题呢?这就需要零知识证明了,只要设备再附加上一个零知识证明,而我们就能完全相信Y确实是F计算的结果,就能完全相信一个不受控制的硬件,可能是有后门的硬件设备,跑出的运算结果是没有经过恶意篡改的。准确点说,零知识证明能够保证远程计算的完整性,但这是反直觉的。
嘉楠科技和亿邦国际均推出新款比特币矿机:中国两大矿机制造商亿邦国际(Ebang Communications)与嘉楠科技(Canan Inc.)都推出了新型ASIC挖矿设备。其中,嘉楠科技发布了新型设备AvalonLiner 1146 Pro (63TH/s),功耗约为3276瓦;亿邦国际发布了E12+(50TH/s),功耗约为2500瓦,每台售价1500美元。
值得一提的是,目前这两款新设备还远不及比特大陆和比特微最新设备的算力高。截止发稿,嘉楠科技股价为2.5美元,亿邦国际股价为4.57美元。(Bitcoin.com)[2020/8/3]
零知识证明还有什么用?我简单罗列一下,区块不断膨胀,越来越大?而用零知识证明技术,你只需要下载一个区块就可以了;链上交易可追踪,零知识证明可以保护用户的交易匿名性,可以保护用户身份的情况下进行身份认证、可以保护上链数据的隐私,实现安全地数据共享,以及链上链下的数据关联,都可以用零知识证明完成。
通过三染色问题理解零知识证明
零知识证明背后的原理是我今天要讲的重点,希望能让大家快速地理解。这是一个寻找地图三染色答案的问题,我们把一个地图想象成一个个城市,然后把城市用线连起来,相邻的城市必须用不同的颜色来染色。那么相当于我们要求一个图上的每一条边的两端顶点颜色必须不同。寻找地图三染色答案是一个NP-Complete的问题,也就是一个NP难解问题。
声音 | 彩量科技:采购是为配合浙江亿邦上市:11月26日,杭州市中级人民法院开庭审理浙江亿邦与彩量科技的买卖合同纠纷案。?彩量科技代理律师在庭审中称:“交易是否存在,应当以客观真实的证据为准。”彩量科技法定代表人谷红亮与浙江亿邦董事、云南亿邦法定代表人章昊是北京邮电大学EMBA的同学,两人基于信任,在交易中配合浙江亿邦上市,“导致做了一些与事实不相符的事情”。?就彩量科技与浙江亿邦之间交易的资金往来问题,众应互联证券部工作人员称不就此事接受采访,一切以机关调查为准。而当问及大额计提减值准备与本次纠纷有关时,对方称这是因为彩量科技业绩达不到预期,并称不要把两件事联系到一起。记者注意到,除了众应互联之外,华铁应急原全资子公司新疆华铁恒安建筑安全科技有限公司也陷入与浙江亿邦之间的矿机采购纠纷,同样涉及浙江亿邦未能足量供货事由。(证券时报)[2019/12/27]
假设Alice有一个三染色答案,她要向Bob证明这件事,但是又不能让对方知道每个点的颜色是什么,实现所谓的“零知识”证明。这时候应该怎么做?第一步,Alice会把颜色对调成另一套颜色,但是对调颜色之后,这个地图仍然是一个三染色答案,然后Alice把答案的每个节点盖上纸片给Bob看。
动态 | 矿机巨头亿邦国际遭银豆网案受害者上门讨债:据媒体互链脉搏爆料,作为三大矿机巨头之一的浙江亿邦通信科技股份有限公司遭遇银豆网案受害者上门讨债。7月18日,P2P平台银豆网爆雷,涉案金额高达44亿元人民币,受害人约2万人,实际控制人李永刚失联。据悉,亿邦国际此次遭遇银豆网案受害者上门追债,起源于银豆网实际控制人李永刚之妻崔宏伟与亿邦国际之间的一笔高达5.2亿元人民币的资金往来。[2018/10/11]
第二步,Bob看不见每一个顶点,但他会随机选择一条边让Alice来揭开纸片。
第三步,Alice揭开纸片后,Bob会看到两边的颜色是不同的,这时候他能相信顶点三染色问题是一个正确的答案吗?不一定,因为可能他选的这条边可能凑巧没问题,但是其它边可能是有问题的。
那么再来一遍,重复三步,Alice重新把颜色交换,Bob再随机挑一条边看,这时候Bob能相信吗?不一定,可能恰好两次都被Alice都蒙着了,有这种可能。
但是Bob可以不断的试,试N次,只要N足够大,Alice作弊的概率就会指数级减小,减小到几乎不可能。
通过这个方案,Alice成功以零知识的方式向Bob证明了自己确实拥有一个三染色答案,这就是零知识证明的最基本概念。
零知识证明的运行逻辑
说了这么多,大家可能觉得这和我们所说的“反直觉”非常遥远。如何信任一个远程计算呢?我具体说明下零知识证明技术是怎么做到的。
假设我们有一个超级摄像机,它把远程计算的详细过程,包括CPU、内存、程序的全部状态拍摄下来,我把视频从头放一遍,理论上就会知道这个计算过程没有问题,因为在任何一步作弊,理论上都可以找出来。但实际做不到,因为视频巨大无比,检验过程基本不可实现。
接下来我们做一个简单转换,用“算术电路”来重新表达这个计算过程。算术电路是什么意思呢?理论上大部分可终止的计算过程都可以转化为由“+”“×”两种电路门构成的电路来计算完成。在电路这头输入X,就会从另一头的引脚上得到Y。因此我们不再需要一个摄像机了,而只需要拍摄一张照片即可,然后我就可以“分别检查“每个门的计算过程是否正确。
但这仍然存在问题,就是验证过程太长了,意味着我们要检查所有门,检查一次哈希计算需要检查两万多个门的输入输出,显然这很麻烦。一个改进思路就是,用多项式编码所有门,把N次检验压缩到1次。
如图右侧所示,这个黄色的曲线编码了正确的计算过程,如果Alice要作弊,她只要改动任意一个引脚上的数字,曲线就会变得非常不一样,改动会被放大。理论上,我们通过一个叫做Schwatz-Zippel的定理,检查X轴上任意一点,就能知道这个曲线有没有改动过,这就是用代数理论,把N次检验转换成一次。
但这个问题还没有结束,这个过程中我们需要检验数据,但不想让Bob知道计算过程中的任何中间数据和结果数据,也就是说要对Bob是零知识的。这时候我们的思路是把多项式运算同态映射到椭圆曲线群上。在正常运算时我们得到的是“0、1、2、3…”这样的整数,它可以映射到椭圆曲线群上的N个点,进行一一对应。
通过椭圆曲线上的点你很难倒推回整数域,因为它是“离散对数难题”。接下来我们要去除交互过程,变成非交互零知识证明。思路是我们在X轴上随意选个点,由一个第三方预先产生一个加密挑战数,用来挑战曲线。最后就会形成一个简洁方案,即由第三方生成一个加密挑战数,生成两个密钥,Bob把计算交给Alice,Alice进行计算,完成零知识证明的动作,这就是2013年诞生的Pinocchio协议。
零知识证明离不开形式化验证
零知识证明安全吗?密码学教授MatthewGreen这样评论:“使用零知识证明技术就好像走了一条捷径:通过中土庞大地下城——摩瑞亚,这比翻山越岭要快不少,但是你可能会与炎魔作斗争。”所以说零知识证明是一把锋利的双刃剑,因为一旦你用了零知识证明,黑客攻击也将是零知识的,也就是说没有人知道已经被黑客攻击了。
2018.3.1ZCash团队的ArielGabizon发现了论文中附录B有一个致命错误,可导致无限造币。但有趣的是,在长达4年的时间里,没有其它密码学家发现这个漏洞,直到2019年2月份,BCTV14的论文作者和Zcash团队才同时公布了这个严重漏洞。
我的结论是,如果用零知识证明,请一定要进行严格的形式化验证。最后我想强调可信的3方面:1、区块链提供的共识协议的信任;2、零知识证明提供了数据信任和计算完整性;3、形式化验证最终保证这个计算逻辑是完全没有问题的。这三者结合在一起,才能形成真正可信任的数学基础,谢谢大家!
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。