如何看待EOS使用的 DPOS 機制

2021-09-20 11:06:01 字數 2782 閱讀 4212

dpos 相對於 pow 有非常高的效率, 那麼dpos是如何做到這一點的呢? 本文就來和大家一起**什麼是 dpos。

授權證明(dpos)是最快,最有效,最分散,最靈活的共識模式。dpos利用利益相關方同意投票的權力,以公平和民主的方式解決共識問題。

所有的網路引數,從收費時間表到塊間隔和交易規模,都可以通過選定的代表進行調整。塊生產者的確定性選擇允許平均僅1秒確認交易。也許最重要的是,共識協議旨在保護所有參與者免受不必要的監管干擾。

任何共識過程必須回答的問題包括但不限於:

目標是找到這些問題的答案,以確保對希望獲得對網路的控制的攻擊者的共識過程是強大的。實際上,獲得控制意味著獲得單方面審查交易的能力。對於希望利用不同計算機上的資料庫狀態暫時不一致的攻擊者,這個過程也應該是健壯的。

「證人」這個詞被選中是因為這是乙個沒有規定的合法中立的詞。傳統的合同往往有證人簽名的地方。對於非常重要的合同, 有時會使用公證人。證人和公證人都不是合同的當事人,但是他們在證明合同是在指定的時間由特定的人簽字的非常重要的角色。在位元股中,證人通過將其包含在塊中來起到類似的驗證簽名和時間戳事務的作用。

在dpos下,利益相關者可以選擇任意數量的證人來生成塊。塊是一組更新資料庫狀態的事務。每個賬戶每個證人允許乙個投票,這個過程被稱為批准投票。通過總審批的前n名證人被選中。證人數量(n)的定義是至少有50%的投票利益相關方認為有足夠的權力下放。當利益相關者表達他們想要的證人數量時,他們也必須投票給至少許多證人。利益相關者不能投票支援比實際投票的證人更多的權力下放。

每當目擊者產生乙個塊時,他們都會為他們的服務付費。他們的薪酬由利益相關方通過他們選出的代表來決定(稍後再討論)。如果證人沒有出示任何資訊,那麼他們就沒有報酬,可能會在未來被投票出去。

活動證人的名單在每次維護間隔(1天)內更新一次。然後將目擊者洗牌,並且每個目擊者輪流以每2秒乙個固定的時間表產生乙個塊。所有目擊者轉了一圈之後,他們又被洗牌了。如果證人沒有在他們的時間段內產生乙個塊,那麼該時間段被跳過,下乙個證人產生下乙個塊。

任何人都可以通過觀察證人的參與率來監測網路的健康狀況。歷史上,位元股保持99%的見證參與。任何時候目擊者的參與程度都低於一定水平,網路使用者可以允許更多的時間進行交易確認,並對其網路連線性保持警覺。此屬性為bitshares提供了獨特的優勢,即在故障發生後不到1分鐘,就可以提醒使用者潛在的問題。

代表以與證人類似的方式選出。代表成為特殊帳戶的共同簽名者,該特殊帳戶有權提出對網路引數的更改。這個帳戶被稱為創始帳戶。這些引數包括交易費用,塊大小,見證薪水和塊間隔等。在大多數代表批准了擬議的變更之後,利益相關者被授予2周的審查期,在此期間他們可以對代表投票並使提議的變更無效。

這種設計的選擇是為了確保代表在技術上沒有直接的權力,網路引數的所有變化最終都得到了利益相關者的認可。這樣做是為了保護代表不受可能適用於加密貨幣的經理或管理員的規定的影響。在dpos下,我們可以說,行政權力掌握在使用者手中,而不是代表或證人。

與證人不同的是,代表們不是有償職位。但是,這些引數預計不會經常變化。

的成因帳戶在技術上可以執行任何其他帳戶可以執行任何動作,這意味著它可以傳送資金的成因帳戶或指定成因帳戶作為託管**。該創世記也可用於發放新的資產。選舉代表可以幫助利益相關者執行需要高度信任和責任感的任務,其數量不勝列舉。

有時需要公升級網路來新增新的功能。在dpos下,所有的改變都必須由積極的利益相關者的批准來觸發。雖然證人在技術上可能單方面串通和改變他們的軟體,但這樣做並不符合他們的利益。證人的選擇是基於他們對區塊鏈政策保持中立的承諾。保持中立保護證人免受指控他們是網路的管理員/經理/業主/經營者。證人只是利益相關者的雇員。

