硬分叉在bitcoin.org上都有定義, 原文的硬分叉被定義成這樣:
A permanent divergence in the the block chain, commonly occurs when non-upgraded nodes can’t validate blocks created by upgraded nodes that follow newer consensus rules.
區塊鏈發生永久性分歧, 在新共識規則發佈後, 部分沒有升級的節點無法驗證已經升級的節點生產的區塊, 通常硬分叉就會發生。
區塊鏈中最出名的兩次硬分叉為紐約共識方案SegWit2x以及大區塊擴容方案BCH硬分叉。
而這兩者都是為瞭解決同一問題:隨著比特幣持有者和區塊鏈上交易的不斷增長,
原本1M的區塊大小已不足以支撐日漸龐大的交易量,
網路擁堵、交易延遲等問題日益嚴重。
比特幣的擁堵已經持續了近1年,
交易手續費極其昂貴,
影響了比特幣作為交易的使用。
其次, 無論軟分叉抑或硬分叉, 其主要目的是直接修改原有共識, 這對於原鏈而言都是災難性破壞。 因為硬分叉修改資料結構後, 新節點生產的區塊會被舊節點拒絕掉, 如果舊節點拒絕升級軟體而堅持按照舊資料結構繼續挖礦,
軟分叉為了做到新節點和舊節點生產的資料完全相容, 那是非常難的, 因為本質上是不一樣的資料結構大家要相互認, 一旦出現有節點拒絕驗證不一樣的交易或區塊, 那就會變成硬分叉。 這也就是Bip 66軟分叉最終變成硬分叉的原因。
換句話而言, 產生硬分叉的一個重要原因是發生共識改變後, 仍有支持原鏈出塊的算力作支撐除了擁有大量算力集中支持的LTC以及BCH無需擔心外。 諸如狗狗幣, 比特黃金, 比特鑽石, 比特ABCDEFG只需將BTC源碼download下來修改名字與參數即可。 難以得到社區的認可, 長遠甚至當下而言, 歸零可期。
本文作者:
龍智, 矽谷密探早期發燒友。 畢業於電子科技大學, 目前在某500強企業存儲研發中心擔任軟體工程師。