從零開始學習區塊鏈——DPOS共識機制

在區塊鏈中,大家會經常聽到共識機制這個詞語,有人把共識機制稱作區塊鏈的靈魂。當前應用最廣泛的就是POW和POS,它們在去中心化的進程中發揮了很大的作用,但是,隨著區塊鏈3.0的到來,他們存在的問題日益暴露。今天,從零開始學習區塊鏈將介紹應用在EOS上的DPOS共識機制。

從零開始學習區塊鏈——DPOS共識機制

POW的問世

早在2010年,一名叫Danile Lrimer 的工程師就已經認識到比特幣POW共識機制中存在的問題,挖礦需要消耗大量的能量、速度慢、比特幣網絡可能被大型礦池控制出現中心化。於是,他想建立一種克服這些劣勢的新共識機制。Danile Lrimer,就是我們熟知的BM(Byte Master)。2013年,BM發表了一篇論文,闡釋了DPOS共識算法如何解決工作量證明網絡中的限制。之後,DPOS被先後應用在比特股系統Bitshares和Steem中,表現不俗。當前冉冉升起的公鏈明星EOS也選用了DPOS作為共識機制。

DPOS的分工

在DPOS共識機制中,存在兩種角色,公證人和見證者。公證人是指權益持有者,可以投票選舉區塊生產者,見證者指被選舉出來進行區塊生產、驗證交易的節點。

在DPOS中,不是每個節點都具有生產區塊的權利,但是每個節點都具有投票權,這一點和人民代表大會制度很像,不是每個公民都可以做人大代表,但是每個公民都具有選舉自己信任的人大代表的權利。DPOS中投票是根據投票者權益進行加權的,在投票中你使用的權益越多,你的選舉的影響力越大。

DPOS的工作原理

DPOS中生產區塊主要分為兩個步驟:首先選擇一群區塊生產者,然後安排區塊生產。區塊生產者選舉的過程中,想要成為見證者的節點需要到社區去拉票,獲得用戶的支持,用戶根據自己手中的權益去投票,同時見證者創建區塊時投票者也會獲得收益,具體收益有他們選出的代表決定。見證者的數量不是固定的,是有權益持有者共同決定的。在投票過程中,大家用自己手中的權益支持信任的候選人,然後根據整體投票情況確定一定數量的見證者,第一步就結束了。

選舉出來的見證者的權利是完全相等的,他們共同生成新區塊。我們以EOS為例來學習。在EOS中,每生產126個區塊為一個週期:每次選舉出21個出塊的超級節點,每個節點生產6個區塊。每0.5秒產生一個區塊,一次只分配一個節點進行區塊生產。如果有生產者錯過出塊,就會跳過該塊,該生產者也會被刪除。每完成一個週期的生產,就會重新投票選舉見證者。

DPOS的優勢

提升確認速度:比如EOS每生成一個區塊只需要0.5秒,一筆交易大概經過6-10次確認,時間不超過一分鐘。對比來看,採用POW算法的比特幣系統中,每生成一個區塊需要10分鐘,每筆交易的確認則需要一小時,同樣,POS共識機制的交易確認時間也很長。所以DPOS的速度優勢非常明顯。

去中心化:雖然比特幣創建的初衷是去中心化,人人擁有記賬權,但是隨著人為控制的不斷加深,比特幣的算力基本被幾大礦池壟斷,美好的初衷已經不復存在了。DPOS機制中,通過選舉區塊生產在,保證了代幣持有者對網絡的控制,因此,DPOS實際更加去中心化。

從零開始學習區塊鏈——DPOS共識機制

區塊鏈中,存在一個去中心化、速度和安全的三角形,這三個目標是相互牽制的。我們要清楚,去中心化是方法而不是目的,DPOS捨棄了部分去中心化,大大提高了速度和安全。同時,DPOS看似去中心化程度不如POW,POW中人人都可以創建區塊,但實際上通過選舉保證了代幣持有者對網絡的控制。


分享到:


相關文章: