我們首先從字面上理解一下分叉,分叉在區塊鏈裡面來說,顧名思義就是原來一根鏈,最後通過分叉分為了兩根,一分為二,可以這樣理解。www.emoneybtc.com在區塊鏈中分叉的主要原因有兩種:一種,可以理解為軟分叉,另外一種,可以理解為硬分叉。咱們今天主要說的話題,就是什麼叫軟分叉,什麼叫硬分叉。這兩種分叉分別是什麼意思,最後會導致什麼樣的一個結果,這是咱們今天主要討論的話題。在區塊鏈中分叉是一個什麼樣的過程呢?咱們來詳細說一下:首先,分叉可以理解為是一種升級,升級在咱們中心化的應用中是一個非常普遍的過程。
第一章 分叉的概念
分叉,顧名思義就是一分為二,當區塊鏈上有兩撥參與者(也就是節點)產生分歧的時候,即有一方希望改良,一方則希望保持原狀,只要其中一方進行代碼更新區塊鏈就會分叉。那麼分叉具體是怎麼一個過程呢,接下來我給大家講解下。
第二章 分叉的過程
用蘋果手機的都知道,升級一個應用是十分簡單的,直接在APP Store中升級就行,這是中心化應用的升級,但是在去中心化的系統中升級就沒有這麼容易了。比特幣網絡每次代碼升級都要獲得社區的一致認同,如果社區無法達成一致,就有可能形成分叉,簡單一句話來講分叉就是指在升級的時候發生了沖突,從而導致區塊鏈分叉。根據分叉後的區塊鏈是否兼容舊區塊,將分叉分為硬分叉和軟分叉。說的簡單點,就是類似window系統的升級和補丁升級。
軟分叉
軟分叉是指區塊鏈的交易數據結構發生改變的時候,舊節點忽略此種改變,可以接受和驗證新節點產出的區塊,即軟分叉之後不會產生兩條鏈。軟分叉相比硬分叉雖然“溫和”了不少,但由於軟分叉必須向前兼容,也就是說不能增加新字段,只能在已有結構下做修改,所以升級空間有限。且軟分叉同樣也存在著一些爭議,軟分叉相比硬分叉技術實現要復雜很多,會使區塊鏈的代碼變得更復雜,這不利於未來的代碼維護,也更容易出現BUG。硬分叉通常是擴展共識規則,而軟分叉是收緊共識規則,所以一旦進行了軟分叉,想要回退就非常困難了,很可能造成硬分叉而導致資金損失。
硬分叉
硬分叉是指區塊的交易數據結構發生改變的時候,舊節點拒絕對新節點生產出的區塊進行驗證,舊節點認為這是不符合規則的,所以新舊節點各自沿著自己的鏈向前走,造成永久分叉,進而形成了不同的兩個鏈。
硬分叉也分為兩種,技術上的硬分叉和社區理念上的硬分叉。技術上的硬分叉指的是,節點代碼的版本升級,升級結束後,不向前兼容,也就是不對舊版本的節點進行兼容,舊版本的節點代碼失效。必須升級到新版本才能進行挖礦記賬。
而社區理念上的硬分叉指的是,社區參與者的觀點不一致,導致一部分社區成員開發出了新的版本,並進行升級,升級結束則在新的鏈上進行挖礦,而另一部分開發者則依然在原鏈上進行記賬挖礦,這樣就導致生成了2條同時運行的公鏈。
第三章 兼容性區別
需要注意的是,軟分叉和硬分叉都“向後兼容”,什麼是“向後兼容”呢?“向後兼容”指的是新軟件接受由舊軟件產生的數據,舉一個最簡單的例子咱們:Windows 10可以運行Windows XP的軟件。這裡注意,軟分叉還可以“向前兼容”,“向前兼容”就是指舊軟件接受由新軟件產生的數據,如用word2013保存的兼容版本文檔可以由word2010打開。而硬分叉不支持向前兼容,一旦升級後,新節點軟件版本產生區塊將不再兼容老的節點。接下來咱們舉例來說明硬分叉的幾種情況。
比特幣:
比如比特幣硬分叉出比特幣現金這種幣,因為是否擴容區塊的大小導致社區出現了兩派,一部分以礦場為代表,另一派以社區開發者為代表;雙方因為理念和各自代表的利益吵得不可開交,於是礦工為代表的一方就通過節點代碼升級出現了兩條鏈。一部分礦工在新鏈上生產區塊,一部分人繼續在舊鏈進行挖礦,這才導致了比特幣現金的出現。
EOS:
而eos呢前段時間也是搞的沸沸揚揚的分叉事件,起因是因為BM發了一條信息說,eos要進行硬分叉,讓社區的一大部分人嚇得不輕。最後發現BM說的分叉是軟件技術的硬分叉,不會導致生成兩條鏈。EOS主鏈發布以來,基本上每周都會有代碼上的小更新,小補丁,但這些都不是硬分叉。但很明顯,這次BM提出的升級,是一次比較“嚴肅”的升級,其目的是為了提升EOS的性能,並不是因為EOS社區裡出現糾紛,打得不可開交才會硬分叉。這是一次技術性的硬分叉,所有的節點都會升級到最新版,並不會出現“EOS現金”類似的情況。如果EOS節點不更新那這個節點就沒有了,之後它就不能再繼續作為節點存在。他只能在舊鏈上自己玩,包括錢包在內的所有應用都會失效,因為舊鏈與應用都不再被兼容,整個舊鏈都會“死”,就更別說節點了。
以太坊:
區塊鏈圈裡第一個有影響力的硬分叉應該是以太坊的分叉事件。以太坊上一個著名的項目The DAO由於其自身漏洞,導致黑客竊取了當時價值約6000萬美元的以太幣。2016年7月,以太坊開發團隊通過修改以太坊軟件的代碼,在第1920000個區塊強行把The DAO及其子DAO的所有資金全部轉到一個特定的退款合約地址,從而“奪回”黑客所控制的DAO合約幣。
由於一部分礦工並不認同這個修改,於是形成兩條鏈,一條為以太坊(ETH),一條為以太坊經典(ETC),各自代表不同的社區共識以及價值觀。當以太坊發生了這次硬分叉後,產生了兩條鏈。由於這兩條鏈在發生分叉之前的數據都是一樣的,一個非常有意思的現象出現了:原本持有以太幣(ETH)的人,發現自己除了持有原有的ETH外,又有了相同數量的ETC。
也就是說,憑空的多出了一些資產。這些資產的價值具體怎樣,還要看市場交易情況。但總的來說,區塊鏈的硬分叉,沒有減少資產,反而讓人手裡多了一種資產,看上去總歸是一件不虧的事情,於是區塊鏈分叉就成了一種資產憑空增加的方式。
第四章 IFO
社區硬分叉,讓大量的幣持有者憑空的增加了一種新的數字貨幣。 硬分叉這種創造貨幣的方式和ico非常類似,於是一個新的名詞誕生了——IFO(Initial Fork Offerings)。隨著越來越多的硬分叉發生,比特幣的公信力是否還能像以前一樣?IFO會不會成為比特幣的殺手?我認為這還需要時間的考驗。IFO本來可以是一種很不錯的對比特幣改造的實驗方法,但是這些分叉幣不但絲毫沒有影響比特幣的價值與地位,反而他們自己看起來大部分即將歸零。比特幣可以無限復制出無數種加密貨幣,為什麼只有比特幣有價值?現在事實給了你們一些答案,你可以復制比特幣的代碼,創造無數個比特幣,但是比特幣背後的生態(開發者、礦工、交易所、商家、用戶)你無法復制。就像如果把淘寶、微信的源碼給你,你能再造一個淘寶和微信嗎?
第五章 分叉是好還是壞
分叉的好壞目前也沒有一個定論,如果分叉的目的是使得公鏈更加健壯,那麼我們認為這種分叉是有利的,如果分叉的目的單純的為了IFO並衍變為割韭菜的圈錢行為,那麼我們認為這樣的分叉是有損公鏈的實際價值的。但是分叉最終的結果必定會對幣的內在價值帶來一些波動。