当前位置:首页 > 区块链新闻 > 正文

小白也能懂——以太坊2.0测试网

来源: 互联网时间:2019-06-14 13:40:11

这个月早些时候,Prysmatic Labs 团队发布了目前最接近完成态的以太坊公开测试网络,测试网使用 Prysm 客户端,开发至以太坊 2.0 的第一阶段。

本次发布受到以太坊社区的欢迎,许多人立即着手运行客户端并向开发团队报告问题。测试网的验证节点数量很快超过了 800 个。这表明,以太坊社区兴致昂扬地希望为万众瞩目的以太坊 2.0 的升级作出贡献。

趁热打铁,在此有必要向广大的以太坊社区成员阐述什么是以太坊 2.0 测试网、为何说它的发布是一个关键的里程碑、为何花了那么久才达成此次发布?本文将尝试用通俗的语言来阐述技术细节。首先我们会讨论以太坊 2.0 和当前以太坊在协议上的区别,其次会概括性地解释此次测试网络的功能。

为何以太坊 2.0 升级要等待如此之久?

为回答这个问题,我们先阐明一个简单却重要的概念:

以太坊 2.0 并不是对现有以太坊网络的升级,而是一次全面的修订和重新设计。

许多人并不知道,甚至不同意这一点,因此有必要澄清下。

  1. 新的以太坊 2.0 网络将移除 PoW (工作量证明)共识机制,转而使用(新的权益证明(PoS)共识机制)Casper 共识机制。
  2. 在 PoW 链上,可以用一种很简单的方法来决定在分叉中应该选择哪一条链、如何驱动链生长。该方法就是始终跟随拥有最大累积工作量的链,换句话说,选择耗费了最多算力的链。但因为以太坊 2.0 使用 PoS,我们必须引入一系列新的分叉选择规则(即 LMD GHOST),来决定链的生长方向。
  3. 当前的以太坊网络只有一条( 有点像 DAG 有向无环图的)单链。以太坊 2.0 网络则使用 1024 条并行链(即分片),这是以太坊雄心勃勃的扩容计划的核心。这些不同的链(分片)可以互相通信,并统一由单一主链 Beacon 链进行控制和验证。Beacon 链就像植物的枝干,掌控着 1024 个平等的分支。
  4. 这些激进的改变,使得 ETH 持有者无法在新的以太坊 2.0 网络中使用 ETH。而是需要先燃烧当前的 ETH,然后作为回报,在 Beacon 链上获得相同数量的 ETH。这个交换机制由以太坊 1.0 上的智能合约完成,并受 Beacon 链的监控。
虽然以太坊 1.0 和 2.0 之间有太多的不同,在这里我们只讨论主要部分。这将有助于说明完成以太坊 2.0 的工作量。

为何以太坊 2.0 测试网的发布如此重要?

从上述讨论的 1.0 和 2.0 网络之间的不同点来看,以太坊 2.0 还需要做许多功能的整合和调整工作才能正常运行。而且以太坊 2.0 的许多概念是全新的、从未被其它已公开的区块链测试过,比如 Casper 共识机制。

相要实现与以太坊 2.0 类似目标的 Cosmos 和 Polkadot 协议,都用了超过 2 年的时间才能实现一个工作正常的(从 0 开始开发,具有充分灵活性的)设计。更何况,这些项目无需担心如何将 ETH 和其它 ERC-20 代币从旧链转移到新链,也无需担心如何降低(协议改变)对 dApp 开发者带来的影响。因此,以太坊社区需要看到新旧网络迁移过程中的切实而具体的步骤,以提振坚持执行路线图的信心。

以太坊 2.0 蓝宝石(Sapphire)测试网实现了哪些功能?

回顾下上面提到的以太坊 1.0 和 2.0 的4个不同点,测试网实现了 #1、#2 和 #4,部分实现了 #3。具体来说,蓝宝石测试网实现了 Casper PoS 共识机制(使用新的分叉选择规则);实现了 Beacon 链;实现了将 ETH 1.0 代币转移为测试网的 ETH 2.0 代币。测试网没有实现 1024 个分片以及分片间的通信机制(跨片通信)。

测试网中,另一个值得注意的功能缺失是智能合约,该功能计划在路线图的第三阶段实现。为完成智能合约功能,需要移植以太坊虚拟机(EVM)到以太坊 2.0 中或者在以太坊 2.0 协议中重新实现一种虚拟机(WASM)作为 EVM 的替代。

以太坊 2.0 测试网是如何工作的?

以太坊 2.0 是一个 PoS 网络,由质押代币的验证节点来生产区块并维持网络运行。因此,首先要解决的问题是如何将代币分配给验证节点以运行网络。

