淺談硬分叉:新節點在左,舊節點在右
前言
昨天BTC暴跌了,突如其來但又彷彿在情理之中,還順帶上了一波微博熱搜。然後就有各路專家、分析師分析比特幣暴跌是因為BCH硬分叉在即吧啦吧啦諸如此類。
小編尋思著可能會有朋友一臉懵逼:BCH我知道,硬分叉是個什麼鬼?其實小編一開始也不清楚「硬分叉」是什麼,但是古人教導我們「敏而好學,不恥下問」。於是,七維君只好打起十二萬分精神,努力學習,畢竟區塊鏈可能是繼蒸汽機、電力、信息、互聯網科技之後第五個最有潛力引發顛覆性革命的核心技術。相信很多朋友也會和七維君有同樣的想法,不如我們一起學習,一起進步!
01
為什麼會產生分叉?
為什麼會產生分叉?也許這樣分析解釋比較直觀:
隨著BTC價格不斷飆升,市場上比特幣的用戶量越來越大,交易轉賬愈加頻繁,可能會開始出現比特幣網路擁堵、交易費用上升等問題。出現這些情況是因為比特幣區塊大小限制為1MB,比特幣一筆交易約為250B,甚至更多,區塊產生的間隔時間約10分鐘。那麼讓我們以此為基礎計算一下:
1MB=1024KB=1024*1024=1048576B
1048576÷250=4194.304筆
10min=10×60=600s
4194.304÷600≈6.99筆/s
通過計算可以知道,比特幣每秒處理的交易數約為7筆,位元組大一些的交易連7筆/s都達不到。引一個數據作為對比:支付寶雙11當天峰值約為12萬筆/s。
所以,為了解決交易擁堵的問題,大家提出了升級擴容的建議。在中心化系統中,升級通常比較簡單,直接在應用商店更新即可;但是在去中心化系統中,升級並不是那麼簡單。
比特幣每次代碼升級都要獲得比特幣社區的一致認可,如果比特幣社區無法達成一致,區塊鏈就很可能產生分叉。
通俗來講,分叉是指區塊鏈在升級時發生了意見分歧,從而導致區塊鏈分叉。根據分叉後的區塊鏈是否兼容舊區塊,將分叉分為硬分叉和軟分叉,我們今天只討論硬分叉。
02
硬分叉是什麼?
(你以為的硬分叉)
(實際上的硬分叉)
關於硬分叉的定義可以從官方定義和抽象定義兩個層面來看:
官方定義
硬分叉在http://bitcoin.org上有定義,但定義其實很模糊,原文是這樣描述的:
A permanent divergence in the block chain, commonly occurs when non-upgraded nodes can』t validate blocks created by upgraded nodes that follow newer consensus rules.
(https://bitcoin.org/en/glossary/hard-fork)
區塊鏈發生永久性分歧,在新共識規則發布後,部分沒有升級的節點無法驗證已經升級的節點生產的區塊,通常硬分叉就會發生。
簡單來說就是,如果區塊鏈軟體的共識規則被改變,並且這種規則改變無法向前兼容,舊節點無法認可新節點產生的區塊,即為硬分叉。抽象定義
硬分叉是指比特幣區塊格式或交易格式(這就是廣泛流傳的「共識」)發生改變時,未升級的節點拒絕驗證已經升級的節點生產出的區塊,不過已經升級的節點可以驗證未升級節點生產出的區塊,然後大家各自延續自己認為正確的鏈,所以分成兩條鏈。
可以從字面意思理解「硬」這個字來理解硬分叉:硬核、固執。
即舊節點不會接受新節點創建的合法區塊,認為新節點的合法區塊是不合法的,哪怕新節點的算力為99%,舊節點的1%算力依然會維護著不同的一條鏈。所以很明顯硬分叉是不向前兼容。要實現硬分叉所有的用戶(礦工,交易所,普通用戶)都要切換的新的協議版本上。
是不是很「硬」?頗有一種「他強任他強,清風撫山崗;他橫任他橫,明月照大江」的感覺。
03
硬分叉的兩面性
凡事都有兩面性,硬分叉也不例外。
在沒有得到幾乎所有生態中的參與者同意的情況下,硬分叉很可能會分裂整個比特幣生態。因此這是一種極具爭議和危險的區塊鏈升級技術,整個比特幣社區對於硬分叉都非常謹慎。
但不少人認為硬分叉在未來關鍵的時刻將發揮巨大的作用,是比特幣可以長期發展的根基。可以預見當比特幣即將遭遇重大風險,甚至滅頂之災時,這時候整個比特幣生態由於利益相關很容易就會達成共識,對比特幣客戶端進行升級以避免危機。
舉個通俗易懂的例子:假如有一天人類可以移民到火星生活,一定會有人站會出來說人類不應該移民火星,因為那樣分裂了人類社會。但如果有一天地球資源枯竭,無法滿足人類生存的時候,相信幾乎所有人都會達成要移民的共識。
現在我們一方面可能經常會聽到各種比特幣死亡論,比如量子計算機的發展、比特幣密碼演算法被破解等等,很多專家信誓旦旦的宣稱「如果發生XXX情況,比特幣就死亡了,所以比特幣沒有未來」。
另一方面,相信大家了解了硬分叉的存在,應該可以理解要解決這些問題在技術層面上實際並不困難,但是要在一個去中心化的系統中達成共識是困難的。總的來說,要達成共識大部分時候可能很困難,但有時候也可能很簡單,這需要我們從不同的層面、角度去思考。
04
硬分叉經典案例
ETH硬分叉
鏈圈第一個有影響力的硬分叉應該是以太坊硬分叉事件。
The DAO計劃是基於以太坊智能合約建立的一個眾籌平台,於2016年5月正式發布,截止當年6月,募集資金超過1.6億美元。之後,The DAO由於其自身漏洞,被黑客轉移了市值五千萬美元的以太幣。
為了挽回投資者資產,以太坊社區投票表決,決定將更改以太坊代碼,希望索回資金。為此,以太坊在第1920000區塊進行硬分叉,回滾所有以太幣(包括被黑客佔有的)。
但是,有一部分人認為以太坊這種作法違背了區塊鏈的去中心化和不可篡改精神,堅持在原鏈上挖礦。從而形成兩條鏈,一條為不承認回滾交易的鏈——以太經典(ETC),一條為承認回滾交易的鏈即以太坊(ETH),各自代表不同的社區共識以及價值觀。
BCH硬分叉
北京時間11月16日凌晨2:16分,BCH硬分叉大戰落下帷幕,最終分成了BCH ABC和BCH SV。
這次BCH硬分叉事件的起因,是比特大陸投資的ABC開發團隊認為BCH應該往基礎建設公鏈方向發展,像以太坊一樣開拓出更多應用場景。而以CSW主導的SV社群陣營,則希望BCH仍像當年中本聰論文描述的那樣,對操作碼嚴格限制,專註在轉賬交易本身,並希望將區塊最終擴容為128MB。
而這只是分歧的導火索,在這背後可能還會有更深刻的利益之爭即將上演。神仙打架,最後遭殃的都是凡人。這場博弈的最後贏家,我們不得而知。
總結
THE END
對於數字貨幣持有者來講,硬分叉會讓他們額外增加一筆財富。比如:以太坊硬分叉後產生了兩條區塊鏈,由於這兩條鏈在分叉之前的數據都是一樣的,所以分叉後原本持有以太幣ETH的人,除了持有原有的ETH外,還增加了相同數量的ETC。
硬分叉之後幣價會漲會跌,但前景究竟如何發展,往往是由市場的選擇決定。通常來看,分叉後幣價會先暴跌,然後分叉後的兩個幣種經過時間的洗禮後會漸漸回歸理性。
更近一步:對項目本身來講,不同理念的團隊強行擰在一起只會窩裡斗,於項目長期發展不利。對區塊鏈來講,區塊鏈作為一個複雜的去中心化系統,誰也不能保證自己的理念是完美的,綁在一起妥協出一個方案很可能是死路。而專心致志分兵突圍,勝算可能會更大,對項目來講也會更好一些。推薦閱讀:
TAG:區塊鏈(Blockchain) | 科技 |