收藏

评论(0)

阅读量(35)

顶(0

踩(0

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

2021-04-22 23:47

作者是以太坊基金会下属机构 Robust Incentives Group 的科学家 Barnabé Monnot。大量的图保证了文章的友好,作者的背景保证了严谨。

最近 DeFi 的主要项目都在密集的发布 2.0 版本的消息,仔细看过升级的细节就会发现,这些 DeFi 应用的升级在倒逼基础公链提速。

想提前布局的投资者,得看懂 Layer2,要不然接下来除了追热度,都不知道咋投项目。

这是通往以太坊的道路。今天的以太坊就是 eth2 开发者所称的“eth1”,这是大家都知道并喜欢的当前工作证明 (PoW) 链。明天的以太坊不是 eth1,也不是 eth2,它只是……以太坊 :eth2 在今天的执行层上部署权益证明 (PoS) 和分片的综合成果。

今天让我们回溯一下。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

用户想要做一些交易,所以他们把自己的交易发送给矿工,他们把它们打包成区块,并把他们的区块添加到一个不断增长的链中。矿工运行 PoW 共识机制 1 来决定下一个添加区块的对象,并执行区块中包含的事务,以确保它们是有效的。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

PoW 需要大量的硬件来运行密集的计算,这导致了过高的能耗。我们不会像大多数加密货币评论家所希望的的那样讨论浪费 (“为什么我们需要一个使用的能量的支付系统 ??”),但如果我们能用一个严格较小的 KWh 绝对值来做某事,我们就应该这样做。

因此,进入权益证明 (PoS),用一个 smol 服务器替换大量的采矿设备,用验证者替换矿工。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0如果他们不完成第二步,他们也会失去硬币。

没错。那么第二步是什么 ? 验证器到底在验证什么 ?

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

共识层确保每个人都同意正确的数据。执行层实际上是解释了这些数据,使其有意义。“数据”是与区块链的任意类型的交互,例如,部署合约,在交易所进行交易,发送付款等等。

区块链的心跳来自于在链中引入一个新的区块。当这种情况发生时,在新区块之前的状态和之后的状态之间存在状态转换。状态总结了之前在区块 0 到区块 N= 之间的所有数据。

例如,如果有一个状态包含 Alice 和 Bob 余额的分类账,并且新的区块包含了 Bob 向 Alice 支付的 10 个币,则该区块之后的状态将拥有新的余额。“N+1 区块块后的状态”气泡右侧的虚线显示,一个新的区块可能会修改现有状态 (例如,Alice 和 Bob 的余额) 或创建新状态 (部署新合约,或将 Carol 添加到分类账中…

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

rollps 和 eth2 工作的要点是解决第 1 点。我们的计划,不涉及共识和执行。那么会如何呢 ?

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

从 2020 年 12 月以来,我们有两家并行运作的链条 :

  • 在顶部,权益证明 (PoS)-共识链 (又称“信标链”)。

  • 在最底层,Ol‘的可靠的 PoW -共识+执行链 (也称为。“eth1”)。

它们平行运行,但它们也相互沟通。好吧,现在还是一边倒…

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

为了成为 PoS-共识链上的验证者,PoW -共识链+执行链上的用户锁定了存款合约中的 32 个 ETH,这将自动转换为 PoS-共识链。一旦验证者被激活,他们就可以开始验证并接受奖励。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

这种一边倒的谈话希望不会持续太久。合并永久地连接了 PoS-共识链和 PoW -共识链+执行链之间的鸿沟,允许验证者为执行层生成区块。因此,在合并之后,我们有两个链 :

  • 相同的 PoS-共识链

  • PoS 支持的执行链 (f.k.a,“eth1”)

当这种情况发生时,PoS -共识链的验证者最终将能够赎回和提取其收益和存款,并将它们发送回 PoS 支持的执行链。

所有这些本身就让我们从 PoW 环境转移到一个完全成熟的 PoS 环境。但是请注意,它并没有完全增加链的带宽--一个区块的执行量是多少--这是分片的目标。在讨论这个问题之前,我们先来讨论一下如果只有一个执行链,那么扩展执行的其他方法都有什么。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

颜色:一致 = 紫色,执行 = 绿色,数据 = 黄色

rollup 是众多可用的解决扩展方案之一,但从协议设计的角度来看,它可能提供了最佳的折衷方案。其方法很简单 : 通过在链上提交重建状态转换执行所需的数据来合成状态转换,并将执行推到链下。如果有人对执行结果有质疑,或者有人忘记了在第一时间执行,那么所有人都可以处理该数据。无需权限 !

更准确地说,执行所需的数据 (事务输入) 与它的容器 (事务) 分离,并以节省空间的方式“绑定”。同时,rollup 在执行链之外运行,提交数据并执行它。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

为了“进行 rollup”,用户将资产存放在 rollup 合约中的执行链 (“eth1”) 上,然后他们在 rollup 上做一些事情,比如在其他 rollup 上进行资产交易。一旦完成,用户就会从 rollup 中将资产撤回到执行链上。

什么是 rollups 的替代方案 ? 如果不是这些垂直的黄色链,而是一堆平行的红色链呢 ? 例如,如果 eth1 链是“复制的”,并且几个实例同时运行会怎样 ?

在这里是我们如何处理几个并行运行的多个执行链的问题。如果链条上发生了什么事需要别人知道怎么办 ?这是一个非常棘手的分片问题,也就是在多个链之间怎么划分执行的问题。

你会说“rollups 也没什么不同 !”,实际上这也是真的。当用户想从一个 rollup 对另一个 rollup 进行操作时,也会出现同样棘手的问题。然而,关键是存在一些 rollup 的设计,其解决方案的空间广阔,而且大多数还未被开发。那么,在将一种方法纳入协议级别之前,为什么不让 rollup 引导实验呢 ?

这就把我们带到了 ......

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

你听说过区块空间短缺吗 ?rollup 确实需要发布它们的数据,而 eth1 区块空间非常少 ! 而且我们说过,交叉分片很难。因此,为了用我们的柠檬做柠檬汁,为什么不使用分片来保存需要发布的 rollup 数据呢 ? 使用 64 个分片,这是现在可用带宽的 64 倍,而且可能更多,因为一个分片区块可能会比 eth1 链区块当前能够容纳的数据量高得多。

应该强调的是,这并不意味着在分片级别的执行永远是被排除在外。以 rollup 为中心的以太坊是一个短期到中期的发展方向,直到 (例如) 找到更好的加密原语来保证跨多个链的正确执行。这一切都非常迷人,应该会让很多人忙上很长一段时间。与此同时,rollup 也是一个解决方案之一。

来来来,我们再加把油,看懂 Layer2 和 ETH2.0

在这方面还有很多工作要做!首先,不要忘记 Merge 和数据分片是非常复杂的工作,目前有多个团队正在处理其中一个或两个。但即使在 rollup 方面,仍然有一些非常有趣的问题有待探索,而这些只是少数。

  • 用户在 rollps 之间的大规模迁移是一个非常酷的概念。如果以足够多的公共交通工具来往于第一层 (eth1) 和第二层 (rollps) 之间,为什么你还要自己开车去呢 ? 这有什么经济学意义吗 ?

  • 如果我想在邻近的 rollup 上做一些事情,因为他们有一些很酷的东西,而我的 rollup 没有,那我是否从我自己的 rollup 到 L1,然后从 L1 到邻近的 rollup? 这似乎相当浪费。

  • 对于当前的操作来说,rollup 是一个巨大的带宽改进,这是毫无疑问的,然而 rollup 并不是无限高速公路用户所期望的,但仍然有很多人想要做很多事情,有时甚至是在同一瞬间!因此,rollps 自然要处理拥塞问题,但是它与 L1 协议 (即将发布的 eip1559) 所规定的拥塞市场相反,rollps 有更大的设计空间可以探索。

  • 说到拥塞,这是更特定于协议的,但我们还会看到 EIP1559 扮演交通警察的角色,来调节每个数据分片上发布的数据量,以确保验证者能够应付的数量。如果用户认为一种 eip1559 机制很酷,那么请等到有 64 种机制在运行时再考虑。那么,rollups 应该在哪里发布数据呢 ? 在一个分片上只是使其可访问而无需为正在听的人跳分片?在多个分片上,要利用分片交错计划,分片依次发布一个新区块,这样我们距离新区块发布数据的时间就不会超过几百毫秒,难道这不是快速终结应用程序的理想选择吗 ?

评论列表

评论

分享到微信

扫描下方二维码

登录

忘记密码?

尚无账号?立即注册

注册

获取验证码
已有账号?

密码找回

获取验证码
已有账号?