在区块链的世界里,以太坊作为智能合约平台的领军者,其运作机制充满了精妙的设计,共识机制是保障网络去中心化、安全性和一致性的核心,当我们谈论以太坊的共识过程时,一个经常会遇到但又容易被忽视的概念就是“孤块”(Orphan Block),你是否知道,在以太坊的特定语境和社区交流中,孤块还有一个更为形象和生动的别名?

我们就来深入探讨一下以太坊中的孤块,以及它那个鲜为人知的名字。

什么是孤块?

要理解孤块,我们首先要回顾一下以太坊的工作量证明(PoW)机制(尽管以太坊已转向权益证明,但PoW中的许多概念在PoS中仍有体现,理解孤块有助于掌握区块链的底层逻辑)。

在以太坊这样的区块链网络中,矿工们(在PoS中是验证者)不断地尝试解决复杂的数学难题,第一个解决问题的节点将获得创建新区块的权力,这个过程被称为“挖矿”。

当一个矿工成功“挖出”一个区块后,他会立即将这个广播到整个网络,其他节点在收到这个新区块后,会将其连接到他们各自认为的“最长有效链”的末端。

网络中可能同时有多个矿工在相近的时间内找到了答案,但由于网络延迟或其他原因,不同节点接收新区块的顺序可能不同,这就导致了一个经典的问题:分叉

假设我们有一条主链是 A -> B -> C,有两个矿工,矿工X和矿工Y,几乎在同一时间基于区块C分别挖出了新区块X1和Y1。

  • 对于先收到X1广播的节点来说,它们会把链延伸为 A -> B -> C -> X1。
  • 而对于先收到Y1广播的节点来说,它们的链则是 A -> B -> C -> Y1。

这时,网络就出现了暂时的两条分支,以太坊的共识规则是“最长有效链优先”,当分叉发生时,较短的那条链上的区块就成为了“孤块”。

在我们的例子中,假设后续的区块(比如X2)是基于X1创建的,并且被网络大多数节点确认,那么A -> B -> C -> X1 -> X2 就成为了新的最长有效链,而区块Y1及其之后的所有区块,因为没有被最长链所包含,就失去了成为主链一部分的机会,这个Y1区块,就是一个典型的孤块

孤块虽然包含了一些有效的交易和挖矿奖励,但它被“遗弃”了,没有被写入最终的、被所有人承认的账本,创建孤块的矿工(或验证者)虽然也付出了工作量,但因为其所在的分支没有成为最长链,所以无法获得区块奖励,这是一种网络竞争中的正常损耗。

随机配图