星球日报搜索
手机客户端
iPhone · Android
微信公众号
微信公众号

iPhone · Android

微信公众号

科普:以太坊2.0的设计抉择

2020-03-09 07:00:00

Eth2 的设计方案,以及开发者的开发体验会有什么样的变化。

编者按:本文来自:以太坊爱好者(ID:ethfans),作者:ditya Asgaonkar,Odaily星球日报经授权转载。

本文为研究员 Aditya Asgaonkar 在 EthCC 大会上的演讲幻灯片,据其自述,是为了向智能合约开发者说明 Eth2 的设计方案,以及开发者的开发体验会有什么样的变化。他在演讲中鲜明地勾勒出 Eth2 的基本架构,以及 Eth2 在设计上的挑战。

正文中对幻灯内容的说明和分段,俱为编者所加。

科普:以太坊2.0的设计抉择在这一段,作者指出,以太坊 2.0 的两大设计目标是可扩展性和安全性。

前者意味着吞吐量呈超线性增长,若节点资源投入量提升 K 倍,则整个系统的吞吐量增长大于 K 倍。

后者则意味着相应于节点所形成的共识安全性,保证所有部分都是同样安全的。

后者用分片(把整个系统的状态切分开来形成不同的片区)来实现,而前者用信标链来实现。

科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择

但是两相结合之下,信标链就不能保存所有的分片数据、执行所有的分片交易,否则就会打破可扩展性要求。

因此,两者的分工是,信标链负责共识、只保存分片状态的默克尔根,而且不执行分片交易;分片则没有任何共识机制,仅有随机抽取的验证者来出块、验证并将默克尔根提交到信标链上。

科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择

但这样一来,开发者今天习以为常的东西,在 Eth2.0 里面就不一定现实了,比如:对系统中任意合约的同步调用。因为基本问题是,发起调用时,接受调用的分片不知道有人正在发起跨分片交易,除非信标链里不仅有状态默克尔根值信息,还有别的信息。但这样就会打破可扩展性。

这就引发了两者状态访问模式的比较。静态状态访问的例子是无状态执行,这种模式下,所需的状态信息是附加在交易的见证信息里跟交易一起传播的,这样确定性更强,但这样就会遭遇上述问题;动态访问模式下,交易的打包先后顺序可能会引发问题。

科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择

最后,演讲者指出,可扩展性和安全性是 Eth2.0 的终极追求,而相似于 Eth1 的执行模式只是次要目标;并呼吁智能合约开发者放心,问题都可以解决的。

科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择科普:以太坊2.0的设计抉择

本文来自投稿,不代表Odaily立场。如若转载请注明出处。

Odaily星球日报提醒,请广大读者树立正确的货币观念和投资理念,理性看待区块链,切实提高风险意识;对发现的违法犯罪线索,可积极向有关部门举报反映。

参与讨论

登录后参与讨论

以太坊爱好者

特邀作者

以太坊爱好者

这个作者有点忙,还没写简介

总文章数: 104


分享至

微信扫一扫分享

0