以太坊创始人详解 ETH 首次分片测试:扩容前景如何?

V神最近公布了以太坊最新的一次分片测试。

在twitter里,V神激动地说“分片即将到来!”。看起来,V神对这次分片测试的结果感到非常兴奋。他相信,分片将大幅度提高以太坊现有的并发限制,真正实现扩容。

在Reddit上,V神更详细地阐述了这次分片测试具体的过程——当然,大家都反应看不懂他到底在说什么,于是V神又不厌其烦地用说人话的方式回答了论坛里网友提出的一些疑惑。

以下为完整版内容(PS,如果你看懂了这次分片测试具体的技术细节,欢迎向橙皮书投稿!因为我们也很想弄懂):

用人类听得懂的方式回答:此次分片的目的是啥?对现有的以太坊用户有什么影响?这次分片增强了以太坊什么样的能力?

V神:最主要的目的,是大范围改善以太坊的可扩展性(scalability)。每一个分片(在这次测试里,总共有12个分片,正式上线的时候应该会达到100个)会拥有和现在的以太坊主链相同(或者更高)的处理能力。

具体能实现多少分片,这个分片的数量存在限制吗?在外行人看来,从 12 到 100 ,这个数字好像有点随意?

V神:存在限制。每个节点需要对所有分片的区块头(blcok header)进行确认,而每个节点的这种确认能力又跟这个节点的计算能力是直接相关的,所以限制主要存在于这里。

提示下,这是一种“二次方分片”:如果一个节点可以做 N 件事,那么这个节点就能确认 N 个分片的区块头;或者这个节点是对单个区块进行确认,那么它就能对单个区块确认 N 笔交易,所以,总的处理能力就会变成 N ^ 2 (约等于,不是精确数字)。

这种分片的方法,在大自然里有没有类似的机制?你是从自然界的机制里借鉴过来的吗?

V神:很遗憾,我认为自然界里是没有这种类似的机制的。主要有这么几个原因:

大自然作为一个整体来说(或者是某个物种作为整体来说),它没有什么迫切的压力需要去实现某一个特定的目的。大自然更关心的是狼群和鹿群彼此都要喂饱自己的孩子的事情。

在自然界,你不需要担心互相勾结和贪污腐败的问题(一只鹿写了个智能合约,跟狼约好,如果狼要吃它的时候肯放它走的话,鹿就为狼介绍两只可口的羊。。。)

自然界里的节点智力有限(参考上面两条)

自然界里的节点彼此的沟通能力有限

我觉得在区块链的设计里,有很多努力都必须投入到如何防止“你的节点拥有多少的能力、节点能用这些能力来做什么”这些事情上。系统里的节点会尝试各种各样复杂聪明的方法和策略,甚至大范围地和其他节点进行勾结协作,来使劲找到系统的漏洞,最终占为己用。只有人类系统才会出现这样的问题,这是人类系统特有的(当然,我对现有的经济和法律系统表示 respect )。

诚恳的问题:分片会让以太坊变得中心化吗?

V神:最终其实是会降低中心化的程度的。原因是,在分片初始设置时,一个节点需要处理的所有数据总量,会根据这个节点拥有多少的 eth 余额,同比例地进行设置。所以,总的花费成本里:可变成本会更多,固定成本会更少,这对比较小的节点验证者来说,是把竞争带回到了更公平的赛场里。

V神亲自阐述这次分片测试的基本情况(比较难看懂)

V神:这次分片测试最主要的目的,是做一次概念验证。

具体要验证什么呢?

验证“基于分叉选择规则”的一套机制(the fork choice rule-based mechanism),能否使“分片”成功地绑定在以太坊的主链上。这套机制配合上一个专门的信标链(beacon chain),分片时间

首先,我们有一个基于pos共识机制的信标链(英文叫 beacon chain,在第四阶段,也就是全面实现casper的阶段,这个信标链会被合并到以太坊主链中),和以太坊主链绑定在一起。每一个信标链的区块,必须指定一个最近的主链区块。这个信标区块是否从属于标准链(canonical chain)的一部分,则取决于信标区块对应的主链区块是否属于标准链的一部分。

信标链每 2-8 秒会生成一个区块,这个设计是从这个原型(该原型具体实现的代码在这里)那里得到启发的,利用随机机制来生成随机性(参考这里、这里和这里),它的目的是为了成为分片链条里的“心跳”,确保“谁能成为分片的提议人和公证人”的随机性。这套信标机制会通过类似proof of activity的技术完成升级,从而增强稳定性。

每个分片拥有独立的分叉选择策略,这套策略和信标链是绑定在一起的。每一次,新的信标区块生成,这个信标区块就会随机地选择一个提议者,让它负责创建分片的 Collation 。每一个分片 Collation 指向同一个分片里的 Parent Collation ,以及一个信标区块。

此次测试不包括:

让公证人对分片 collations 进行确认的机制(尽管这个东西不太重要,因为它的原理和信标区块是一模一样的)分片链条和主链的交叉连接(crosslink,参考这里),把信标链和分片链条都绑定到主链上;

以下特性:Casper FFG 里的投票每循环一次,所有分片的公证人数量都会同时加倍,增强 Casper FFG 的可扩展性,同时让它的最小存储金额(min deposits)和截止时间(finality times)都能降低(也许最小存储金额会降低到 32 ETH ,截止时间会降低为 6 分钟)。

完整的论坛问答可以点这里查看:

https://www.reddit.com/r/ethereum/comments/8g1q55/vitalik_teases_sharding_release_on_twitter/dy85pq0/

一些术语参考(来源于以太坊 Casper 101):

Casper-- 以太坊的 PoS 研究和项目。Fork Choice Rule- 分叉选择规则(fork choice rule)就是一个函数,由客户端进行评估,输入为区块或是其他生成的信息,向客户端输出“标准链(canonical chain)”是什么。

极客网企业会员

免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。

2018-05-05
以太坊创始人详解 ETH 首次分片测试:扩容前景如何?
V神最近公布了以太坊最新的一次分片测试。

长按扫码 阅读全文