2020 年以太坊 2.0 信标链的启动将带来什么新变化?

原文标题:《2020 年,以太坊 2.0 值得期待的有哪些?》(What's New in Eth2)
作者:Jim McDonald
译者:Unitimes_Peter

2020 年对于以太坊 2.0 来说将是关键的一年,预计阶段 0 (信标链) 的启动,将加速在其它阶段的工作以及推动生以太坊态系统的增长。基于交付以太坊 2.0 以及该发展的当前状态所需的工作量,以下我对明年的以太坊 2.0 的个人展望。

网络方面

以太坊 2.0 的实现包括三个阶段。尽管实现将大体上按顺序进行(阶段 1 和阶段 2 的完成可能处于相近的 (即使不是相同的) 时间,但所有这三个阶段都在一定程度上并行进行。

1. 阶段 0 的设计,实现和发布

毫无疑问,这是以太坊贡献者们在 2020 年要关注的最重要的任务。如果 2020 年在没有稳定发布以太坊 2.0 的阶段 0 的情况下结束,那么很难不将以太坊 2.0 视为失败。相反,成功的发布将证明以太坊 2.0 能够为去中心化金融、计算和信任的未来提供无需信任的和高交易量的基础。

阶段 0 的设计工作接近完成:基本上,将不会再对其它功能进行任何重写,任何未来的修改都与大规模测试期间发行的问题有关。为以太坊的密钥提供基础的 BLS 加密方案已经达到了适当的可以认为是最终的标准化水平,这是阶段 0 设计所依赖的最后一项技术。

仅有的两个例外可能是验证者的互动和奖励。 由于启动信标链的验证者最低人数从 65,536 减少到 16,384,因此当前的奖励系统中仍然存在问题。验证者交互需要进行一些改进,以减少当前无法使用抵押金进行验证的情况。

阶段 0 的实现工作正在进行中:有两个独立的团队构建了具有足够功能和成熟度的以太坊 2.0 节点软件,可以考虑将该软件用于最终测试,而其他一些团队拥有处于开发高级阶段,但是还没有准备好与更成熟的节点一起进行测试。 显然,只有在设计被固定之前,最终的实现工作才能进行,但是随着针对阶段 0 设计的更改减少到了对 bug 修复和必要的优化阶段,在制定阶段 0 规范的新版本和运行该版本的代码之间的时间将会减少至仅需数天的时间。

一文了解以太坊 2.0 信标链带来的网络与生态变化图 1:阶段 0 的发布时间表(部分)

考虑到最初实现之前所需的测试时间,以及修复出现的 bug 的需求,预计信标链将在今年的第二或第三季度开始产生区块。

2. 阶段 1 和阶段 2 的设计和实现

尽管阶段 1 和阶段 2 的设计与阶段 0 的设计和实现同时进行,但前者的设计还原为到达高级阶段,仍在进行重大的更改。阶段 1 提供分片 (sharding),允许将以太坊 2.0 的计算负载分配给各个验证者子集,阶段 2 将提供执行功能,创建用于在分片链上进行交易的结构。

特别是阶段 1,在过去的一年中进行了许多重新的设计。当前的设计似乎在可扩展性和简单性之间取得了很好的平衡,但是是否会被其他替代设计所取代还有待观察。但是,为了使阶段 1 实现能够按时开始,需要在 2020 年上半年敲定阶段 1 的设计。

阶段 2 的设计远没有阶段 0 和阶段 1 复杂:此阶段只是定义了执行环境 (executive environment) 的概念。执行环境是以太坊 2.0 的引擎,负责执行处理交易的工作。 但是,阶段 2 本身并不会定义任何特定的执行环境,因此,结合阶段 2 的发布,预计将有许多由以太坊团队和第三方建立的执行环境。它们可以分为两类:通用执行环境和特定功能执行环境。

通用执行环境将提供当前通常被认为是区块链的所有功能。一个通用执行环境可能会模拟以太坊 1.0、另一个比特币或者另一个 Zcash 等的功能。用户将能够像现在使用这些区块链一样大量使用这些通用执行环境。

尽管以太坊 1.0 存在许多不同类型的交易,同时以太坊 2.0 也将存在这些交易,但它们之间也有很多共性。 例如,大多数代币合约(例如 ERC-20 合约)具有类似的需求:持有代币,转移代币等等。在这种情况下,构建单个「代币合约」执行环境(也即一个特定功能的执行环境)可能会更便宜,这个执行环境可以为代币提供专用功能,而不必像当前的以太坊 1.0 那样在一个通用执行环境中部署其自身的合约。

在通用执行环境的设计上,以及特别是在某些更常见的特定功能的环境的设计上,仍然需要进行大量工作,尤其是要尝试定义每个执行环境的特定功能。相关的研究工作仍在进行中,但早期定义将需要在 2020 年第二或第三季度完成,以便进行实施和测试。

3. 将以太坊 1.0 迁移到以太坊 2.0

以太坊 2.0 的阶段 0 是一项繁重的工作,并且具有很高的复杂度,但是对于最终用户而言,阶段 0 实际上没有任何用处。的确,阶段 0 本身对以太坊不会有任何作用,只能提高通货膨胀率。 当前,关于如何将以太坊 1.0 与以太坊 2.0 合并,最有希望的建议是将以太坊 1.0 置于以太坊 2.0 之下 (备注:根据 Vitalik 的最新提议,当前最有可能的计划是 Eth1 将会作为 Eth2 中的分片 0「存在」,最终可以将 Eth1 调整为 Eth2 中的一个执行环境,但一开始 Eth1 可以是一整个分片),而无需重新创建一个以太坊 1.0 执行环境。尽管不能保证这将成为最终设计,但加速两条链合并的总体推动意义重大,值得期待。 此举可能不会在 2020 年底之前完成,但如果没完成,肯定会在 2021 年底之前完成。

要考虑的一个重点是,当以太坊 1.0 与以太坊 2.0 合并时,很可能一个或多个实体将继续以独立链的形式运行以太坊 1.0 链:那些在基础设施方面对以太坊 1.0 进行了大量投资的实体将受到激励继续让以太坊 1.0 链运行,置以太坊 2.0 的发展于不顾。

虽然用户的缺乏兴趣可能意味着这条独立链很快就会消失,但是用户和智能合约开发人员确实需要考虑这样这种情况:如果这条独立链继续存在,那么将不仅仅会出现 ETH 余额的分叉,代币余额、ENS 注册以及当前以太坊 1.0 链上的所有其他资产和数据都将出现分叉。这些合约的所有者将必须迅速采取行动,就他们的官方代币、数据等存在于哪条链上做出决定,从而避免让用户感到困惑。

生态方面

尽管以太坊 2.0 阶段 0 的发布至关重要,但是如果不进行其他方面的工作,那信标链就不会很有用。另外还需要为阶段 1 和阶段 2 做准备,以便它们启动时会得到支持,以使其能够运行。

1. 钱包

以太坊 2.0 具有与以太坊 1.0 类似的密钥,但基于不同的标准。这意味着以太坊 1.0 的密钥不能用于以太坊 2.0 的交易。需要开展工作来构建支持以太坊 2.0 密钥的钱包。

许多以太坊 1.0 的钱包是在钱包功能及其安全性的最佳实践还尚不明确的情况下被创建出来的。这样导致的结果是,存在许多不同的不兼容实现。相比之下,以太坊 2.0 具有许多提议的标准,例如 EIP-2333, EIP-2334, EIP-2335, EIP-2386 和 EIP-2426,这些标准为创建能在不同实现中兼容的以太坊 2.0 钱包奠定了基础。

另外,当前还没有以太坊 2.0 地址的标准。地址很重要,因为它们将包含校验和 (checksums),有助于保护用户资金免受不正确的 剪切-粘贴 或转录错误的影响。关于以太坊 2.0 地址格式的讨论正在讨论中。

看到功能齐全的以太坊 2.0 钱包实现在 2020 年可能还为时过早,但是今年应该能看到标准的敲定,并且有足够的早期参与者来提供验证者所需的钱包功能。 同样,留意支持以太坊 2.0 的全新硬件钱包的上市。

2. 取款密钥的保护

每个验证者都有一个取款密钥 (withdrawl key),一旦取款功能可用了,验证者将需要使用取款密钥来将抵押的资金取回。取款密钥将需要得到保护,直到需要使用该密钥为止,最好使用离线解决方案来对其进行保护。

预计我们将看到各种用于保护取款密钥的方法,以及提供这些方法的公司,将在日后广泛使用。有关验证者的取款密钥,请参阅《科普 | Eth2.0 中的验证者密钥和取款密钥是什么?》

3. Staking 托管服务

以太坊 2.0 有一个活跃的 staking 系统,验证者需要经常在线并保持活跃以获取奖励(并避免被惩罚)。尽管验证者硬件的成本相对较低,但是管理网络,软件等所需的正在进行的工作却越来越多,因此许多 ETH 持有人可能更愿意使用一个 staking 托管服务来代替他们进行以太坊 2.0 的验证工作。

针对 Staking 托管服务可用建立多种不同的模型,它们具有不同的安全级别,不同的资金访问权限,不同的客户参与度等。预计我们将会看到有多家公司基于各种模型提供 staking 服务,主要是在信标链推出后的 6 个月内将会出现。

总结

对于以太坊来说,2020 年是决定成败的一年。建立以太坊 2.0 网络的复杂性本身很难,但是使用以太坊的名义这样做会大大增加风险。ETH 本身就凭借其自身的能力成为一种既定价值存储手段,且当前的以太坊链运行着许多企业赖以生存的智能合约。

不要期望能以很少的成本来实现一个在吞吐量方面比当前以太坊 1.0 链高出数千倍的以太坊 2.0 链,但我们可以期待实现这一目标将有一些具有重要意义的步骤,包括一个运行中的信标链,并在合并以太坊 1.0 和以太坊 2.0 以及对执行环境的全面实现等方面有着敲定的设计方案。2020 年将是一个非常值得关注的一年!

来源链接:hackmd.io