来源:以太坊爱好者,作者:ethos.dev,翻译: 阿剑,PANews授权转载。

以太坊在 2020 会带来什么惊喜?

你可能错过了一条消息,Vitalik Buterin 在推特上发了一个《个人心目中的以太坊路线图》。那么你是否也好奇他发表的图片是什么意思,今年的以太坊有哪些看点?

我使用超链接为他发表的图片添加了超链接,仅此我们也可预览以太坊 2020 年可能出现的亮点。

双剑合璧:用权益证明和分片扩展以太坊的吞吐量

这里是一份用超链接标注后的 Vitalik 个人以太坊路线图。链接的选择,当然由我自己承担,图解则仍归功于 Vitalik。

以太坊2020:路线图与展望

这幅图里面有四大块,从上到下分别是:

  • “以太坊 1.x 杂项”

  • “以太坊 1.x 无状态性”

  • 一个从 Eth2 Phase 0 到 eth1->2 合并、围绕着移除工作量证明(PoW)的 “核心”

  • eth2 Phase 2 及以后

中间的水平横轴表示时间的先后顺序。在这条轴上的就是核心部分,从 Phase 0 启动,到 Phase 1 启动,再到 “大合并”:eth1 -> eth2 合并。大合并依赖于三个前提:

  • Eth2 Phase 1 启动

  • eth1 -> eth2 合并的技术设想和实现

  • Eth 1.x 无状态性

合并成功后,系统就能抛弃工作量证明了,用户也不再需要运行一个 Eth1 客户端和一个 Eth2 客户端来跟踪两条区块链,以太坊会成为一个分片型的权益证明系统,由信标链和分片链组成。Eth1 的状态将存储在分片 0 上。用户可以继续使用往常惯用的应用,照常发送交易。

大合并是以太坊可扩展性的巨大飞跃,需要庞大的工程工作来支撑其可能性、使其能安全、稳妥地运行。上述前提即点出了工作上的分类。

关于大合并及其它问题,还有很多可讨论的。但在这里我们只讨论核心进展及 “以太坊 1.x 杂项”,因为它们与以太坊的 2020 关联较大。我们就从以太坊 2.0 Phase 0 开始。

Ethereum 2.0 Phase 0

极有可能在 2020 年上线的部分是信标链。

信标链启动的主要前提是:

  • 在 Eth1 主链上部署 Eth2 保证金合约;

  • 至少 2 个,理想情况下应该有 3 个 Eth2 客户端团队,推出了可用于生产环境的软件版本

  • 保证金合约发布之后,至少有 16,384 名验证者存入保证金(其中的金额累计至少有 524,288 ETH)

为什么说信标链可能在 2020 年上线?

Danny Ryan、Diederik Loerakker,还有四个团队,都一直在构建能用于生产的 Eth2 客户端。(按字母顺序排列)正在构建的客户端有:Lighthouse、Nimbus、Prysm、Teku、Trinity。

以太坊基金会,以及其他团队(比如 Artemis、Harmony、Lodestar、Nethermind 还有 Parity),还有那些开发质押服务的供应商,乃至初来乍到的新人,对此也都有不同程度的贡献。还有一些审计工作正在进行。

在 2020 年发布信标链的使命是清晰的,精力也是集中的。大部分工作都已经用分布式的方式完成了。

