區塊鏈共識算法簡介:共識算法決定了項目發展方向
共識算法是區塊鏈項目中最核心的部分。有分布式,就需要達成共識。目前為止,對于區塊鏈項目爭議最大的之一也是共識算法,比如EOS的DPoS機制?;氐焦沧R機制本身,我們如何來理解背后的本質呢?而不是人云亦云呢?從藍狐筆記的角度,共識算法是一個不斷演進的過程,也是治理機制的一部分,無須一概否定。
共識算法的使用是去中心化加密貨幣最重要的一個特征。共識算法對于加密貨幣而言至關重要的,因為它可以防止雙花問題。從歷史上看,雙花問題是限制數字貨幣發展的一個重要挑戰,直到最近,采用了分布式賬本之后才得以改觀。
正因為加密貨幣是由公開的和不可篡改的分布式賬本實現的,因此必須采用共識算法來驗證賬本是否具有唯一性,以保證整個加密貨幣網絡不被惡意節點所破壞。
正如TechTarget所解釋,“在計算機科學中,共識算法是一種用在分布式過程或系統中,實現單一數據值的協議“。共識算法被設計用于涉及多個不可靠節點的網絡中,實現可靠性。解決這個問題-即共識問題-在分布式計算和涉及多個代理的系統中非常重要。
為了適應這種現實,共識算法有必要假設一些進程和系統將不可使用,并且某些系統間的通信會丟失。因此,共識算法必須具備容錯的能力。例如,通常假設只需要一部分節點作出反應,但最少需要百分五十一的節點反應。
在加密貨幣方面,共識算法被設計成用來確保交易是有效的,通過采用冗余的方法,引入多個參與者來驗證交易準確性。
在當前的多個項目中,有四個主要的實現方式,每個都有其獨特的優點和權衡:工作量證明(pow),權益證明(pos),委托權益證明(dpos)和拜占庭容錯機制(bft)。值得注意的是,這是一個不斷發展的領域,存在其他方法,并且可能會出現新的方法。
工作量證明(pow)
工作量證明是第一個成功的去中心化區塊鏈共識算法。工作量證明被比特幣和其他的一些加密貨幣使用,例如以太坊(以太坊計劃遷移到權益證明),萊特幣,zcash,門羅和其他一些別的。
工作量證明要求節點參與者執行計算密集型的任務,但是對于其他網絡參與者來說易于驗證。在比特幣的例子中,礦工競相向由整個網絡維護的區塊鏈賬本中添加所收集到的交易,即區塊。為了做到這一點,礦工必須第一個準確計算出“nonce”,這是一個添加在字符串末尾的數字,用來創建一個滿足開頭特定個數為零的哈希值。
工作量證明最顯著的優點是,它在過去的幾年里得到了實踐的證明,這個比許多其他共識算法都更值得一提。然而,工作量證明并不是沒有缺點,其中包含采礦的大量電力消耗和低交易吞吐量。
權益證明(pos)
對于權益證明,有很多實施提議。在所有的實施方案中,權益證明要求所有的參與者抵押一部分他們所擁有的token來驗證交易。不同于通過完成復雜計算問題來驗證交易,驗證者需要通過鎖定token來完成交易驗證。
選取交易驗證者的方式通常是根據他們所抵押的token占整個網絡代幣的比例,以及token抵押時長,或者是一些其他的方式以確保交易驗證者的利益和整個網絡的長期利益是一致的。
工作量證明通過不劃算的耗費電力來阻止不良行為,權益證明則通過長期綁定驗證者的利益和整個網絡的利益來阻止不良行為。因此,我們很樂于見到它的成功。
通過鎖定代幣,如果驗證者存在欺詐性交易,那么他們所抵押的token也會被削減。與工作量證明一樣,權益證明的細節比這里呈現的要豐富得多。
權益證明目前被用到點點幣,Decred, 以及不久之后會用在以太坊上。權益證明的優勢在于它更經濟,可能相比于工作量證明更能有效防止攻擊,但是目前還沒有被有效的證明,也沒有在大項目中實施。
委托權益證明(dpos)
雖然委托權益證明和權益證明名字差不多,但實施細節卻有顯著的不同。在委托權益證明中,不同于權益證明的抵押token來驗證交易,而是通過token的持有者投票產生一組交易驗證者(超級節點)。
委托權益證明既是去中心化的,因為網絡中的所有參與者都能參與投票選取節點來驗證交易,但也是中心化的,因為只有一組交易驗證者,這樣的好處就是提高交易和驗證的速度。
委托權益證明的實施中需要維持良好的信譽,持續投票流程以及驗證節點的更換,來得以保證選取產生的驗證者有良好的責任心和誠實感。
委托權益證明的優勢在于良好的可擴展性以及快速的交易驗證,但是缺點在于部分中心化,并且治理模式還沒在大的區塊鏈項目中被證明行之有效。委托權益證明目前被用于Steemit,EOS和BitShares等項目中。
拜占庭容錯機制(bft)
拜占庭容錯機制本質上是一個高度技術性的算法(像其他共識算法一樣)。一般來說,加密貨幣項目所采用的拜占庭容錯機制是通過允許將軍(節點)分別管理一條鏈,并在彼此之間共享消息用來確保正確的交易記錄和每個節點的誠實性。
比較突出的是,拜占庭容錯機制被用于瑞波(驗證節點由瑞波團隊選出)和恒星幣(任何人都可以當驗證節點,信任節點由社區共識產生)。
拜占庭容錯機制的優勢在于可擴展性和低廉的轉賬費用,但是和委托權益證明一樣,引入了部分中心化。
新興的共識算法
正如前面所提到的,共識算法和交易驗證的問題非常困難,并且非常微妙。目前有更多新的共識算法提出不同的權衡方案,并且可能會替代當前所使用的共識算法。
目前,dag正受到越來越多的關注,并且為可擴展性提出一個可靠的潛在解決方案,Hashgraph,Tangle和Block-lattice是最近受到關注的三種實現方式(同樣,即將推出的更多內容-?并非所有關注都是正面的)。
總結
短時間內,共識算法必須在可擴展性和中心化之間進行權衡(盡管第二層網絡可能會打破可擴展性和中心化這個平衡,例如分層網絡,以太坊雷電網絡,比特幣閃電網絡)。我們還是很期待能夠看到,哪個共識機制能夠刺激大規模的參與者參加穩定治理,以及協議和社區如何適應技術發展。
風險警示:藍狐所有文章都不構成投資推薦,投資有風險,建議對項目進行深入考察,慎重做好自己的投資決策。
原文作者:Phil Glazer
原文地址:hackernoon.com
譯者:由藍狐筆記社群芥彌翻譯
本文由 @藍狐筆記社群芥彌 翻譯發布于人人都是產品經理。未經許可,禁止轉載。
題圖來自 Unsplash,基于 CC0 協議
- 目前還沒評論,等你發揮!