股權委託證明機制(DPoS)解釋

買賣虛擬貨幣
股權委託證明機制(Delegated Proof of Stake, DPOS)是目前最快、最高效、最分散式且最靈活的共識模型。DPOS最大程度的用股東投票權透過一種公平且民主的方式解決共識問題。所有的網路引數,從費率計劃到區塊間隔及交易大小,可由選舉產生的代表來調整。明確選定區塊生產者使得平均只需1秒就能確認交易。也許最重要的是,共識協議的目的是保護所有參與者不受不必要的監管幹擾。BitShares是一個最早的和最重要的用於跟蹤數字資產的賬本形式的全球分散式資料庫。所有對總帳的變更都必須以適當的順序驗證並寫入資料庫來保持一致性並持續提升共識。變更寫入順序達成共識的過程就是股權委託證明機制(DPOS)。概覽任何一致性共識機制必須解決的問題都包括但不限於:1. 應該由誰產生下一個打包了資料庫變更的區塊?2. 應該在什麼時間產生下一個區塊?
3. 什麼交易應被打包進區塊?4. 對協議的變更如何生效?5. 應該如何來解決競爭的交易歷史?目標是要找到這些問題的答案,從而確保達成共識的過程足夠健壯以抵禦試圖控制網路的攻擊。在實踐中,取得控制意味著能夠單方面篡改交易。這個過程也應該足夠健壯來抵禦試圖利用不同電腦上短時間內出現資料庫不一致而獲利的攻擊。選定見證人的區塊生成 Block Production by Elected Witnesses選擇見證人這個詞是因為它是一個不受管制的法律上中立的用語。傳統合同一般有見證人簽字的地方。對於極其重要的合同,有時會用公證人。無論是見證人還是公證人都不是合同的當事人,但他們在證明特定人士在特定時間簽署了合同中扮演了重要角色。在BitShares,見證人在證明交易簽名和時間上,透過將其打包進區塊扮演了類似的角色。
在DPOS中,股權持有者可以選擇任意數量的見證人來生成區塊。每個區塊是一組變更資料庫狀態的交易的集合。每個帳戶允許每股一票選舉見證人,這個過程稱為批准投票。獲票前N名的見證人會被選用。見證人的個數(即N)的確定需要至少50%的投票人認為足夠去中心化。在股權持有者設定他們心儀的見證人個數時,也必須投票給至少這個數目的見證人。股權持有者不能超限投票。見證人每生成一個區塊都會因提供服務而獲得報酬。他們的費率是由股權持有者透過他們選出的委託人設定(稍後將討論)。如果一個見證人未能生成一個區塊,那麼他將得不到報酬,並在將來有可能落選。活躍見證人的名單每個維護間隔(1天)在統計選票是更新一次。然後,這些見證人會隨機排序,根據這個固定順序每2秒有一個見證人獲得生成一個區塊的機會。當所有見證人都獲得了機會後,他們被再次隨機排序。如果某個見證人在他的時間視窗中沒有生成區塊,這個時間視窗將被跳過,下一個見證人來生成下一個區塊。任何人都可以透過觀察見證人參與率來監控網路健康狀況。從歷史上看,BitShares一直保持著99%的見證人參與率。無論何時出現見證人參與率低於一定水平時,網路的使用者可以延長交易確認時間,並提高對網路連通性的警惕。這個特性讓BitShares有了獨特的優勢,就是在問題出現1分鐘內便能提醒使用者潛在的風險。選定委託人進行引數調整 Parameter Changes by Elected Delegates選出委託人的方法和見證人類似。委託人能夠成為一個有著釋出網路引數修改許可權的特殊賬號的共同簽名者。這個賬號被稱為創世賬號。這些引數包括交易費、區塊大小、見證人報酬以及區塊的時間間隔等所有內容。當大多數委託人都認可了一個的變更提議後,股權持有者有2周的稽覈週期,在此期間,他們可以投票罷免委託人從而廢止變更提議。
選擇這種設計是為了保證委託人從技術角度並沒有任何直接的權力,所有對網路引數的變更最終都是由股權持有者批准。這樣做是為了保護委託人脫離可能施加在密碼學貨幣經營者或管理員上的管制。在DPOS下,我們可以真正地說,管理權掌握在使用者手中,而不是委託人或見證人。不同於見證人,委託人沒有報酬。當然,這些引數並不期望被頻繁更改。技術上創世賬號可以執行任何其他帳戶可以執行的操作,這意味著可以向創世賬號傳送資金或指定創世賬號作為仲裁代理。創世帳戶也可同樣用於發行新資產。還有無數個應用中,選定的委託人可以幫助股權持有者完成需要高信任度和責任背書的任務。規則變更(又名硬分叉) Changing the Rules (aka Hard Forks)有時,有必要對網路進行升級來新增新的功能。在DPOS下,所有更改必須由活躍的股權持有者的准許而觸發。雖然在技術上見證人可以串謀單方面修改軟體,但這麼做不符合他們的利益。見證人是基於他們對區塊鏈的中立承諾而被選中。保持中立讓見證人免受他們是網路的管理者、經理、老闆、運營商的指責。見證人僅僅是股權持有者的僱員。開發人員會去實現他們認為合適的變更,只要這些變更得到股權持有者的批准。這一策略儘可能相同的保護開發者和股權持有者,並確保沒有人能單方面控制網路的發展方向。
改變規則的閾值和更換51%的選定見證人是相同的。參與選舉見證人的股權持有者越多,改變規則就越難。從根本上,改變規則取決於網路上的所有人升級他們的軟體,且沒有什麼區塊鏈層面的協議強行規定了變更規則是如何執行的。這意味著,硬分叉式的“漏洞修復”可以在不需要股權持有者投票的情況下推出,只要程式碼的行為符合普遍預期。在實踐中,只有嚴重影響安全的硬分叉應該以這種方式實現。即使是最輕微的修改,開發人員和見證人也應等待股權持有者批准。雙重支付型攻擊 Double Spend Attack雙重支付可以隨時發生在區塊鏈重選導致之前包含的交易被排除時。這意味著見證人因網際網路基礎架構的干擾引發了通訊中斷。有了DPOS,因通訊故障帶來可能的雙重支付型攻擊的概率是很低的。