从经济角度来看,用(超过 20% 的 年化收益率(APR)来吸引 16,384 名验证者(524,288 ETH),不论用什么办法,都是很有吸引力的(同时,年化收益率会随着验证者数量的增加而下降)。

以太坊2020:路线图与展望

- 来源:上面超链接所包含的验证者收益率计算器 -

如何为信标链的 2020 作贡献?

信标链客户端的生产版本预计会在多重审计及多客户端测试网能稳定运行一段时间后发布;多个单客户端测试网已经稳定运行了一段时间,虽然仍需要做高负载下的优化及调试工作。

以太坊永远欢迎更多贡献者。需要贡献的领域包括:客户端的点对点网络组建、客户端互操作性、常用的测试工具、客户端及网络的安全性、性能和稳定性。

黑客、安全性、EVM 和智能合约领域的专家们,审计保证金合约并评估运行时验证(Runtime Verification)的工作永远需要你们的帮助,虽然保证金合约的字节码还未部署到主链上,你可以先行一步,因为预计保证金合约不会有什么变化了。

以太坊 1.x 需要帮助

这份图解最顶端的一部分 “以太坊 1.x 杂项”,是跟当前的以太坊主网相关的部分。

以太坊2020:路线图与展望这部分可分为三个项目,粗略来说就是三个 EIP,需要有执着的贡献者,才有可能在 2020 年部署到主网上。

BLS12-381 的预编译已经由 Matter Labs 的 Alex Vlasov 提了好几个月,EIP2537 也正在撰写中。EIP 2537 添加了对 Eth2 所用的 BLS12-381 曲线的支持,使得智能合约可以成为 Eth2 的轻客户端。有了对 BLS12-381 曲线的预编译之后,新的智能合约就能验证来自 Eth2 分片的数据。Eth2 Phase 1 启动时会引入分片,可以提高 Eth1 上的 Rollup 方案的数据可用性。Rpllup 方案其实就是一种智能合约,其 大部分计算和存储都是放在链下 的,但一些数据会发到链上,以备不时之需。如果数据可用性没有平均,Rollup 的吞吐量就能变得更大。有 Alex Vlasov 的工作,BLS12-381 的预编译很有可能在 2020 年引入(甚至可能比信标链更早推出)。

EIP-1559 可能会给用户带来一些好处,因为用户将可在发交易时 忽略 Gas 费的设置,勇士又能保证 不会支付过高手续费,不会等待超乎常理的延迟。该 EIP 写道:“预计大部分用户将不再需要手动设置 Gas 费,哪怕网络中的交易活动很频繁。”此外,该 EIP 还包括了燃烧手续费的设置,这就有利于对冲 ETH 的通缩,但又无需大幅削减矿工的收益。自该 EIP 在一年前提出以来,已经有人为此做了一些工作,不过,现在没有人挺身主导这个工作。

账户抽象化则是让用户能创建出具备任意授权逻辑的帐户(译者注:使账户的创建能脱离以太坊协议本身的束缚)。其中附加的灵活性可能影响深远,我们这里举个例子:一个多签名智能合约钱包可以用自有资金来支付它的交易的 Gas 费。只要有了一个钱包、里面有资金,就不再需要另一个持有 ETH 的账户来跟这个钱包交互并支付 Gas。账户抽象化的提法可以追溯到 2015 年,但一个月前的一份提案使得在 2020 年有可能实现账户抽象化。

如果你想了解更多或作出贡献,请参与 https://gitter.im/ethereum/AllCoreDevs(这是核心开发者之间的一个聊天室)。

“以太坊 1.x 无状态性” 也需要支持,但这是一个很大的话题,你可以看看这份为 “无状态以太坊” 提议的路线图,还有以太坊基金会博客的 “1.x Files” 系列。

向 Geth 团队致敬

上周,Geth 团队在 Github 上放出了第 164 个版本。我们不应忘记,Geth 团队一直在给以太坊 Geth 客户端增加功能、作出改进和优化。人们很容易把他们的工作当成理所当然的,而忘了他们付出的努力。让我们一起致敬(排名仅按字母,不分先后)Guillaume Ballet、Zsolt Felföldi、Felix Lange、Gary Rong、Adam Schmideg、Martin Holst Swende 还有 Péter Szilágyi!

Felix、Martin 和 Péter 已经做了很多年的 Geth 优化及升级工作,最早可追溯到 “上海攻击” 时期(那时的队友包括 Nick Johnson 和 Jeffrey Wilcke)(译者注:“上海攻击” 是指 2016 年 Devcon2 在上海举办期间在以太坊网络上爆发的 DoS 攻击)。

几个月以前,Péter 作为嘉宾参加了 ConsenSys 举办的一个开发者圆桌。他分享了一些对 Eth2、无状态性、贡献者激励措施的看法,也谈到了他所赞赏的人(在超链接所附视频的第 49 分钟)。谢谢你的提醒,Péter,也谢谢你和你的团队所做的重要工作。

想感谢他们、学习他们或者为 Geth 贡献的话,请加入 Go Ethereum 的 Discord 频道。

以太坊 2020 及其他

从当前来看,以太坊上可能发生的进展的粗略顺序如下:

  1. 信标链(Eth2 Phase 0)在 2020 年推出

  2. LS12-381 曲线预编译在 2020 年推出(也许这个才是最早推出的)

  3. 如果有人来推动账户抽象化和 EIP 1559,他们有可能会在 2020 年推出

  4. Eth2 Phase 1

  5. Eth 1.x 无状态性

  6. eth1 -> eth2 大合并

  7. (后续)执行模式、隐私和安全性提升、高级密码学元件

信标链是最多人致力于在 2020 年实现的项目。“Eth2 看起来蛮好的 —— Phase 0 的规范确定下来了,客户端团队正在风雨兼程”。在 Eth1 上,Geth 团队会继续前进,BLS12-381 曲线预编译可能在 2020 年引入(也许会比信标链更早推出)。不过,EIP 1559 和账户抽象化需要挑大梁的人,才有机会在 2020 年推出。这份路线图也谈到了许多并行推进的事物,也许我们可以在后续的文章中讨论:请关注我,好看到我的动态。COVID-19 之下,请保重自己。

我觉得在后面的文章中我也会加入致谢部分。那么我下一个要感谢的是 Solidity 团队。他们会在 2020 Solidity 峰会上致开幕辞。