數字貨幣十年∣共識機制的發展歷程——BB財經

買賣虛擬貨幣

區塊鏈的共識機制,已有無數的文章分析過了,本文的目的,不在於對各種共識機制的原理做多麼深入的解讀,而是主要從時間線角度,梳理比特幣第一個十年間,共識機制的發展歷程。



一、為何需要共識機制:維護一致性

區塊鏈作為一個分散式賬本,即意味著每一個節點都能夠驗證交易,而面對的物件當然應該是具有一致性的賬本,才不會導致相互間的衝突,共識機制就是為了解決這個“一致性”的問題。

在區塊鏈中,各節點發生的交易都將被記入這個賬本,形式則是把新賬記錄打包成一個區塊,該區塊加上了時間戳,經過了加密,將被附加在最新的區塊之後,以此形成一個鏈式資料結構。

這麼一個資料賬本,本身不提供去中心化,只有加入了去中心化的共識機制,這個系統才能做到去中心化。簡單來說,就是在這個賬本中,誰來記賬就成為了一個問題,記賬權的分配應該是去中心化的。共識機制就是為了解決這個記賬權的問題而出現的。

說白了,共識機制就是一個群體決策的問題:一群人要如何做出對所有人都最有利的決定,而且這個決定要對所有人都公平。

可以拿選舉、投票來作類比。比如英國脫歐,當時是採用了全民公投的方式進行,當同意脫歐的人數達到了一定比例,那麼就選擇脫歐。而在英國的議會,議員們代表著把自身選上來的選民的意志,他們作為代理人在議院行使表決權,做出對整個國家(整個社羣)最有利的決定。區塊鏈中,PoW機制即類似全民公投,DPoS就有點像代議制。

每種共識機制,都要設計好程式,使之能夠把這套規則在區塊鏈中執行下去。而作為一種設計,自然會有其優缺點,某個區塊鏈採用哪種共識機制,是按照自己的理念,適應自身需要,在一開始就決定的。當然,一種共識機制,在最初可能難以預見後續會出現什麼問題,其優缺點需要在時間中得到檢驗。例如比特幣採用的PoW共識機制就具有耗能高與礦池導致算力中心化的缺陷,目前以太坊正打算從PoW共識機制換到PoS共識機制上來。

二、現在已提出的一些共識機制

目前為止,區塊鏈共識機制已經發展多年,有了很多不同的種類,下面是一個對區塊鏈很感興趣的geek(極客)Hasib Anwar製作的現有的一些共識機制圖表:



所有共識機制列表

  • Proof-of-Work 工作量證明
  • Proof-of-Stake 權益證明
  • Delegated Proof-of-Stake 委託權益證明
  • Leased Proof-Of-Stake 租用權益證明
  • Proof of Elapsed Time 過去時間證明
  • Practical Byzantine Fault Tolerance 實用拜占庭容錯
  • Simplified Byzantine Fault Tolerance 簡單拜占庭容錯
  • Delegated Byzantine Fault Tolerance 委託拜占庭容錯
  • Directed Acyclic Graphs 有向非迴圈圖
  • Proof-of-Activity 活動量證明
  • Proof-of-Importance 重要性證明
  • Proof-of-Capacity 容量證明
  • Proof-of-Burn 燃燒證明
  • Proof-of-Weight 重量證明

(以上圖表見Hasib Anwar的文章“Consensus Algorithms: The Root Of The Blockchain Technology”,智慧位元翻譯)

其中,工作量證明(PoW)是第一個區塊鏈共識機制,比特幣以及目前的以太坊都是採用了這一共識機制;權益證明(PoS)在2012年第一次被提出,並被應用在點點幣、未來幣等專案上;委託權益證明(DPoS)最著名的代表則是位元股(Bitshare)、EOS,這三者是目前公鏈應用最多的三種共識機制。在聯盟鏈領域,Hyperledger Fabric 在 0.6 版中應用了PBFT,而在 1.0 版中放棄了PBFT,轉而採用效率更高的Kafka,支援單點和叢集兩種方式,由 Kafka直接給交易排序和出塊;中國的FISCO BCOS則支援平行計算的PBFT和標準RAFT兩種方式。

除了Hasib Anwar圖表中歸納的這些,還有一些也被視為共識機制,例如瑞波幣的Ripple演算法、基於交易的股權證明機制(TaPOS)等。還有一些,例如艾歐塔(IOTA),採用的是的DAG(有向無環圖)資料結構,透過纏結(Tangle)的方式加入區塊鏈,與區塊鏈的鏈式資料結構是不同的,這也可以被當作一種共識機制。

共識機制可以被當作是一套演算法,分散式系統都需要這樣一套演算法來保持一致性,區塊鏈作為分散式系統的一個子集,也借用了分散式系統的一些用於達成共識的協議。比如Lamport設計的保持分散式系統一致性的協議Paxos,還有Stanford提出的RAFT協議,上面提到的聯盟鏈FISCO BCOS 就採用了RAFT協議,此外微軟主導的聯盟鏈Coco 支援Paxos Caesar兩種協議。

三、共識機制的發展之PoW-PoS-DPoS

2008年,中本聰在《比特幣:一種點對點的電子現金系統》這篇論文中提出了比特幣與區塊鏈,其中PoW被應用於比特幣上,來解決誰是大多數的問題。但是人們很快發現這種共識機制的問題,即消耗能源大,以及被大礦池把持算力之後,仍然會導致中心化的問題。

2011年,一個名為Quantum Mechanic的數字貨幣愛好者在Bitcointalk論壇提出Proof-of-Stake(POS)證明機制,該機制被充分討論之後證明具有可行性。POW是比拼算力,而POS簡單來說就是比拼誰手裡的幣多,手裡幣越多,獲得記賬資格的概率就越高。

2012年8月,密碼貨幣極客Sunny King釋出Peercoin(點點幣,PPC),它的挖礦方式採用了POW和POS結合的方式。點點幣之後,又有新星幣(Novacoin,NVC)、黑幣(blackcoin,BLK)等採用POS。在這些幣當中,黑幣對點點幣做了一些最佳化,釋出了POS2.0白皮書,其中最重要的一點就是用餘額(也就是該礦工手裡有多少幣)代替幣齡。

2013年9月,一個名為BCNext的使用者在Bitcointalk論壇發起一個帖子,宣佈將發行一種全新的純POS幣種,後來取名為Nextcoin,簡稱NXT,即未來幣。

2013年8月,BM的位元股(Bitshares)專案啟動,並帶來了一種新的共識機制:Delegated Proof-Of-Stake(DPoS),即股份授權股權證明。它有點像現代國家的代議制,但不是每個選區分配了多少代表席位,而是將持有一定數量代幣的節點作為候選人,再由所有節點投票競選,取得票數前101的當選為代表,由這些代表負責產生區塊。代表們輪流產生區塊,收益(交易手續費)平分。如果有代表不老實生產區塊,很容易被其他代表和股東發現,他將立即被踢出“董事會”,空缺位置由票數排名102的代表自動填補。後來,BM的另一個專案EOS也採用了DPoS的共識機制,不過將原來的101個記賬節點減少到了21個。



POWPOS再到DPOS,可以說是公鏈共識機制發展的一條主線。這三種共識機制各有優劣,比如POW具有完整的數學證明,理論上來說最安全、實現相對簡單,但它在能源消耗、出塊時間、交易容量都有很大不足,而POS則有安全風險更大、選舉節點時候網路流量壓力很大以及“富者愈富,貧者愈貧”等問題,而DPOS縮小了選舉節點數量減少了網路壓力,但其去中心化程度值得懷疑。

09年初開始算起,區塊鏈與數字貨幣的第一個十年馬上就要到來,在這個過程中,共識機制扮演的角色,幾乎可以說是區塊鏈的靈魂。而從上面粗略的整理來看,從事著區塊鏈行業的人具有著無窮的創造力。共識機制已經出現了多次迭代,而其未來會走到哪一步,現在根本沒有定論。

文章來源:BB財經,轉載請註明出處!

原文連結:http://www.bbcaijing.cn/special/24038.html

關注區塊鏈資訊,區塊鏈技術,數字貨幣行情

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;