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

2018年5月5日 | By News | Filed in: News.

https://ift.tt/2rhSftM

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),分片时间 < 10 秒。整个测试基于一个独立分叉选择策略的概念。

首先,我们有一个基于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)”是什么。

如果你喜欢这篇文章,一定要关注橙皮书公众号(ID:taixu_huanjing)哦!后台回复“橙皮书”,你将会得到一份神秘的礼物。

IT.数码

via 36氪 http://36kr.com

May 4, 2018 at 05:11PM


发表评论

电子邮件地址不会被公开。 必填项已用*标注