分叉就是區塊鏈面臨著兩條路,選擇向左走還是向右走?如果向左走,就什麼都不用做;向右走,就是選擇了公升級。——jan 眼中的分叉
我所經歷過的區塊鏈中重大的分叉故事,都不是那麼輕鬆的。讓所有節點擊擇公升級到最新的客戶端,本身就是件很難的事,而共識又是分層次的,需要在不同群體間達到共識。達成共識的分叉叫作無爭議的分叉,沒達成共識的分叉叫作有爭議的分叉。——daniel 所理解的分叉
在一群人中達成共識是一件很難的事,即使在只有 10 個人的團隊中,也常常達不成共識。更何況區塊鏈中有幾十萬人、幾百萬人,達成共識的難度之大可想而知,所以分叉也是自然而然會發生的事。
在 fork it 1 中,jan 和 daniel 要和我們聊一聊「fork」這個話題。
採用 pow 共識機制的分叉大部分是根據持有的算力來投票的,而採用 pos 共識機制的分叉,簡單的說是基於出塊人持有的 stake 數量來投票,當然在投票機制的設定上也會有更多的挑戰和玩法。在 pos 分叉中,可以設定成所有 stake 持有者都參與投票,甚至也可以不用持有的 stake 投票,而是疊加其他投票機制設計,比如通過犧牲流動性獲得更多投票額度,假設 10 個 token, 鎖定 10 天就有 100 票,鎖定 20 天就有 200 票等等。
實際上,共識和治理是兩個不同的維度,pow 分叉也可以用 stake 的方式投票,pos 分叉也可以根據持有的算力進行投票。
歷史上發生過很多有趣的分叉故事:btc 的擴容之爭、以太坊的 the dao 事件、拜占庭分叉、軍事坦丁堡分叉、btc 分叉的分叉等等。
btc 的分叉 bch 發生在 2017 年 8 月,當時以位元大陸為首的多家公司,提出了乙個基於位元幣的改進方案,這個方案不是以達成共識作為結果,而是從位元幣分叉出一條新的鏈。在這條鏈上應用他們提出的一系列擴容的方案,包括將每乙個區塊的容量從 1m 公升級到 8m,自此就有了 bch(bitcoin cash),一條全新的鏈。
分叉是關於區塊鏈擴容路線的大辯論,其中又摻雜了各種各樣的社群意見分歧。擴容這件事之所以是乙個問題,就是因為位元幣的頻寬不夠了,每個區塊的交易太擁堵了。在中本聰的**裡,位元幣出塊的儲存上限是 1m,平均下來每秒能容納的交易大概只有 6 到 7 筆,所以在 2015 年開始,位元幣的網路擁堵問題就非常嚴重了。從那時起,社群就有呼聲要求擴容,而針對如何擴容就產生了不同的觀點。
btc 認為不能更改 1m 大小的引數,雖然可能有原教旨主義,但是也有它的道理。而 bitcoin core 首先選擇使用隔離見證的方式,將簽名部分占用的空間移出,這樣區塊的實際可用空間就從 1m 變得更大。隔離見證部署之後一段時間再討論下一步的擴容方案,同時通過 layer 2 或者閃電網路的方案去彌補位元幣效能的不足。
然而在理想的情況下,隔離見證實現了較原來 170% 的容量提公升,但這對於解決整個網路的擁堵還是杯水車薪的。而且以現在的位元幣技術來說,在位元幣之上使用 layer 2 的方式去擴充效能也是乙個漫長的過程。
當觀點不一致時,最終的結果無非兩種,一種是皆大歡喜達成共識,選擇向左走還是向右走,這種時候就不會有硬分叉。另外一種就是沒有達成共識,各自堅持自己的觀點。
在傳統情況下,一般的制度是少數服從多數或者由乙個人拍板,而分叉就提出了另外一種制度,可以各走自己的路。在區塊鏈中所有的資料都是可以複製的,重啟一條鏈,甚至不用使用者投票,就能從 1 個 token 變成 2 個 token。當時很多人看到這種情況的時候是很驚奇的,比如手上的 1 塊錢突然變成了乙個 1 塊錢和另外乙個 1 塊錢。
bch 分叉算是一次成功的分叉了,也被很多公司接受,應用到了很多的場景。之後也出現了非常多的分叉,像 btg、bitcoin god、sbtc 等等,但是這些分叉並沒有成功。這就說明了一種現象:
在網際網路時代 ,網際網路巨頭的壁壘是使用者,創業公司可以複製產品和商業模式,但沒有辦法獲得使用者;在區塊鏈時代,看起來好像是複製**就可以免費獲得原來鏈上的所有使用者,但實質上並不是那麼容易的。使用者並不會因為分叉而一定發生遷移,而是需要看到鏈上凝聚的價值再做選擇。這個價值是什麼,才是區塊鏈時代創業者需要去探索的東西。
區塊鏈 軟分叉和硬分叉
最近學到的東西,記個筆記。區塊鏈中因為各種原因,使得節點之間不完全統一,產生分叉的現象。雙花其實就是一種軟分叉,軟分叉中雖然區塊之間的鏈存在差異,但節點與節點之間仍然可以相容,通過不同的協議,仍然可以保持乙個整體,如同btc 位元幣 選擇的孤塊策略和eth 以太坊 選擇的uncle 策略。硬分叉比較...
區塊鏈的硬分叉 軟分叉介紹
區塊鏈的硬分叉 軟分叉介紹 分叉 由於交易結構的變化,或者區塊的結構變化引起的。硬分叉 由於區塊的結構變化引起的。公升級後的客戶端和不公升級的挖不同的幣 軟分叉 由位元幣交易的資料結構改變引起,區塊的資料結構未改變。礦工啟用軟分叉,使用者啟用軟分叉,隔離見證,擴容。注 最近bch又在硬分叉了,bch...
什麼是區塊鏈分叉
因為區塊鏈是乙個去中心化的資料結構,區塊鏈的不同副本不是時刻都能保持完全一致的。區塊在不同節點間的到達時間會存在差異,因而不同的節點可能擁有不完全一樣的區塊鏈檢視。為了解決這個問題,每個節點總是選擇並嘗試延長代表了最大工作量證明的區塊鏈,即最長的鏈條或者最大累積難度的鏈條。通過彙總記錄在鏈上的每個區...