DSC共識算法通過如下幾個步驟來實現區塊的生產:
首先:從全網節點進行代表的投票選舉,選出兩種代表,一是持有較多PNT代幣的議員,一個是持有較少PNT代幣的觀察員。
其次:在兩種代表中通過散列抽簽算法,隨機挑選部分議員和觀察員組成若干的共識組,每個共識組的議員或觀察員占比不得少于1/3。
共識組進行BFT共識。在議員中選舉出議長。議長提議生成區塊,其他議員和觀察員進行區塊驗證,在2/3以上節點驗證通過后,生成該共識組所對應的候選區塊。
共識組數量的多少沒有固定,根據網絡情況進行動態調節,以保證正常出塊。
最后,候選區塊并不會自動成為正式區塊,還需要通過散列抽簽函數從所有共識組產生的候選區塊中選擇正式區塊。
如果出現區塊共識在一定時間內無法達成的情況,會啟動RESET機制。所有議員進行一輪BFT共識,產生一個RESET區塊,重新組成共識組,恢復網絡正常運行。
這樣的選舉設計也有議會機制的影子。比如美國建國之初,一開始試圖設置單一院制,但發現眾議院是基于人數,人口少的州很少有機會發出自己的聲音,于是產生了兩院制的議會。
參議院不管各州大小,都是兩票,一共100席。眾議院則根據州人口多少獲得席位。設計的目的是為了兼顧各方利益。
DSC通過議長、議員、觀察員、共識組的設計,有一部分制衡和保證公平的考慮。因為觀察員有機會進入共識組,且不少于1/3,所以即使用戶是持有較少PNT的代表,也有機會獲得獎勵。
這兼顧了公平,而在PoS共識機制中,一個持有很少代幣的用戶,能得到獎勵的概率非常低。
Penta的議員是PNT代幣持有節點主動發起申請,其他節點進行投票選擇。要想當選議員,首先要質押一定數量的PNT代幣,同時必須獲得超過一定數量的票數。
一旦當選議員,所有節點獲得記賬的機會均等。不是PNT數量越多,機會越大。議長是通過BFT共識過程產生,主要負責區塊生成。
觀察員是監督的角色,它跟議員不同,所需要質押的PNT數量較少,獲得的選票也較少。但觀察員分布更廣,數量更多。
它代表了更多普通PNT代幣持有人的利益。更類似于眾議院的角色。觀察員無法當選為議員或議長,沒有生成區塊的權利。
Penta網絡的議員人數是動態增長的,這個跟美國參議院固定席位不同。
根據參與節點和PNT持有排名情況,Penta網絡確定最初的議員數量和最低PNT代幣的質押數量。
同時,議員的數量和也會根據運行情況進行動態調整。觀察員的數量則不設置上限。
記賬過程也是靈活參與。首先存入作為保證金的PNT代幣,然后申請記賬,經過投票、鎖定代幣之后,獲得參與記賬的機會。如要退出記賬,申請解鎖質押的代幣,到期后獲得解鎖代幣,完成退出。
通過散列抽簽算法,Penta網絡可以從議員和觀察員中隨機選擇組成若干個共識組。假如每個共識組記賬人數n,n是動態調整的,其中,議員數量是(n1),那么,n/3<n1<2n/3,觀察員的數量是n2=n-n1。
這樣保持了共識組里面靈活的組員比例,議員和觀察員都是動態調整,同時都保持在一定的數量范圍之內。
關于惡意節點的懲罰:由于賬戶上質押了保證金,一旦發現任何故意破壞系統的行為,將會對節點進行懲罰。
比如議長提出兩個及以上區塊BFT共識提案,其他節點可以舉證,一旦確認,議長會收到遠高于收益的懲罰。這會讓作惡的成本處于不對稱的狀態。
Penta網絡共識還能避免分叉。它有協議升級的機制。協議升級需要所有議員進行BFT投票,(2n+1)/3以上議員贊成,即可在指定區塊高度自動切換到新協議,保證協議升級不發生分叉。
協議升級主要是一些參數調整,比如共識組節點數量、交易手續費、最低保證金、議員和觀察員人數等。
對于節點來說,記賬可以獲得收益,交易也有手續費收益。其中50%的PNT用于共識記賬激勵。
在議長提議的區塊被議員和觀察員確認之后,候選區塊變成正式區塊,在這個過程中,參與貢獻的記賬節點,也就是產生備選區塊的共識組成員都會得到相應的PNT獎勵。
Penta的共識機制吸取了PoS、DPoS的優點,也有自己的獨創之處,不用擔心分叉,不用擔心
能源浪費,提高了效率,同時兼顧代幣較少持有人的利益,鼓勵更多人參與進來,減少寡頭利益風險,兼顧安全、效率、公平。
這種共識機制的設計值得探索,也值得保持長期關注。
結語
共識機制是
區塊鏈網絡運轉的核心,區塊鏈上不同節點的副本要保持一致,都需要通過共識算法來達成。
但是為了保證安全和去中心化,目前
區塊鏈技術很難實現性能、安全和去中心化同時兼得。
不同的算法都有各自優勢和不足。用PoW作為公鏈共識算法,很難實現擴展性,很難在它的基礎上構建DApp的生態基礎,很難向主流人群擴展。
用PoS或者DPoS共識算法,也有可能產生一些小概率事件,比如私鑰被盜取、超級節點合謀導致中心化趨勢等。在兼顧性能同時,可能在去中心化和安全上出現了一些不足。
在共識算法上的實踐肯定還不會停止下來,而DSC的共識算法試圖平衡安全、去中心化和效率,以及公平等方面,希望在這個基礎上設計出一個可以安全、穩定的價值傳遞網絡。
Penta的DSC共識協議跟DPoS不同的是,多了一個散列抽簽的算法,不僅僅照顧了代幣持有人的利益,還兼顧了更多公平和安全。
此外它還有插件化的共識組件,有靈活多種共識算法,可以支持到側鏈或獨立鏈。
在Penta平臺上的記賬共識與DApp上側鏈或獨立鏈的共識分離,平臺層和業務層的解耦,不同的DApp采用不同的共識機制來達成自身的目的。
比如說,有的DApp對交易的性能要求不高,但對交易安全要求更高,它也許會選擇PoW算法,有的DApp對于交易性能要求很高,可能會采用DPoS的共識算法來達成目的。
未來的區塊鏈發展來看,由于要達成共識,肯定會犧牲效率。但要走向大規模人群的采用,沒有性能又是不行的。
這里的悖論需要解決,要么,采用更加均衡的架構和共識機制,做一個平衡的取舍。要么,采用非區塊鏈的數據結構或者中心化的方式來解決問題。
如果在區塊鏈的前提下,要達成一個可以落地的方案。采取類似于DSC這樣的共識算法,可以兼顧安全、效率以及公平。
同時,通過一個比較靈活的設計,采用側鏈和獨立鏈的模式,允許這些鏈采用組件化的其他共識算法,實現不同場景下的不同最優選擇。
可以預見,未來除了PoW、PoS、DPoS、PBFT、PoA、PoI......之外,還會有更多層出不窮的共識算法,這對于區塊鏈發展的探索都是有益的。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。