当前位置:首页 > 科技创新 > 主要事项 >

让我们用非技术语言告诉你,零知识证明如何改变区块链【体育首页】

编辑:体育首页 来源:体育首页 创发布时间:2021-02-11阅读87089次
  本文摘要:用最简单的方式,谈谈浮动“简化区块链”的建设模式和巨大价值。

用最简单的方式,谈谈浮动“简化区块链”的建设模式和巨大价值。作者:罗纳德曼纳克,区块链创业公司史达琳协议的首席创始人兼首席执行官。编译:鲁有很多关于的技术博客文章。

最近,我还写了一篇文章,为了标准化的目的,比较了各种新的zk-SNARK。我发现关于零科学知识证明用例的文章很少,都是用简单的非技术语言解释的。事实上,零科学知识不仅可以用于隐私,还可以用于许多其他目的。

它的功能如此丰富,甚至可以定义区块链的运作模式。精简区块链,从GB传输到KB区块链的块可能相当大,而且它的大小正在快速增长。

这源于它最初的设计。我们也慢慢拒绝接受这个现实。不过最近公布的Coda项目测试网就不一样了。

首先,Coda的区块链也是一样大小,会快速增长;其次,只有22KB!甚至80年代的8位家用电脑康茂德64或ZX频谱也能放进去。而且,与传统的区块链相比,Coda的安全性差不多甚至更高。还有更多类似但更好的“精简区块链”项目,比如Mir和Starling(我也参加过Starling项目)。

这到底是怎么做到的?只要您尝试部署一个区块链节点,您就不会知道这个过程有多痛苦:节点需要几个小时甚至几天才能实现实时。区块链是如此之大,以至于大多数家用计算设备的磁盘空间和比特率几乎被拒绝。结果就是集权。

即使是像以太博物馆这样受欢迎的区块链也有10,000个节点,其中大部分都托管在亚马逊AWS上,只有少数实体可以使用。区块链没有很多人想象的那么分散。为什么实时构建一个区块链需要这么长时间?主要有两个原因:第一个原因很有意义:iTunes对于几百GB甚至更多的数据,一定要花很长时间;第二,iTunes完成后,区块链应该已经测试过了,因为故意的节点可能会给你发送不准确的数据。要验证一个区块链,需要从创世纪块重放整个链:继续执行第一个事务,并确保所有计算出来的状态与iTunes获得的状态相等。

体育平台官网下载

然后继续进行下一笔交易,直到您在区块链完成所有交易。这不仅耗时,而且浪费资源。

在你之前,成千上万的节点做着完全一样的计算工作。为什么要这么做?因为在传统计算中,判断计算是否准确的唯一方法就是做一次计算。如果是小范围计算的话,那就这样吧,但是情况跟纠正一个区块链的“慢计算”几乎是不一样的。

可以提高效率和比特率的零科学知识证明,其实有一种方法可以低成本的检查一个计算结果,但是需要轻算,那就是零科学知识证明(ZKP),其中zk-SNARK大概是最知名的一种。它是如何工作的?我们必须把区块链的纠错功能改写成zk-SNARK。

这个zk-SNARK会输入两样东西:具体输入(就像原来的纠错功能一样);一个小小的数学“证明”,证明这个结果是计算准确的。这个“证明”可以小到200字节(最后接近1KB)。

这样,我们就不必通过纠错功能来运行所有(或多个)计算机。这个“证明”是由一台计算机创建的,其他无限数量的计算机可以在它们指示的适当时间再次进行测试。

无论具体计算多长时间(甚至几小时、几天,甚至几年),检查只需要几毫秒。这个“证书”可以在线发送,可以存储在u盘里,甚至可以打印在t恤上。如果一个刻意的节点改变了一笔交易的余额,网卓新闻网,那么这个“证明”和结果不会有什么不同,所有的检查人员都会拒绝接受这个状态。

如果一个故意的节点改变了zk-SNARK代码,结果不会被拒绝。(有一个“第三参数”,公开发布的共享字符串,这个“证明”不会绑定到这个zk-SNARK代码。如果更改代码,则不会给出“证明”和共享字符串,因此检查者不会拒绝接受结果。)我们还是要便宜计算,不用iTunes区块链(因为我们已经有了这个区块链不存在且有效的数学证明)。

你所需要的是当前状态(比如最后一个块),加上少量的“证明”当前状态是有效区块链的一部分,然后花几毫秒检查结果。递归人测试一个“证明”很快,但是创建这个“证明”怎么样?只是时间不同。与传统计算相比,它在计算和存储方面的效率要低得多。

本质上,虽然zk-SNARK版本的纠错功能听起来不错,但实际上解决方案并不太好。与以前的非zk-SNARK纠错功能相比,它必须有更大的内存和更快的速度。然而,还有一个优雅的计划。

我们发现用一点技巧,只能用于递归zk-SNARKs。通过迭代,我们不必从头开始测试这个区块链,而是可以建立在之前的状态上。不会再快了。

必须注意的是,递归zk-SNARK仍然不如非迭代zk-SNARK有效,但是,zk-SNARK的结构最近发生了很大的变化。递归zk-SNARK程序不会使用属于“先前状态”的“证明”和新事务作为输出。

它不检查以前的状态(使用获得的证书),并检查新状态下的交易是否有效。如果没有问题,就不进入新的状态,不进入“证书”。一旦新的状态和“证书”被发送到网络,所有节点可能不得不丢弃先前的状态,这将产生任何负面影响。

新节点只需要iTunes最近的状态和“证明”。这也是为什么Coda,Mir,Starling可以造出同样大小的小块。

在上面的例子中,创建一个新的块和“证明”只需要一个节点。似乎我们没有适当地让同一个节点分解所有的块。

举个例子,可以从多个节点中随机选择一个节点(有可验证的随机函数,很多节点甚至可以自由随机选择自己,这样会让傻子不道德)。我们甚至可以做得更好:将块分解逻辑分成多个zk-SNARK。最终的结果是,区块生产者不需要原来的区块链,它只需要以前的状态。

这不会大大减小块的大小。一个传统的Coda节点只需要22 KB来存储一个账户余额的“证书”、当前状态和Merkle路径。仅用22KB,一个节点就可以检查整个区块链,找到余额并创建事务。然而,如果要分解块,这个节点必须更多:它必须是前一状态下所有余额的Merkle根。

Merkle的根源在于钱包的大小和数量。如果Coda的钱包有Ethereum那么多,那么Coda区块生产者只需要1 GB左右的容量。比以太网大的原始节点为230 GB(2019年12月的数据)。

差距巨大。利用零科学知识,证明区块链网络中会有更多的活跃节点,这提高了分散化程度,并使各种程序与区块链交互成为可能,这需要像Infura或Metamask这样的解决方案。想想看,99%的新用户在安装Metamask时选择自由退出。

所以,这个变化会带来很大的影响。感谢以下人士的贡献:丹尼尔卢巴罗夫(mir)、谢恩维塔拉纳(Shane vitarana)、斯坦范德堡(stan van de burgt)、塔里克刘易斯(taariq Lewis)和德米特里贝伦宗(Dmitriy Berenzon)。作者允许翻译和出版文章的中文版本。


本文关键词:体育平台登录,体育首页,体育平台官网下载

本文来源:体育平台登录-www.alingconching.com

0418-98042467

联系我们

Copyright © 2010-2014 怀化市体育平台登录科技股份有限公司 版权所有  湘ICP备14468851号-3