“fork”这个词有点令人困惑,因为不同种类的“fork”可以表示非常不同的意思。
代码基础分支代码基础分支是软件实现代码的副本。代码库分支通常会对原始代码库进行调整。在比特币的背景下,代码基叉可以完全兼容比特币协议。它们可以通向区块链福克斯,还可以建立一种全新的加密货币。
当区块链分支成两个版本的交易历史时,发生区块链分叉。造成这种情况的原因有很多,可以是预料之中的,也可以是意料之外的,根据具体情况,可能会导致多种结果,从单个孤立的区块到全新的加密货币。
硬分叉硬分叉是放松或删除规则的协议升级。如果所有用户升级,硬分叉不会导致区块链分叉。尤其是在比特币的背景下,有人认为除非所有用户都升级,否则“升级”后的协议根本不应该叫硬分叉,而应该叫新的加密货币或“分叉币”。
软叉软叉是一个协议升级,可以收紧或者增加规则。软分叉升级可能会导致区块链的分叉,但大多数哈希力的强制执行可以确保最终收敛到相同的交易历史。矿工的主动软分叉(MASF)由散列功率触发,而用户激活的软分叉(UASF)由用户激活。
灰色地带尽管不同的术语看似清晰,但比特币的现实却很复杂。硬分叉和软分叉的区别并不总是很明显,有时甚至根本不清楚什么应该被视为协议升级。到目前为止,在很多情况下,专家们对某些事件应该如何分类意见不一,出于政治动机试图改写历史。