什么是区块链分叉?

区块链分叉是指区块链分裂成两个独立的分支的技术现象。这两个分支在分裂点之前共享它们的交易历史。从那时起,它们各自独立地朝着各自的方向发展。

区块链分叉的原因有很多。分叉可以是意外的,也可以是有意的。有意的分叉进一步被分类为软分叉硬分叉

区块链分叉要点

  • 产生两个竞争分支的区块链分裂。
  • 可以是意外的或有意的。
  • 意外分叉由区块链解决。
  • 有意分叉用于实施新的共识规则。
  • 硬分叉要求节点升级到新的共识规则或回滚状态。
  • 软分叉不要求节点升级到新的共识规则。
  • 一些加密货币,如比特币现金,是通过硬分叉创建的。

意外和有意的分叉

在任何给定的时刻,成千上万的矿工都在竞争创建一个新区块。由于同时进行了如此多的挖矿活动,两个或更多矿工有时会同时挖出一个新区块。当这种情况发生时,就会产生一个意外的分叉。当新区块被添加到其中一个链上时,问题就解决了。当这种情况发生时,网络将继续在较长的链上工作,并放弃较短的链。

当进行有意的分叉时,网络不会在单一链上重新汇合。这种类型的分叉被区块链开发者用来实现对协议的更改。例如,开发者可能使用有意的分叉来增加区块大小,减少区块时间,甚至实现一个全新的共识算法。有意的分叉可以是的或的。两者在与另一个链的兼容性和它们的应用方面有所不同。

软分叉和硬分叉

硬分叉是一种引入新规则的分叉,要求网络中的节点升级它们的软件。考虑一个区块链,它的区块大小限制为 1MB。如果你想要更大的区块,能够存储多达 8MB 的数据,你必须实施一套新的规则,将区块大小限制从 1MB 增加到 8MB。这将导致一个硬分叉。

硬分叉发生时,社区成员(用户和矿工)必须做出决定。他们可以更新他们的节点并切换到新分叉的链上,或者他们可以继续运行旧软件。无论哪种方式,他们在两个链上都拥有加密货币;他们在遗留链上拥有之前的币,他们可以在新链上声明新协议的加密货币。

一旦更改到位,任何未升级到新共识规则的节点都将无法再参与共识机制。它们在硬分叉发生的那一刻被迫进入一个单独的链。未升级的系统无法处理新的共识规则,使得由硬分叉导致的区块链分裂与主链前向不兼容

与硬分叉相反,软分叉实施的更改使链前向兼容。为了前向兼容,根据新规则创建的区块也必须根据旧规则有效(反之则不然)。因此,软分叉不要求节点升级。它们可以继续运行旧版本的软件,并仍然作为交易的验证者参与升级后的网络。软分叉可以由用户(UASF,或用户激活的软分叉)或矿工(MASF,或矿工激活的软分叉)激活。

分叉在实践中

区块链分叉相当常见。事实上,它们是创建新加密货币的方式之一。一些流行的货币是硬分叉的产物。一个例子是比特币现金,它在 2017 年 8 月从比特币分叉而来。比特币现金的分叉将区块大小限制从 1MB 更改为 8MB,后来又更改为 32MB。

硬分叉的另一个例子是以太坊经典。这是在 2016 年 10 月创建的,当时一群开发者拒绝了通过硬分叉实施的新规则。相反,他们选择继续使用旧的以太坊区块链,后来被重命名为以太坊经典。

由于它们有潜力将区块链社区分成两个群体,硬分叉通常在开发过程中给予软分叉以优先权。最初认为比特币的 SegWit 协议需要一个硬分叉来改变交易的基本结构。然而,开发者找到了一个前向兼容的解决方案,并用软分叉实施了 SegWit。到今天,尚未更新到 SegWit 的节点仍在软分叉后的比特币网络中参与。

对于拥有加密货币的任何人来说,了解分叉将是有用的。如果你拥有的加密货币受到硬分叉的影响,这些知识将帮助你决定应该采用哪个分支,并在选择钱包提供商或加密货币托管人时提供帮助。