您现在的位置: 比特财富网 >> 区块链 >  >> 區塊鏈百科
EOS的共識算法(BFT-DPOS)具有哪些特點?


EOS.IO軟件采用了目前為止唯一能夠符合上述性能要求的去中心化共識算法 — 委托權益證明Delegated Proof of Stake (DPOS).。www.emoneybtc.com根據這一算法,在使用EOS.IO軟件構建的區塊鏈上持有通證的人,可以通過一個持續進行的投票系統來選擇區塊生產者。任何人都可以選擇參加區塊生產,只要能夠說服通證持有人為其投票,就會有機會參與區塊生產。
EOS.IO軟件可以讓區塊每0.5秒生成一個。任何時刻,只有一個生產者被授權產生區塊。如果在計劃的某個時間內沒有成功出塊,則跳過該塊。如果有一個或更多的區塊被跳過,則在區塊鏈上會有0.5s或者更久的空白。
使用EOS.IO軟件,區塊的產生是以126個區塊(每個出塊者六個區塊,乘以21個出塊者)為一個周期。在每個出塊周期開始時,會根據通證持有人所投票數選出21個區塊生產者。被選中的區塊生產者的順序會根據15個及以上的區塊生產者的同意,制定出塊順序的安排。
如果出塊者錯過了一個塊,並且在最近24小時內沒有產生任何塊,則這個出塊者將被剔除在考慮范圍之外,直到他們通知區塊鏈可以重新開始產生區塊。這確保了網絡的順利運行,把被證明為不可靠的區塊生產者排除在出塊排程之外,通過這一方式使得錯過區塊的數量最小化。
在正常情況下,DPOS塊鏈不會經歷任何分叉,因為區塊生產者並非競爭關系,他們合作產生區塊。如果有區塊分叉,共識將自動切換到最長鏈。這一方式之所以有效,是因為區塊鏈分叉上增加區塊的速度,與具有相同共識的區塊生產者的比例直接相關。換句話說,具有更多生產者的區塊鏈長度將比具有較少生產者的區塊鏈增長速度更快,因為,有更多生產者的區塊鏈分叉上,丟塊更少。
此外,沒有塊生產者可以同時在兩個區塊鏈分叉上生產塊。如果一個塊生產者發現這麼做了,就可能被投票出局。這類雙重生產的密碼學證據,也可能會被用來自動移除作惡者。
在傳統的DPOS算法上增加了拜占庭容錯算法(Byzantin Fault Tolerance) ,所有的出塊者都要對所有區塊簽名,以此來確保在同一時間戳或者同一區塊高度上,沒有區塊生產者能夠同時在兩個區塊上簽名。一個區塊有了15個區塊生產者的簽名,該區塊就被認為是不可逆的。任一拜占庭區塊生產者如果想在同一時間戳或者同一區塊高度的兩個區塊上簽名,就不得不留下密碼學證據。在這一模式下,一秒之內就可以達成不可逆的共識。
  風險提示:比特財富網的各種信息資料僅供參考,不構成任何投資建議,不對任何交易提供任何擔保,亦不構成任何邀約,不作為任何法律文件,投資人據此進行投資交易而產生的後果請自行承擔,本網站不承擔任何責任,理財有風險,投資需謹慎。
比特財富網 版權所有 © www.emoneybtc.com