本文主要介绍了以太坊区块链的演进过程,包括从PoW到PoS的共识机制转变,以及为实现可扩展性而采取的Danksharding策略。文章还提到了以太坊面临的未来挑战,如量子计算,以及应对这些挑战的策略,强调了在区块链系统演进中采取谨慎和有计划方法的重要性。
这是关于区块链的系列文章的一部分。如果你是第一次看到这篇文章,我强烈建议从本系列的开头开始阅读。
在整个系列中,我们介绍了几个区块链范式。更准确地说,我们研究了实现类似目标的系统,但不需要是区块链才能做到这一点:例如,我们有基于 DAG 的系统,普通的 分布式账本技术(DLT),以及更奇特的东西,比如 Mina 的递归证明。
这证明了区块链作为一个概念已经发展壮大,即使命名仍然存在。主要的收获应该是,这是一个广泛的研究领域,拥有一个充满活力和多样化的生态系统,尽最大努力为传统系统开发替代方案,试图改进我们已经详细讨论过的一些关键问题。
尽管有如此多的解决方案和分布式系统,但至少在今天,仍然有一种模型占据着主导地位。你们知道他们怎么说的吗:先下手为强。
当然,我说的是 以太坊。
这个区块链引领了该领域的许多进步,并且一直保持着其作为其他区块链的某种榜样的地位,或者至少是一个用来比较的参考。
所以今天,我想通过谈谈这样一个复杂的系统如何继续发展的一些特殊性来结束这个系列。当然,与任何其他生产系统一样,更新并非易事,并且正常运行时间至关重要。但还有一个事实是,其中一些更新甚至在区块链历史上没有任何先例,而且它们的执行如此完美,以至于如果你不知道细节,你可能甚至没有注意到它,这非常了不起。
那么,是时候迎来盛大的结局了!准备好了吗?我们开始吧!
在早期,以太坊选择使用一种与比特币非常相似的共识机制:工作量证明(PoW)的实现。当时,比特币是区块链领域的一大成功案例,几乎每个新来者(双关语)都模仿他们的共识算法,或许是因为缺乏其他强有力的参考。
你已经知道情况不再是这样了。以太坊现在运行权益证明(PoS)算法来达成共识,而且一切似乎都运行得很好。除非你在关注改进提案,否则我想没什么问题可问的。
好的,太棒了……但是你有没有停下来思考一下这种转变实际上是如何发生的?

这并不容易
让我们试着评估一下这项工作的复杂性。
这些构成了切换过程的两个重要限制:保持状态和保证稳定性。
这是一个很难解决的问题。想一想:如果由你来决定,你会提出什么策略来安全地迁移?
以太坊在这方面做得非常出色。让我们看看他们是怎么做到的。
我们必须首先看看矿工过去在 PoW 中是如何运作的。
挖矿过程可以分为两个(非常)粗略的步骤:构建区块和挖矿。也就是说,矿工首先需要构建一个包含有效交易的区块,执行它们以确保满足 gas 限制,然后他们才会开始挖矿。
回想一下,挖矿是为区块找到有效哈希值的过程!
这里有一个关键的观察:当转移到 PoS 时,我们只需要通过 PoS 的验证过程来替换挖矿。

我知道——这似乎没什么大不了的。我的意思是,它甚至感觉有点明显,对吧?
信不信由你,这个小细节允许区块链历史上最重要的架构变更之一。我们已经确定这里有两个独立且分离的关注点在起作用:区块执行和共识。
那么,我们能不能将它们模块化?我们能不能将节点程序拆分成一个执行程序和一个共识程序?这样:
这种分离有两个主要结果,一个对于切换非常重要,另一个有点像不错的副作用。我们将首先关注前者。
显然,共识客户端只需要专注于共识!
它们只需要验证执行客户端创建的某些东西,剩下的就是验证者之间的协调——实际的共识机制在起作用。
以太坊提出了以下建议:只需运行另一个区块链,其中包含执行客户端生成的这些东西——称为执行负载——在其自己的区块中。

