Eth2.0 带来的最广为人知的变化当属 PoS (权益证明) 和分片 (sharding),但它也有许多其他的变化是从改进当前以太坊中得到的灵感。
我们从BTC & 以太坊中学到了什么
自从 BTC 11 年前的第一个创世区块诞生,它启发了许多人进一步深入学习和研究区块链和加密经济学,以了解如何进行优化改进。
从 PoW (工作量证明) 开始,我们已经了解到协议安全性对于加密货币至关重要。激励人们在游戏中拥有更多「皮肤」(昂贵的挖矿硬件)的效果非常好。尽管「自私挖矿」存在可能,但 PoW 在保护 BTC 网络安全方面的表现异常出色。
2015 年以太坊发布时,它引入了「通用」区块链的概念,该概念使任何人都可以在该网络上构建与 ETH 和各种代币交互的应用。这些应用为去中心化金融(DeFi)的发展打开了大门,并成长为拥有超过 10 亿美元抵押资产的金融产品。
ETH1.X 扩容的难题
如今,以太坊已经历尽了 5 年发展,其惊人的增长速度帮助业界意识到了其瓶颈所在以及可以改善的方面。
当以太坊在 2017 年快速增长遇到困难时,几个号称「以太坊杀手」的区块链平台开始崛起并试图「击败」ETH。但是,这些「杀手」都聚焦于通过牺牲弱安全性来提高每秒的交易量,或者明显误导性(且令人困惑)地取消交易手续费。但是这些都不是以太坊缺陷的「解决方案」。
为了使以太坊真正得到改善,每一个参与进来的人都需要从现有系统后退一步思考,从一个全新的起点思考。我们可以充分利用以太坊的优势,同时也可以消除它的许多缺点。
注意:在下文中,当我提到「状态」 (state) 时,我指的是以太坊永久保存的全局、持久性数据,例如账户信息、交易和智能合约状态(如代币余额)。
进入 Eth2.0
Eth2.0 是加密货币领域有史以来最大规模的开源工作,旨在交付一个可以满足以太坊预期目标的全新系统。你可能听说过 Casper (权益证明)和分片,然而还有很多达成 Eth2.0 目标所需要的技术。
由于以太坊 2.0 (Eth2.0)的许多改进将势必破坏现有的以太坊链 (Eth1.0),因此这些变更将建立在 Eth2.0 链上,同时将现有的以太坊链「插入」到新系统的 1 个分片中。通过这种方式,Eth2.0 将不需要通过升级现有 Eth1.0 网络而变得复杂,同时当前的 Eth1.0 网络也将在受益于新系统的改进之际正常运行。
这篇文章将探讨 Eth2.0 所带来的人们可能不知道的重大变化,以及这些变化如何让以太坊成为(去中心化)世界的通用平台。
以及他们是如何从帮助以太坊准备好迎接 (去中心化的) 乐趣这一共同基础上获得灵感的。
货币政策
加密货币的货币政策比大多数人想象的更重要!对于使用发行方式(以区块奖励的形式产生供给)来吸引矿工和算力的代币,为确保网络安全性而需要提供的资金发行量越少越好。我们已经看到 BTC 拥有最安全的区块链,同时在前 20 种加密货币中发行率最低。目前,BTC 的年发行量为 3.8%,对比以太坊约 4.5% 的发行量,这是相当低的(如果 ETH 采用 BTC 的减半政策,则 ETH 的年发行量会更高)。
虽然许多 ETH 持有者认为以太坊为网络安全性支付了过多费用,但由于矿工的利润不高,降低发行量可能会导致算力和安全性下降。所以降低 PoW 区块链的发行量很难,因为可能会对区块链安全性产生意想不到的副作用。BTC(大部分情况下)并没有这个问题,因为它的大部分挖矿奖励变化都是可以长期预测的。
Eth2.0 的最大目标之一是过渡到权益证明(PoS),这意味着废除昂贵的 ASIC 或 GPU 矿机。如此巨大的计算量和功耗将被低成本的标准计算机所取代,这些计算机仅处理 Eth2.0 节点基本的功能,比如区块传播和同步。在维护网络安全方面,成本要低得多!除了成为验证者之前需要投资 32 个 ETH。
通过降低总体安全成本,可以将代币发行量降低到 0%-1%之间,具体数值取决于网络中有多少验证者 (也即网络中质押了多少 ETH 资产)。这样,发行量就可以精确设计以获得最佳安全性!
发行量和验证者奖励取决于需要多少安全资金
除了减少发行量外,Eth2.0 还打算使用名为 EIP1559 的策略来重新定义手续费拍卖市场和交易手续费中的 gas 价格。你无需了解其运作方式,只需知道在该模型中将销毁掉大部分手续费。虽然通过 EIP 1559,用户支付的手续费更低,但 Eth2.0 中将有多个分片,因此 Eth2.0 中的总体手续费的使用 / 销毁将大于当前以太坊的手续费。
加上极低的发行率(<1.0%),手续费销毁可能会使得 Eth2.0 出现净负资产发行,这意味着被销毁的资产将超过新增发行量!这将使得 ETH 变得更加稀缺,攻击 PoS 网络的成本也将更高。
共识算法(如 PoW 或 PoS)的目标是保持区块链的安全和去中心化,而维护网络安全的激励机制将加密货币与简单账本区分开来。这种激励措施吸引矿工 / 验证者为网络提供安全性。Eth2.0 试图在矿工资金激励方面做到最低可行发行量(MVI)。
MVI (最低可行发行量) 意味着区块链维持保证安全所需的最少发行量。低发行量加上手续费的销毁使得攻击更加昂贵(因为 ETH 变得越来越稀缺),从而减少了对网络大规模攻击的可能性。
无状态 (Statelessness)
当人们谈论以太坊及其状态规模时,你可能听说过「状态膨胀」 (state bloat)。这是指支付一次 gas 费会让你的数据在以太坊区块链上永久保存,从而导致一个无限的、不断增长的状态,其中甚至有很多无用数据。状态在存储空间上「膨胀」,这意味着随着网络的使用,以太坊节点需要更多的存储或更高性能的硬件。从长远来看,这增加了以太坊节点运行的门槛,并且每当区块 gas 限制增加时,状态增长就成为一个更大的问题。
Eth2.0 (以及未来的 Eth1.x)将朝着无状态的目标发展,这意味着轻(无状态)节点将能够验证所有交易以及状态的所有部分,而无需实际存储任何状态。无状态允许轻客户端以各种状态 / 无状态存在,每个状态都需要不同的规范,从而使节点更易于访问。当节点资源多于无状态模式但少于完整状态模式,则可以运行在半状态模式下。
无状态范式下的网络拓扑图
这对于分片非常重要!由于每个分片都有其自己的唯一状态,因此 Eth2.0 中的验证者将需要对其验证的那条分片的状态执行状态更改(交易)。无状态协议使得验证者在切换需要验证的分片时 (因为验证者会被随机分配到某条分片中进行验证),无需下载该条分片的整个状态,,而只下载代表性的二进制 merkle 树(尺寸要小得多)。分片越多,状态增长就越无止境,总会有诸如交易所或区块链浏览器不计成本地维护所有分片链状态 / 数据以提供准确的分发服务,并且因此受到激励。
这为「状态提供者」 (state providers) 软件打开了大门,这类软件将交易修改的状态部分提供给验证者,以便他们可以轻松地完成状态更改。状态中继者 (state relayers) 帮助将磁盘 I/O 和验证的存储密集部分完全移到另一个实体。这为有趣的激励方案(基于状态的激励,这曾经是以太坊的一个研究问题)打开了大门,并且使验证者受益,因为他们不再需要持有整个分片的状态。但是,他们仍然可以验证从中继者那里接收到的状态是正确的,因为他们可以将接收到的信息与同步的状态树进行比较。
帐户抽象
当前以太坊协议中有两种类型的账户:外部账户(用户)和合约账户。只有外部帐户才可以发起交易,并且仅允许账户的所有人修改其帐户状态。当前,存在元交易,但是这些交易依赖于中继网络来支付 gas,例如 GSN。
Eth2.0 试图将这两种账户类型抽象为 1 种,从而使用户账户和合约账户在网络中无法区分。当然智能合约依然存在,但这将为以太坊充当元交易的中继者本身打开了大门。自己签名交易并进行广播将不再是与网络互动的唯一方法。
你还可以像智能合约一样操作普通帐户,例如,将主帐户中收到的 ETH 直接发送到冷钱包中,或者甚至发送任意 ETH 到你的帐户中,该账户会自动卖出 ETH 来购买 DAI。
将功能内置到帐户中为 DApp 设计打开了更多的空间!用户管理帐户的处理将不再像以太坊中当前所定义的一组明确的操作。
帐户抽象的有趣可能性在于智能合约将能够支付自己的 gas 费用,或者成为发送交易的原始地址。这是一个仍需努力解决的复杂问题,但是在这种变化之后将产生新的创造可能!
执行环境
对于以太坊开发者来说,他们主要使用的语言是 Solidity 或 Vyper,它们各有特色,但都可以很好地满足开发生态系统的需求。当前,这些语言被编译为以太坊虚拟机(EVM)可以理解的更通用的底层操作。如果你想更深入地了解 EVM,可以参考这里。但不是必需。
EVM 使用操作代码(OPCODE)来帮助以太坊节点生成相同的计算结果,与运行操作代码的计算机是无关(因此称为「虚拟机」)。它还定制复杂的操作(如验证签名或查询帐户余额),仅一行代码即可完成。如果没有 EVM,正常读取和修改状态的功能是无法实现的。
尽管 EVM 为整个智能合约生态系统(甚至在其他链上)奠定了坚实的基础,但如果以太坊上的应用程序都能够使用所需的任意运行环境,那就更好了。区块链不应将自己的状态转换规则(例如 EVM)强加给其他人,执行过程应该更加开放。这就是执行环境 (EE) 的用武之地。
执行环境(EE)允许直接在协议中内置任何类型的状态转换(使用 WASM),这使我们可以从系统的其余部分完全抽象出处理交易的方式。有专门为处理 ZK Rollup 或私人交易而设计的 EE,也可能有针对 UTXO (未花费交易输出) 建模交易的 EE (就像 BTC)。甚至可能存在某个专门针对代币的 EE,这可以用于所有的代币,这样就不必为每种现有代币上传相同的代码。当然,现有的 EVM 将被复制到称为 eWASM 的某个 EE 中,以保持对当前生态系统的兼容。
Eth1.0 上的每个 DApp 都需要在考虑 EVM 的情况下进行设计,以太坊状态转换功能(EVM)的所有限制都使整个系统成为瓶颈。有了 EE,将不再存在这个瓶颈,允许构建可以充分利用开放式协议的全新的 DApp 类型。
作者 Ivan Martinez