之前,我們介紹了星系共識的整體架構和流程《一文讀懂萬維鏈 PoS 星系共識架構特點和運轉流程》以及星系共識的隨機數生成算法《決定公鏈是否可信的隨機數,Wanchain 究竟是怎樣生成的?》以及出塊者選擇算法《決定公平的出塊人選擇機制,Wanchain 是如何設計的?》。這兩個算法能夠保證在確定了共識參與者之後,共識過程能夠安全穩定的進行。那麼,如何才能夠讓所有的權益持有者參與到共識過程中呢?本文將詳細介紹星系共識的委託機制。

原文標題:《Wanchain 星系共識探索:委託機制》
文章來源:公衆號 WanFans

1 星系共識委託機制設計背景

當前區塊鏈業界已經有了衆多 PoS 共識機制,它們或由嚴謹細緻的學院派提出,或由擁有豐富從業經驗的產業界提出,但是都普遍缺乏實用性。體現在如下幾點:

1.1 實際參與門檻較高

一方面,PoS 共識協議雖不同於 PoW 對算力的高依賴性,但是也要求參與者節點有較好的計算能力和網絡帶寬,能夠及時的完成協議內容,因此 PoS 參與者需要投入一定的硬件資源;另一方面,PoS 的收益分配原則是「權益越大,收益越大」。二者相結合的結果就是參與 PoS 有較高門檻,即只有擁有較高權益的節點纔會有足夠的動力去參與 PoS,擁有較小權益的節點則由於參與 PoS 的成本高於預期收益而被「拒之門外」。這個「門檻」雖不在 PoS 理論設計中,但是卻是現實存在的。

1.2 中心化風險

由於參與門檻較高,只有較大權益擁有者可以參與到 PoS 共識過程中,從而獲取共識收益。而獲取的共識收益會加大共識參與者和非參與者之間的權益差距,陷入「富者愈富,窮者愈窮」的惡性循環,最終可能導致共識中心化的風險。

1.3 違背基礎安全假設的風險

幾乎所有 PoS 共識機制的安全基礎爲誠實大多數假設(honest majority assumption),即誠實節點佔參與共識協議權益的大多數。這個假設對於整個區塊鏈網絡是成立的,但是如果共識參與門檻很高,只能吸納一小部分權益參與到共識過程中,那麼具體到 PoS 共識協議中這一假設就未必成立了。這本質上是一個取樣問題,當樣本量較小時,並不一定具有整體的統計特徵。

因此,如何設計一種機制能夠降低 PoS 參與門檻,儘可能吸納更多的權益參與到共識過程中,對整個共識的實用性和安全性都具有重要意義

2 星系共識委託機制的意義

星系共識在設計之初就充分的考慮了協議的實用性。這個實用性不僅僅體現在降低共識過程中需要的計算和存儲資源,更重要的是能夠保證共識的參與者能夠順暢的參與到整個過程中。星系共識具有完整的委託機制,擁有較大權益的節點可以直接參與到共識過程中,而擁有較小權益的節點可以通過委託機制參與到共識過程中。理論上任何一個 WAN 的持有者都有能夠加入到共識過程中,這是 PoS 協議的精神所在,也是星系共識實用性的體現。在這一方案下,更多的 WAN 會加入到共識中,從而使整個網絡更加安全健壯。
因此,完整的委託機制降低了 PoS 共識參與的門檻,提高了星系共識的實用性,與其他 PoS 共識協議相比具有明顯優勢。

3 星系共識委託機制的理論基礎 —— 委託簽名(proxy signature)

委託簽名是密碼學中的一種特殊簽名算法,它能夠使一個個體,稱爲委託者或原始簽名者(original signer),將自己對消息簽名的權利委託給另外一個個體,即被委託者(proxy signer)。被委託者能夠計算出一個委託簽名,任何擁有原始簽名者公鑰的個體均可以驗證簽名的合法性。嚴格的說,委託簽名算法爲多個算法的集合,PS=(G,K,S,V,(D,P),PS,PV),其中 (G,K,S,V) 是一個標準數字簽名算法(比如 ECDSA),(D,P) 是委託和接受委託的算法,PS 是委託簽名生成算法,PV 是委託簽名驗證算法。

一文讀懂 Wanchain 委託機制:降低參與門檻,抵抗中心化風險

4 星系共識委託機制的流程

星系共識的委託機制是基於三重 ECDSA 委託簽名算法(Triple ECDSA Proxy Signature)實現,這一算法由 Wanchain 理論團隊設計提出,兼具通用性、安全性和高效性。同時結合智能合約,星系共識實現了完整的委託機制,使得任何 WAN 的持有者均可以加入星系共識中,維護網絡安全,並獲取共識收益。假設 Alice 爲一名普通的 WAN 持有者,公私鑰對爲 (pki,ski );Bob 爲一名星系共識的代理節點,公私鑰對爲 (pkj,skj );Proxy_SC 爲一個特殊智能合約,用於驗證並存儲委託過程中的相關數據。現在 Alice 要委託 Bob 去代替自己參與星系共識,具體流程如下:

Step1:Alice 在本地將自己的私鑰 ski、Bob 的公鑰 pkj 輸入三重 ECDSA 算法中,生成委託證書 cert=(pki,pkj,ω,(R,s));
Step2:Alice 構造一筆交易,將委託證書發送到 Proxy_SC,同時委託資金鎖定在 Proxy_SC 中;
Step3:Proxy_SC 驗證 Alice 所發委託證書的合法性,並生成代理公鑰 pkp 和委託證書一同存儲在合約中;
Step4:Bob 對 Proxy_SC 中存儲的證書進行解析,利用自己的私鑰 skj 計算得到代理私鑰 skp;
Step5:代理公鑰 pkp 作爲獨立身份參與星系共識,Bob 通過代理私鑰 skp 完成共識過程,獲取共識收益;
Step6:共識收益按照委託約定,在 Alice 和 Bob 之間進行分配;
Step7:委託期結束後,Proxy_SC 將委託資金返還到 Alice 賬戶中。

一文讀懂 Wanchain 委託機制:降低參與門檻,抵抗中心化風險

5 星系共識委託機制的優勢

5.1 通用性

星系共識的委託方案在標準簽名、權利委託和委託簽名中均使用 ECDSA 簽名算法,這一算法也在區塊鏈領域廣泛使用。它與已有的區塊鏈技術架構完全兼容。無論是直接註冊加入到共識機制中,還是通過委託機制加入,對參與者出塊的驗證邏輯完全一致。

5.2 非交互

委託的過程是非交互的,因此委託者和代理節點之間不必建立安全的通信信道,完全通過鏈上交易完成委託,在共識過程中更加高效。

5.3 高安全性

已有的一些委託機制,往往需要委託者將資金轉入代理節點賬戶,由代理節點直接參與共識,並完成收益分配。這種方式是中心化的,對代理節點誠信度要求較高,容易發生「攜款跑路」的現象,對委託者資金安全產生巨大安全。星系共識的委託機制基於密碼學算法實現,委託者的本金被鎖定在智能合約內,代理節點只獲得委託者的參與共識的權利,並不對用戶資金具有任何控制權,因此能夠充分保障用戶的資金安全。

5.4 公開透明

星系共識委託機制中,委託的過程以及代理節點參與共識的數據都在鏈上進行存證,所有數據公開透明。一方面,保證代理節點能夠公平分配共識收益,無法作惡;另一方面,也方便委託者能夠對代理節點的活性進行甄別,從而選擇合適的代理節點。