如果你在阅读完之后仍然摸不着头脑,那也没关系——这不是立即显而易见的,为什么这是一个好的决定。关键是让共识节点开始使用空的执行负载进行操作:

这样做巧妙之处在于,我们现在有一种方法可以在隔离状态下测试新的 PoS 共识机制,而无需触及已经在运行的网络。
因此,在切换之前,这个新的区块链诞生了,独立于旧的以太坊用户进行交易的网络,该网络继续使用 PoW。
结果呢?在那个时候,存在着两个完全独立的区块链。剩下的就是让这个名为 信标链 的新系统开始接收实际的执行负载。

切换之后,旧客户端只需要停止他们的挖矿活动,而是接收来自共识客户端的经过验证的区块。因此,以太坊用户看到的(后来被称为执行层)有点像“真实”区块链(共识发生的地方)的镜像,我们现在将其称为共识层。
切换是如何进行的对于我们今天来说并不重要。重要的是,用户没有任何停机时间,也没有看到他们的资产有任何变化:一切都像什么都没发生过一样继续工作。

现在,我提到还有一个“不错”的副作用。
以太坊虚拟机是一个(图灵)完备的执行模型,这意味着只要交易被正确排序,它就可以与任何共识机制一起运行。执行客户端和共识客户端的分离使这一点非常明显:没有什么能阻止我们运行一个完全不同的共识客户端(例如,一个工作量证明客户端),并且仍然使用 EVM(在执行客户端中定义)。
EVM 本身具有很大的价值。由于它是区块链中第一个可编程性的“框架”,许多开发人员选择专注于这项技术,花费大量时间来完善它。此外,一些重要的应用程序在设计时也考虑到了 EVM。
我们从那时起已经走了很长一段路,并且出现了新的执行模型。但是,迁移到这些模型存在摩擦:开发人员需要学习新的语言,并且应用程序需要重构以适应新的模型。
另一方面,共识几乎总是对智能合约开发人员完全透明的。
这导致了一个非常自然的结果:出现了新的区块链,它们选择更改共识机制,但保留执行模型。只要这样做是正确的,以太坊上预先存在的应用程序更容易迁移到这些新系统,并且开发人员不需要重新学习一切,所以这是一个双赢的局面。
有很多方法可以看待这一点。在某种程度上,以太坊为“竞争对手”打开了利用其成功的机会。但我认为这不是一件坏事:它使生态系统更具活力,并授权其他参与者继续推动共识方面的研究。
疯狂的事情由此而来,其中一些我们已经在本系列中提到过。无论如何,这种举动都有利于更广泛的社会——我认为这是一件非常美好的事情。
如果信标链的过渡教会了我们什么,那就是对复杂的升级采取有条不紊、务实的态度是一种好做法。主要是因为我们减少了仓促推出的功能破坏一切的风险。
这对于任何生产系统来说几乎都是如此,但对于区块链来说尤其如此,因为区块链为用户持有如此多的有形价值。
你知道,永远不要在生产环境中进行测试。
当然,这转化为首先在测试网络中测试任何更改,这些测试网络被恰当地称为测试网。但这种理念本身还有另一个维度:更改不必在单个更新中推送,有时可以分解为更小、增量式的更新。
这正是以太坊在其路线图中最雄心勃勃的提案之一中采取的策略。
以太坊的可扩展性策略与更有效地提供数据有关。
我们之前的遭遇深入探讨了这背后的问题,所以如果需要的话,请去看看!
在其概念中,该网络没有很好地准备好处理大量数据。更糟糕的是,整个 rollup 中心路线图 需要优雅地解决数据可用性问题。否则,网络成本将会爆炸。
因此,为网络提出的一个重大里程碑是添加blobs。并且这个观点的完全实现已被称为 Danksharding。
认真地,如果你需要复习,请查看之前的文章。
问题是添加大量的 blobs 仍然不是一件容易的事。例如,随着单个区块中接受的 blobs 越来越多,验证者的通信和验证开销会激增,这可能会损害区块时间等重要事项。
这是一个棘手的问题。最重要的是,这是一项艰巨的任务。
那么我们如何解决这个问题呢?我们采取有条不紊的方法。
以太坊社区也是如此,他们将实现分为几个较小的里程碑,每个里程碑都建立在前一个里程碑奠定的基础上。
正如你可能预料的那样,事情开始时相对较小。
最初的里程碑伴随着 EIP-4844,并且被通俗地称为 Proto-Danksharding。其想法是已经将 blobs 引入网络,尽管是以一种受控、有限且可管理的方式。
每个区块可以包含少量 blobs,并且每个共识节点都需要下载并验证每个 blob。换句话说,共识保持正常工作,但现在混合了 blobs。
这是有意的保守。目标不是立即实现大规模的可扩展性,而是:
所有这些都不会给验证者带来太大的压力。
效果非常好。Rollup 的交易成本大幅下降,并且整个网络在 blob 处理方面获得了非常有价值的运营经验。
也许最重要的是,它证明了这个概念是可行的,为即将到来的里程碑奠定了基础。
但我不想用剩下的故事来烦你。有很多有趣的事情可以提,比如最近的 PeerDAS 升级是如何工作的(使用 KZG 承诺 和所有东西),以及它如何帮助以太坊更接近 Dankshadring,或者为什么 Proposer-Builder Separation 对于充分实现这种可扩展性愿景至关重要。
我们可能会在以后的文章中讨论这些。我在这里的重点只是:
在高流量、高价值的系统中,较小的、受控的更新是一个好主意
同样,这对于具有这些特征的任何生产系统来说几乎都是如此。