以太坊 2.0 网络中,最终将使用与我们 1.0 网络同样有价值的 ETH 代币,因此 ETH 代币需要被转移到新的以太坊 2.0 网络中。为了实现和测试该转移功能,Prysmatic Labs 开发了一个叫作 Goerli 的以太坊 1.0 的测试网络和一个叫做存款合约的智能合约,在Goerli 网络上任何人都可以获得任意所需的伪 ETH,而存款合约可以储存不限量的ETH 代币。当充币到存款合约后,测试网的 Beacon 链将生成等量的 ETH 2.0 代币。为了简化,我们将 ETH 2.0 代币称作:Beacon 链ETH(bETH)。

ETH 在以太坊 1.0 和 2.0 之间转移的示意图 -

从 ETH 1.0 到 bETH 的步骤:

  1. 首先,验证节点安装支持以太坊 2.0 网络的 Prysm 软件,并创建账户。创建的账户将生成“存款数据”,用来打通以太坊 1.0 钱包和以太坊 2.0 账户。
  2. 在以太坊 1.0 测试网 Goerli 上,用户发送 3.2 个 ETH(实际网络将需要 32 个 ETH)到存款合约中,以参与以太坊 2.0 的验证工作。这实际上就是燃烧 ETH 1.0 代币。
  3. 当以太坊 2.0 的 Beacon 链发现存款合约中有币打入时,将在验证节点的账户中生成相同数量的 bETH 代币。现在,验证节点已经准备好参与验证,只需再等待一段安全延时即可,该延时用来增强 Beacon 链的安全性。
  4. 验证客户端开始参与共识机制并获得验证奖励,如果不遵循协议规则,他们的 bETH 就会被罚没。

验证节点到底做什么?

在以太坊 2.0 中,每 6 秒会产生一个新块(当前 PoW 网络约为 15 秒)。每一次,都会由验证节点池中的一个节点来提议生成新区块。一定数量的其它验证节点则检查该区块并验证正确性。到下一次出块时,则换另一个验证节点提议生成区块,同时换另一组不同的验证节点验证正确性。

每产出 64 个区块(称为一个 epoch),所有的验证节点会重新洗牌,为新一个 epoch 选择新的区块提议者和区块验证者。验证节点的选举过程在随机数生成算法的帮助下,从根本上避免了验证节点间的勾结串通,提高了协议的安全性。

验证节点需要一直在线以完成分配给它们的任务。如果它们诚实工作,将获得 bETH 代币奖励。如果他们行为不端、勾结串通或离线,他们所质押的代币将被罚没。如果验证节点的余额减小到验证阈值以下(测试网中为 3.2 bETH),则将被踢出验证节点池,无法继续参与验证工作。

后续的发展方向?

蓝宝石测试网只是漫长的抵达以太坊 2.0 的征程中的一步。 它实现了以太坊 2.0 路线图中的 Phase 0。距离实现以太坊 2.0 的完整功能还有 2 个阶段。

但即使是阶段 0,想要上主网,仍有巨大的工作量。首先,我们尚在测试网的早期阶段,有众多的问题、bug 和优化项需要解决;其次,目前测试网上只有 Prysm 一个客户端可以使用。其它团队也在开发支持以太坊 2.0 网络的客户端,比如 Nimbus 和 Lighthouse。兼容不同的客户端,是完成一个支持多客户端的测试网的前提条件;再次,阶段 0 的设计要求 bETH 能够在不同账户间转帐,当前的测试网并不满足;最后,阶段 0 的设计仍处在细节的修订中(由以太坊基金会研究团队进行)。这些设计需要在众多的以太坊 2.0 客户端中最终确定、完整实现和审计通过,才有望于 2019 年底主网上线阶段 0。

总之,测试网上线是以太坊 2.0 发布路线图中的关键一步。它的重要意义在于以太坊社区的公众都能参与到测试中来,提出问题发现瓶颈,以引导以太坊 2.0 的开发者们解决。测试网的发布有效提振了社区对以太坊 2.0 路线图的信心。另外,以太坊基金会宣布将投入 1900 万美元来支持以太坊 2.0 的开发及其它以太坊扩容方案的开发。此举将有效加加快开发和测试工作的进度。

原文链接: https://www.tokendaily.co/blog/eli5-explanation-of-the-ethereum-2-0-testnet 作者: Mohamed Fouda 翻译&校对: Wuwei & 阿剑

(本文来源于以太坊爱好者 EthFans,未经作者许可严禁转载,违者法律必究)

免责声明:

1.本文内容综合整理自互联网,观点仅代表作者本人,不代表本站立场。

2.资讯内容不构成投资建议,投资者应独立决策并自行承担风险。