鏈圈分叉指南:分道揚(yáng)鑣還是小打小鬧?
七夕剛過去不久,相信不少人還沉溺在愛情粉紅色里,所以我決定潑一盆冷水,緩解下內(nèi)心。談過戀愛的都知道,情侶,聊得投機(jī),事情再大,頂多只是小打小鬧;話不投機(jī),事情再小,***還是分道揚(yáng)鑣,充分體現(xiàn)著共識(shí)的重要性。當(dāng)然如果遵從“女朋友說得永遠(yuǎn)都對(duì)”這個(gè)觀點(diǎn),共識(shí)實(shí)現(xiàn)就很輕松啦!
談到共識(shí),就不能不想到區(qū)塊鏈,畢竟這是個(gè)建構(gòu)在共識(shí)機(jī)制上的網(wǎng)絡(luò),那么根據(jù)達(dá)成共識(shí)程度的不同,區(qū)塊鏈也會(huì)做出相應(yīng)調(diào)整,比如軟分叉、硬分叉......
聊不好,分道揚(yáng)鑣——硬分叉
首先我們還是要了解下【硬分叉】的誕生過程:開發(fā)者發(fā)布新的客戶端,但新舊版本協(xié)議不兼容,區(qū)塊鏈發(fā)生***性分歧;運(yùn)行新客戶端的礦工開始挖出基于新規(guī)則的區(qū)塊,而舊客戶端的礦工仍然會(huì)挖掘基于舊規(guī)則的區(qū)塊。
一句話來說,硬分叉意味著新舊版本軟件互不兼容,必須分道揚(yáng)鑣,分成兩條不同的區(qū)塊鏈。
拋開技術(shù)嚴(yán)謹(jǐn)性,我們來舉個(gè)例子。假設(shè)一對(duì)情侶,因?yàn)榻Y(jié)婚分歧導(dǎo)致分手,支持女方的閨蜜們說男方太渣,支持男方的哥們說女方太作,兩方互不相讓,***分道揚(yáng)鑣,這就是區(qū)塊鏈硬分叉的產(chǎn)生過程。
因?yàn)橛卜植娌恍枰紤]新舊版本兼容性的問題。那么,硬分叉就可以對(duì)交易數(shù)據(jù)結(jié)構(gòu)和區(qū)塊數(shù)據(jù)結(jié)構(gòu)更大膽的修改。如果修改幅度過大,可能會(huì)將對(duì)區(qū)塊鏈網(wǎng)絡(luò)造成難以挽回的影響。
在一般情況下,主鏈?zhǔn)前?**區(qū)塊的那條鏈,如果某一條分叉在某個(gè)時(shí)刻超過了主鏈,那么就將成為成為新的主鏈。新的主鏈究竟是機(jī)遇還是危機(jī)?沒有人說得清楚。
聊得好,小打小鬧——軟分叉
首先,了解下相關(guān)定義,當(dāng)新共識(shí)規(guī)則發(fā)布后,節(jié)點(diǎn)不一定要升級(jí)到新共識(shí)規(guī)則,因?yàn)檐浄植娴男乱?guī)則仍舊符合舊規(guī)則,所以未升級(jí)的節(jié)點(diǎn)仍能接受新規(guī)則。也就是說,舊節(jié)點(diǎn)可以兼容新節(jié)點(diǎn)產(chǎn)生的區(qū)塊,即為軟分叉。
這也就意味著軟分叉并不會(huì)產(chǎn)生兩條區(qū)塊鏈,新舊區(qū)塊都在同一條區(qū)塊鏈。只不過新區(qū)塊通過一些不可告人的技術(shù)讓舊區(qū)塊接受了他。
一句話來說,軟分叉仍然是一條區(qū)塊鏈,只不過前后區(qū)塊并不能實(shí)現(xiàn)相互兼容。
我們?nèi)匀粧侀_技術(shù)的嚴(yán)謹(jǐn)性來談?wù)?,我們都知道飛機(jī)安檢比火車嚴(yán)格,那么我們將滿足火車安檢的需求標(biāo)記為區(qū)塊一,滿足飛機(jī)安檢的需求標(biāo)記為區(qū)塊二。很顯然,區(qū)塊二是能夠被區(qū)塊一接納的,也就是乘坐飛機(jī)安檢的需求勢(shì)必能乘坐火車,反之則不行。
小打小鬧VS分道揚(yáng)鑣
軟硬分叉其實(shí)各有利弊。硬分叉實(shí)現(xiàn)難度較軟分叉低,BUG更容易避免,代碼實(shí)現(xiàn)更容易。同時(shí)新生區(qū)塊和舊區(qū)塊互不兼容,就像是判斷題,對(duì)錯(cuò)分明,不需要思前顧后,避開很多限制,技術(shù)延展性更強(qiáng)。
而軟分叉比硬分叉溫和很多,軟分叉不要求區(qū)塊鏈中所有節(jié)點(diǎn)統(tǒng)一時(shí)間升級(jí),可以允許逐步升級(jí),并且在軟分叉過程中不影響系統(tǒng)的穩(wěn)定性和有效性。
但這也就意味著實(shí)現(xiàn)難度更高,并且多了更多限制。新區(qū)塊只能在已有結(jié)構(gòu)中調(diào)整,要能夠讓舊區(qū)塊接受,因此,升級(jí)空間有限。相比較硬分叉,軟分叉無疑像個(gè)論述題,更需要瞻前顧后,思量周全。
軟硬分叉與共識(shí)之間剪不斷,理還亂,去中心化系統(tǒng)中達(dá)成共識(shí)大部分時(shí)候可能很困難,但有時(shí)候也可能很簡(jiǎn)單,比如當(dāng)一些利益的因素達(dá)成共識(shí)之后,如果共識(shí)的正誤無法估量,那么軟硬分叉的準(zhǔn)確性也更難以捉摸。