敬我们所做的工作
在结束之前,还有一个值得提到的长期挑战:量子计算机。
目前,以太坊严重依赖 椭圆曲线加密。到目前为止,这提供了强大的安全性,确保网络不会受到密码学漏洞的攻击。
量子计算机改变了这一点,因为它们可以打破我们长期以来值得信赖的密码学原语。像 Shor 算法 这样的东西可能会真正地、真正地把事情搞砸。一旦这些密码学墙倒塌,整个网络很快就会随之而来。
为了公平起见,并将事情放在正确的角度,区块链并不是唯一受到这种 Looming 威胁影响的系统。“安全的互联网”本身可能会受到威胁。
现在,这不是一个迫在眉睫的威胁。我们可能还需要几年时间才能看到量子计算机大规模地破坏签名。但是,世界没有奢侈的时间等到最后一刻。
以太坊也没有。他们不仅仅是在等待最后一刻才开始行动。因此,工作已经开始。
棘手的部分是,大多数后量子签名方案都是笨重的家伙:签名的大小比我们今天使用的签名大几十倍。

是的,兄弟,我是后量子的
我们已经从 之前的文章 中知道,区块链中每个字节都很重要。区块空间是一种宝贵的资源,而大型签名会占用它——所以这是一个真正的问题。
那么,再次,解决这个问题的正确策略是什么?你可能猜到了:冷静和镇定,采取有条不紊的方法。
但这个特殊问题的问题在于,新的密码学原语需要多年的研究,其结果是还没有明确的路线图。
但这完全没问题。我们能做的最好的事情就是将精力放在重要的地方。只要情况如此,向后量子密码学的转变将像其他任何转变一样有条不紊、受控且务实。
最好做好准备!
今天的想法很简单:表明发展这些区块链系统并非易事,并且需要大量的计划和远见。
区块链作为一种技术仍然相对较新:没有那么年轻,以至于一切都是巨大的突破,也没有那么古老,以至于没有改进的余地。由于这些系统在不断发展,因此至关重要的是要了解它们的不足之处,以便仔细地提前计划。
作为最后的智慧箴言,我要说的是,没有完美
- 原文链接: medium.com/@francomangon...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!