網路有能力監測其自身的健康狀態,因此可以立即檢測到任何如見證人沒有按時生成區塊這樣的通訊丟失。如果發生這種情況,使用者有必要等超過半數的見證人確認了他們的交易,這可能需要一到兩分鐘。


作為股權證明的交易 Transactions as Proof of Stake

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

區塊鏈重組 Blockchain Reorganizations

由於所有的證人都是經過選舉產生的,高度負責,並且有專門的時間來製作積木,因此很少有兩種相互競爭的鏈條存在的情況。網路延遲有時會阻止一個證人及時接收到之前的塊。如果發生這種情況,下一個證人將透過建立他們最先收到的任何一個塊來解決問題。有99%的證人參與,一筆交易有99%的機會在一個證人之後得到確認。

雖然系統對自然的鏈重組事件具有強大的功能,但是仍然存在一些潛在的軟體bug、網路中斷、不稱職的或惡意的目擊者來建立超過一兩個塊的多個競爭歷史。軟體總是選擇證人參與率最高的區塊鏈。一個單獨操作的證人每輪只能產生一個區塊,並且參與率總是低於大多數人。任何證人(或少數證人群體)都無法產生參與率更高的區塊鏈。參與率的計算方法是將預期生成的塊數與實際生成的塊數進行比較。

最大分散化 Maximally Decentralized

在DPOS下,每個利益相關者的影響力與他們的利益成正比,沒有任何利益相關者被排除在行使這種影響力之外。市場上的所有其他共識系統都將絕大多數利益相關者排除在外。替代品排除利益相關者的方式有很多種。一些替代方案使用僅限邀請的系統。另一些人排除了參與,因為他們的參與成本高於收入。還有一些系統在技術上允許每個人都參與其中,但是它們可以被一些大型玩家安全地忽略,而這些大型玩家生成了絕大多數塊。只有DPOS才能確保塊生產在大多數人之間均勻分配,並且每個人都有經濟上可行的方法來影響這些人。

免責聲明:

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

推荐阅读

;