區(qū)塊鏈共識算法簡介
前言:共識算法是區(qū)塊鏈項目中最核心的部分。有分布式,就需要達(dá)成共識。目前為止,對于區(qū)塊鏈項目爭議最大的之一也是共識算法,比如EOS的DPoS機(jī)制。回到共識機(jī)制本身,我們?nèi)绾蝸砝斫獗澈蟮谋举|(zhì)呢?而不是人云亦云呢?從藍(lán)狐筆記的角度,共識算法是一個不斷演進(jìn)的過程,也是治理機(jī)制的一部分,無須一概否定。本文作者Phil Glazer,文章來源于hackernoon.com,由藍(lán)狐筆記社群芥彌翻譯。
共識算法的使用是去中心化加密貨幣最重要的一個特征。共識算法對于加密貨幣而言至關(guān)重要的,因為它可以防止雙花問題。從歷史上看,雙花問題是限制數(shù)字貨幣發(fā)展的一個重要挑戰(zhàn),直到最近,采用了分布式賬本之后才得以改觀。
正因為加密貨幣是由公開的和不可篡改的分布式賬本實現(xiàn)的,因此必須采用共識算法來驗證賬本是否具有唯一性,以保證整個加密貨幣網(wǎng)絡(luò)不被惡意節(jié)點(diǎn)所破壞。
正如TechTarget所解釋,“在計算機(jī)科學(xué)中,共識算法是一種用在分布式過程或系統(tǒng)中,實現(xiàn)單一數(shù)據(jù)值的協(xié)議“。共識算法被設(shè)計用于涉及多個不可靠節(jié)點(diǎn)的網(wǎng)絡(luò)中,實現(xiàn)可靠性。解決這個問題-即共識問題-在分布式計算和涉及多個代理的系統(tǒng)中非常重要。
為了適應(yīng)這種現(xiàn)實,共識算法有必要假設(shè)一些進(jìn)程和系統(tǒng)將不可使用,并且某些系統(tǒng)間的通信會丟失。因此,共識算法必須具備容錯的能力。例如,通常假設(shè)只需要一部分節(jié)點(diǎn)作出反應(yīng),但最少需要百分五十一的節(jié)點(diǎn)反應(yīng)。
在加密貨幣方面,共識算法被設(shè)計成用來確保交易是有效的,通過采用冗余的方法,引入多個參與者來驗證交易準(zhǔn)確性。
在當(dāng)前的多個項目中,有四個主要的實現(xiàn)方式,每個都有其獨(dú)特的優(yōu)點(diǎn)和權(quán)衡:工作量證明(pow),權(quán)益證明(pos),委托權(quán)益證明(dpos)和拜占庭容錯機(jī)制(bft)。值得注意的是,這是一個不斷發(fā)展的領(lǐng)域,存在其他方法,并且可能會出現(xiàn)新的方法。
工作量證明(pow)
工作量證明是第一個成功的去中心化區(qū)塊鏈共識算法。工作量證明被比特幣和其他的一些加密貨幣使用,例如以太坊(以太坊計劃遷移到權(quán)益證明),萊特幣,zcash,門羅和其他一些別的。
工作量證明要求節(jié)點(diǎn)參與者執(zhí)行計算密集型的任務(wù),但是對于其他網(wǎng)絡(luò)參與者來說易于驗證。在比特幣的例子中,礦工競相向由整個網(wǎng)絡(luò)維護(hù)的區(qū)塊鏈賬本中添加所收集到的交易,即區(qū)塊。為了做到這一點(diǎn),礦工必須第一個準(zhǔn)確計算出“nonce”,這是一個添加在字符串末尾的數(shù)字,用來創(chuàng)建一個滿足開頭特定個數(shù)為零的哈希值。
工作量證明最顯著的優(yōu)點(diǎn)是,它在過去的幾年里得到了實踐的證明,這個比許多其他共識算法都更值得一提。然而,工作量證明并不是沒有缺點(diǎn),其中包含采礦的大量電力消耗和低交易吞吐量。
權(quán)益證明(pos)
對于權(quán)益證明,有很多實施提議。在所有的實施方案中,權(quán)益證明要求所有的參與者抵押一部分他們所擁有的token來驗證交易。不同于通過完成復(fù)雜計算問題來驗證交易,驗證者需要通過鎖定token來完成交易驗證。
選取交易驗證者的方式通常是根據(jù)他們所抵押的token占整個網(wǎng)絡(luò)代幣的比例,以及token抵押時長,或者是一些其他的方式以確保交易驗證者的利益和整個網(wǎng)絡(luò)的長期利益是一致的。
工作量證明通過不劃算的耗費(fèi)電力來阻止不良行為,權(quán)益證明則通過長期綁定驗證者的利益和整個網(wǎng)絡(luò)的利益來阻止不良行為。因此,我們很樂于見到它的成功。
通過鎖定代幣,如果驗證者存在欺詐性交易,那么他們所抵押的token也會被削減。與工作量證明一樣,權(quán)益證明的細(xì)節(jié)比這里呈現(xiàn)的要豐富得多。
權(quán)益證明目前被用到點(diǎn)點(diǎn)幣,Decred, 以及不久之后會用在以太坊上。權(quán)益證明的優(yōu)勢在于它更經(jīng)濟(jì),可能相比于工作量證明更能有效防止攻擊,但是目前還沒有被有效的證明,也沒有在大項目中實施。
委托權(quán)益證明(dpos)
雖然委托權(quán)益證明和權(quán)益證明名字差不多,但實施細(xì)節(jié)卻有顯著的不同。在委托權(quán)益證明中,不同于權(quán)益證明的抵押token來驗證交易,而是通過token的持有者投票產(chǎn)生一組交易驗證者(超級節(jié)點(diǎn))。
委托權(quán)益證明既是去中心化的,因為網(wǎng)絡(luò)中的所有參與者都能參與投票選取節(jié)點(diǎn)來驗證交易,但也是中心化的,因為只有一組交易驗證者,這樣的好處就是提高交易和驗證的速度。
委托權(quán)益證明的實施中需要維持良好的信譽(yù),持續(xù)投票流程以及驗證節(jié)點(diǎn)的更換,來得以保證選取產(chǎn)生的驗證者有良好的責(zé)任心和誠實感。
委托權(quán)益證明的優(yōu)勢在于良好的可擴(kuò)展性以及快速的交易驗證,但是缺點(diǎn)在于部分中心化,并且治理模式還沒在大的區(qū)塊鏈項目中被證明行之有效。委托權(quán)益證明目前被用于Steemit,EOS和BitShares等項目中。
拜占庭容錯機(jī)制(bft)
拜占庭容錯機(jī)制本質(zhì)上是一個高度技術(shù)性的算法(像其他共識算法一樣)。一般來說,加密貨幣項目所采用的拜占庭容錯機(jī)制是通過允許將軍(節(jié)點(diǎn))分別管理一條鏈,并在彼此之間共享消息用來確保正確的交易記錄和每個節(jié)點(diǎn)的誠實性。
比較突出的是,拜占庭容錯機(jī)制被用于瑞波(驗證節(jié)點(diǎn)由瑞波團(tuán)隊選出)和恒星幣(任何人都可以當(dāng)驗證節(jié)點(diǎn),信任節(jié)點(diǎn)由社區(qū)共識產(chǎn)生)。
拜占庭容錯機(jī)制的優(yōu)勢在于可擴(kuò)展性和低廉的轉(zhuǎn)賬費(fèi)用,但是和委托權(quán)益證明一樣,引入了部分中心化。
新興的共識算法
正如前面所提到的,共識算法和交易驗證的問題非常困難,并且非常微妙。目前有更多新的共識算法提出不同的權(quán)衡方案,并且可能會替代當(dāng)前所使用的共識算法。
目前,dag正受到越來越多的關(guān)注,并且為可擴(kuò)展性提出一個可靠的潛在解決方案,Hashgraph,Tangle和Block-lattice是最近受到關(guān)注的三種實現(xiàn)方式(同樣,即將推出的更多內(nèi)容- 并非所有關(guān)注都是正面的)。
總結(jié)
短時間內(nèi),共識算法必須在可擴(kuò)展性和中心化之間進(jìn)行權(quán)衡(盡管第二層網(wǎng)絡(luò)可能會打破可擴(kuò)展性和中心化這個平衡,例如分層網(wǎng)絡(luò),以太坊雷電網(wǎng)絡(luò),比特幣閃電網(wǎng)絡(luò))。我們還是很期待能夠看到,哪個共識機(jī)制能夠刺激大規(guī)模的參與者參加穩(wěn)定治理,以及協(xié)議和社區(qū)如何適應(yīng)技術(shù)發(fā)展。
責(zé)任編輯:售電衡衡
-
5大重點(diǎn)任務(wù)11個重點(diǎn)細(xì)分 河北加快構(gòu)建省級能源大數(shù)據(jù)中心
-
能源互聯(lián)網(wǎng)注入數(shù)字經(jīng)濟(jì)新動能 電力大數(shù)據(jù)實現(xiàn)更多價值
-
中國首個100%利用清潔能源運(yùn)營的大數(shù)據(jù)產(chǎn)業(yè)園投運(yùn)
2020-07-21清潔能源,清潔能源消納,青海
-
探索大數(shù)據(jù) 區(qū)塊鏈實現(xiàn)與能源互聯(lián)網(wǎng)良好契合
2020-06-09區(qū)塊鏈,電力行業(yè),能源互聯(lián)網(wǎng) -
基于區(qū)塊鏈的含安全約束分布式電力交易方法
-
區(qū)塊鏈在能源交易與協(xié)同調(diào)度的應(yīng)用前景:提升電力交易的自由度和實時響應(yīng)效率
2019-11-04區(qū)塊鏈在能源交易與協(xié)同