開發人員可以實施他們認為合適的任何更改,只要這些更改取決於利益相關方的批准。這一政策對開發者的保護就像保護利益相關者一樣,並確保沒有任何人單方面控制網路的方向。

改變規則的門檻與替換51%的當選證人相同。利益相關者參與選舉證人越多,就越難改變規則。

最終,更改規則取決於網路上的每個人公升級他們的軟體,並且沒有區塊鏈協議可以執行規則如何改變。這意味著只要堅持**普遍預期的行為,就可以在不需要利益相關者投票的情況下推出硬分支「錯誤修復」。

在實踐中,只有安全關鍵的硬體應該以這種方式來實現。開發商和證人應該等待利益相關者批准即使是最微小的變化。

在區塊鏈重組排除之前包括的交易的情況下,雙重花費可能發生。這意味著目擊者因網際網路基礎設施的中斷而導致通訊故障。使用dpos,通訊故障導致雙重支出攻擊的可能性非常低。

網路上的每個事務可以可選地包括最近塊的雜湊。如果這樣做,交易的簽署人可以確信他們的交易可能不適用於任何不包含該塊的區塊鏈。這個過程的乙個***是,隨著時間的推移,所有利益相關者最終直接證明了交易歷史的長期完整性。

由於所有的證人都是選舉出來的,負有很大的責任,並且有專門的時間段來生產區塊,所以很少有可能存在兩個相互競爭的連鎖的情況。網路延遲不時會阻止一名見證人及時收到前面的資訊。如果發生這種情況,下乙個證人將通過建立在他們首先接受的任何乙個塊上來解決問題。有99%的證人參與,交易有乙個99%的機會證實乙個證人後。

儘管該系統對於自然鏈重組事件是有力的,但是仍有一些潛在的軟體錯誤,網路中斷,或無能或惡意的證人產生比乙個或兩個塊長的多個競爭歷史。軟體始終選擇證人參與率最高的區塊鏈。證人自己經營,每輪只能生產乙個塊,參與率一般比較低。沒有任何證人(或少數證人)能夠做出更高參與率的區塊鏈。參與率通過比較產生的塊的預期數量與實際產生的塊的數量來計算。

在dpos下,每個利益相關者的影響力與其利益成正比,沒有利益相關者被排除在影響之外。市場上的其他每乙個共識系統都不包括絕大多數利益相關者的參與。有許多不同的方法可以替代利益相關者。一些替代方案使用僅限邀請的系統。其他人通過讓參與費用高於他們的收入來排除參與。其他的系統在技術上也允許每個人都參與,但是他們可以被一些產生絕大多數塊的大型玩家安全地忽略。只有dpos確保塊生產平均分配給大多數人,每個人都有乙個經濟上可行的方式來影響這些人是誰。

EOS 共識演算法 DPOS3 0 的改進

bp block producer,塊產生者。本文描述了乙個dpos的改進,它更強地保證了遵守dpos3.0協議下的結點不會共識失敗。我們定義共識失敗為 兩個結點包括了兩個不同的不可逆的鏈.背景 pow 如bitcoin,定義了乙個 最長鏈 規則的共識。使用這個規則,任何block都不會被認為是不可...

使用EOS的價值

在這裡看到很多關於eos的評價.可能這裡面很多的都是技術人員出生,所以觀點都會從技術的角度出發.先不說技術怎麼樣.他至少解決了一些問題 1.人員流動大,後期的維護難.2.足夠的簡單,加速了開發.3.保姆式的服務,解決生產中的難題.我們需要支援國產,國人才能跟老外競爭.不要總說老外的好,什麼都有乙個過...

如何看待程式語言的排名

最近新的程式語言的使用排名又出爐了,於是又帶來一篇爭論,各自述說著哪種語言好還是不好的理由,為此爭得面紅耳赤。在這裡我不是想做個冷靜的看客,但是真的不想加入這場無聊的紛爭,可是看著無數的人為此而吵鬧,我還是想發表一下我的意見。在我看來,那張程式語言的排名表只是在告訴我們目前哪種語言在程式設計師中的使...