在 HashBang & LongHash 聯合主辦的「Staking」系列直播第 3 期上,本體資深架構專家胡凝爲我們帶來名爲「北斗節點的設計」主題的演講,從最近火熱的 Staking 經濟出發,說明本體北斗節點的設計邏輯。

原文標題:《原來每月 550 美元,就能運營一個本體節點!》
文章來源:公衆號 HashBang
主講人:胡凝,本體資深架構專家

同樣都是 Staking 經濟,本體的北斗節點有何特點?胡凝,本體資深架構專家

在 Staking 生態中,有一個很重要的角色 —— 節點,節點負責網絡的安全運行,並參與社區的治理,也同時連接項目方和普通用戶。目前節點的玩家有交易所、錢包、礦池、資本方、KOL 個人和創業機構等。

站在一個 PoS 的項目方的角度來看,如何去設計一個節點的機制?有什麼樣的設計目標?怎麼樣去更好的服務(或者管理)好節點?節點有什麼樣的參與門檻?節點的成本收入是怎麼樣的?這些問題都是想要申請成爲節點的「機構」所關心的。

普通的投資者也很關心節點是誰,選擇節點有什麼標準等。

本體 Ontology 的資深架構專家胡凝,通過 9 個問題來拆解本體的北斗節點,與大家一起討論和展望節點在 Staking 經濟中的重要地位和角色。

一、2019 年無疑是 Staking 經濟的爆發期。爆發的徵兆是,老牌交易所 Coinbase 開始入局;基金 Polychain 被戲稱爲「PoS 界的比特大陸」;大家也把關注點從解決公鏈擴容和性能的問題轉移到去發現更好的社區治理和經濟模型上,您怎麼看待這些轉變以及 PoS 公鏈在今年的發展呢?

胡凝:個人是這樣的觀點:區塊鏈的基礎設施服務,特別是公鏈基礎設施,完全可以參照雲服務的邏輯,是一種資源租用服務,不過公鏈是一種建立在「基於衆治關係打造的可信機制」之上的資源租用服務。(只是「雲」 的模式,不是「雲」的技術。)

換句話說,公鏈的資源租用服務相對於傳統雲的服務來說,僅僅多了一套「衆治」的方案,也就是一個「節點以記賬人(礦工)形式自主提供資源,節點網絡自動整合資源形成服務」的方案。因爲服務是「衆治」的,而公鏈通過經濟模型激勵節點作惡(如篡改賬本)需要額外承擔全網大比例的節點成本,使得對服務的作惡成本大大提高,這就形成區塊鏈「可信」的邏輯。這是前提。

從業務角度有三個層次的收益邏輯,也就是面向業務客戶的應用收益、爲業務應用提供基礎設施服務的收益,以及礦工本身作爲運營實體的收益分配邏輯。

前兩個層次好理解,對應亞馬遜和 AWS (淘寶和阿里雲)的實體運營,第三層次就是目前區塊鏈的設計:讓第二層次變成一套機制(治理模型)而爲第一層次提供「安全可信」的基礎設施服務。

那我們研究一下雲和業務的關係:先有業務還是先有云?答案是:先有業務。只有業務才能養活「雲」。AWS 雲服務是怎麼發展起來的?是因爲業務需要支持「Black Friday」峯值而作的冗餘基礎設施投入,閒暇時候提供資源租用服務用以抵扣成本而發展起來的。

因此,「基礎設施有多少資源,業務就能用足多少資源;業務需要多少資源,基礎設施就有多少資源能支持」是整個體系性價比最高,最理想的狀況。在公鏈發展過程中,業務和基礎設施的表現就像一個 U 型管,一邊壓力大了,另一邊就要隨之加壓,才能達成平衡。

公鏈擴容和性能的問題的提出是因爲之前基礎設施不能滿足業務需求。而現在公鏈的狀態,公鏈的性能是一個問題,但是公鏈業務短缺的問題是一個更大的問題。因此再次轉移了業界關注的側重點。

有什麼辦法可以兩全其美,既保證基礎設施體系的發展,又提供更多的業務以驗證基礎?Staking 經濟是最簡單的解決方案之一,既是基礎治理模型,又可以圍繞價值發展出一系列業務。 而所謂的爆發期,一方面代表公鏈「經濟治理」具有的巨大價值得到更加廣泛的認可並且產生了業務領域的分工,另一方面也暴露了鏈上業務的單一。這是也是整個業界努力的方向:抓住高價值資產類業務的本質,發展出多樣化的業務。

對於在還處在上升期的區塊鏈業務而言,公鏈的發展方向,一定是儘可能把 U 型管配平。PoS 也是如此。

PoS 的好處是,Stake 本身兼具 Utility 和 Governance 的功能,當業務繁榮,Utility 屬性會強一些,帶來更多的流動性;對應市場不穩定的時候,Governance 功能引起的「鎖倉」效應能規避一定的風險。

業務繁榮的時候,Utility 屬性帶來的流動性引起 Stake 價值的不穩定,不一定是收斂的,這是各大 PoS 公鏈需要注意的,這一點上,質押-收益相關但波動解耦的雙 Token 體系會好很多。

我們看到本體從去年的年中就開始在佈局 Staking 的事情,那從去年開始招募到現在,關於節點的運營整體的情況可以先給我們同步和介紹下嗎?

胡凝:先說一下本體的設計,本體是雙 Token 設計,ONT 爲 Staking,ONG 爲 Gas。節點質押爲 ONT,獲得 ONG 手續費分成。本體使用 VBFT 共識算法,配合本體治理模型,本體的核心節點網絡稱爲北斗共識集羣,技術上分候選網絡和共識網絡,共識網絡是候選網絡的子集,通過 VRF 選擇共識單塊出塊的節點子集組成共識網絡。先後經歷了四輪節點網絡擴展。

2018.6.30。主網啓動,0 手續費啓動,北斗共識集羣節點數 7,共識網絡出塊最大抽樣節點數 7 (共識網絡),質押金額 14,700,000 ONT。

首輪招募,2018.6.1-2018.7.16,北斗共識集羣節點數 33,共識網絡出塊最大抽樣節點數 7。於 2018.9.29 共識網絡開放節點 Staking,ONT 持有人可參與治理;

第二輪招募,2018.10.15-2018.11.8,北斗共識集羣節點數 47,共識網絡出塊最大抽樣節點數 7,後根據社區反饋調整至 8;

目前,節點招募持續開放。

截止今天,北斗共識集羣節點數 48,共識網絡出塊最大抽樣節點數 8,共質押金額(含 Staking) 85,142,769 ONT。可以對比 CMC 流通量進行計算,目前超過 10%。

看到本體之前發佈了北斗節點的激勵模型,想知道你們在設計權益節點的時候,是基於什麼樣的設計目標?

胡凝:

1)合規層面考慮,通過 ONT 持有者的交易觸發 ONG 的解綁計算。這是全網機制,在節點 ONT 質押和 Stake 的過程中仍然支持。

2) 節點網絡是本體生態設計的一環,節點網絡的設計是爲了提供穩定的基礎設施服務,節點網絡的組織方式爲治理模型服務。爲了保證節點運營,節點必須有穩定的盈利模式,交易 Gas 計費是節點收益的直接來源。Gas 計費和鏈上業務量有直接關係,因此業務量是非常重要的點。但是正如我之前提到的,目前區塊鏈業務相對單一,還在多方試錯和跨行業宣教的階段。可以預見,在前期節點 Gas 收益不足以覆蓋運營成本。所以這個時候,本體提出節點激勵計劃(前三年每年 10,000,000 ONG 用作節點激勵)並且在前期通過控制網絡規模有序擴展的方法,保證節點獲得 ONG 能覆蓋節點運維成本。

3) ONT 質押,ONG 二次流通參與業務。控制 ONG 首次流通的解綁速度,隨業務量增加,支付 ONG 總量增加,節點獲得 ONG 收益增加,將 ONG 流回市場獲得盈利以覆蓋節點運營成本,由此促進 ONG 的流通。ONG 流通速率的提高也提高了節點單位 ONT 質押獲得的 ONG,由此形成對 ONT 的價值預期。

4)區塊鏈節點是平臺的基礎,節點和節點之間的關係仍然滿足「競爭協同」的假設。目前對於 PoW 的挑戰不是節點間的公平競爭,而是資源浪費;而對 PoS 的挑戰不是資源浪費,而是所謂的「寡頭效應」。

本體在共識集羣中分兩個層次,非共識網絡 50%,而共識網絡 50%;非共識網絡根據質押成正比獲得 ONG 收益,而共識網絡的經濟模型中設計北斗激勵曲線,通過雙重博弈防止 Stake 寡頭投機,並且通過節點共識決定 ONT 鎖倉或是參與流通。對於大量 Stake 的節點而言,大量投入會減少收益,會選擇釋放部分 Stake 參與流通或者拆分成多個節點「礦工」,這個就加速形成了足夠分佈的網絡結構,並且無法形成壟斷。也表現出部分 PoW 的形態,但是沒有那麼多的工作量資源浪費。

同樣都是 Staking 經濟,本體的北斗節點有何特點?

本體的北斗激勵曲線的邏輯和上面那張圖一樣,區塊鏈網絡趨於穩定,角色節點性能均等,各節點補償基於權益,A 點符合網絡節點利益,達到利益最大化。可以滿足網絡推廣(B 點)、增加 ONT 流通(C 點)或者防止惡意競爭(D/D\’ 點)等多方場景。目前本體激勵曲線的平均點位設在 B 點,促進 Staking 的位置。

四、看到還有節點的退出機制,那一般節點會在什麼情況下進行退出?如何避免市場行情不好,出現運營成本高於 Staking 的收益,節點選擇退出的情況?

胡凝:在商言商,退出理由很簡單,無非三種:在節點預設的週期之內,ONT 參與流通相較於質押鎖定,獲得更高的收益或者是更少的損失;節點通過 ONG 獲利無法覆蓋節點運營成本,形成常規盈利;有比運營節點性價比更高的方案。

事實上,這種情況無法避免,在真正「市場行情不好」的情況下,區塊鏈網絡規模縮減以節省整體成本,在「市場行情回暖」的情況下再次擴展網絡,以此形成一輪平衡,這是區塊鏈網絡的衆治和衆智的結果。核心在於節點自身對於投資預期的設計和風險控制的規劃。

如果發生了,本體只有緩解方案。本體的架構邏輯是「多鏈合規(一條鏈一種治理模型),多層(分片)擴容」,如果在主鏈上的節點成本高於收益,那可以考慮參與到分片治理中去。本體的分片設計是爲了使本體方案支持業務調優。隨着業務的發展,總有分片是能獲得更高的收益率,從而吸引更多的 Stake 往分片節點中去;進一步的,隨着節點的流失,Staking 的收益又會回到能夠覆蓋運營成本的階段。以此形成動態平衡。那是另一個層面的博弈了。

不過話說回來,本體會盡可能的預防「市場行情不好」的情況出現。在過去的一年多時間裏,從基礎設施的角度,本體設計和實現了分片、多鏈、多 VM 支持等技術模塊,使得本體有能力突破區塊鏈業務的性能瓶頸;ONT ID、DDXF 等完整的應用方案也爲業務實現提供了完整的區塊鏈解決方案。這樣,鏈上業務有了落地的能力。隨着本體落地業務的發展。對本體 Staking 的收益也可以基於落地的業務進行評估。

不同治理模型跨鏈,相同治理模型分片,這是本體的整體架構。

五、之前我們社區有同學做過一個計算,EOS 中超級節點的經營成本很高,根據 EOS 團隊公佈的硬件門檻,最低的硬件配備標準是亞馬遜 AWSEC 2 主機 ×1.32×large 型,128 核處理器,2 TB 內存,2×1920 GB SSD,25 GB 帶寬,一臺服務器使用一年的成本大概是 75.9 萬元人民幣,換算下來,每月成本大概爲 6.63 萬元人民幣,而實際中成本則會更高。那根據本體剛發佈的北斗節點的軟件,硬件和網絡等要求,可以幫我們算下一個節點下來的運營成本大概有多高嗎?

胡凝:節點運維成本是根據區塊鏈網絡業務壓力呈現正比相關的。基於目前的業務壓力而言,目前本體節點要求 CPU 8 核,內存 32G,1TB SSD,10G 帶寬,運營成本以 AWS 海外資費邏輯大概 $550 一個月,折算下來每年大概 4.6 萬元人民幣左右。這塊在之前第三輪招募的鏈接中有提到過。

六、現在一共有多少節點呢?節點是都分佈在國內嗎?Triones Node (北斗節點)應用程序啓動後,您建議普通用戶應該怎麼選擇節點?

胡凝:目前一共有 48 個節點,世界各地都有,通過前期 KYC 的設計。目前節點情況請看(含第三輪節點招募的候選池) https://info.ont.io/listtriones/en

節點包含質押 ONG 收益(Gas 分成)和本體基金會的節點激勵(之前提到的前三年每年 10,000,000 ONG 激勵),目前來看基金會的節點激勵產生的 ONG 收益更多。本體基礎設施的治理合約僅能對質押(含用戶 Staking)收益根據節點預設的用戶 Staking 收益發放比例(0-100%,0 爲所有節點收益自留,不分發 Staking 收益)進行發放。

因此用戶 Staking 在選擇節點時候需要考慮三個問題:

  • 節點是否打開 Staking 功能?只有節點打開 Staking 功能的才能接受 Staking;
  • 節點設置的節點收益對 Staking 發放比例是多少?多多益善;
  • 節點是否針對本體基金會的節點激勵收益對 Staking 發放?如果有,是多少?多多益善。

對了,因爲北斗共識集羣的 Gas 收益,共識網絡收益佔 50%,所以實際參與的時候,還需要根據節點質押和用戶 Staking 的量,判斷是否選擇共識網絡的節點。

七、本體上線「技術視點專欄」,併發布跨鏈設計,我們理解在你們的跨鏈設計中,每個鏈跑個跨鏈智能契約,智能契約之間完成跨鏈,這一點問題都沒有,相當於中心化網關,但是我們社區的技術同學認爲本體公有鏈可能有兩問題迴避了:第一個:鏈 1 的網關智能契調用鏈 2 的網關智能契約,用誰的身份 ? 中心化方案因爲用單私鑰問題不夠安全;第二個,跨鏈請求找誰收錢 ? 怎麼收 ?

胡凝:這個問題可能有些誤解,本體跨鏈設計不是中心化管理方式,跨鏈合約只是合約,可以由任何發起方調用。所有操作都在鏈上完成,因此無法篡改。針對跨鏈角色問題,有 relayer 的設計,但是 relayer 唯一的作惡手段只有「不作爲」。

技術一點的解釋。簡單來說,任意的普通智能合約都可以調用跨鏈管理合約進行通信,跨鏈管理合約類似一個統一的跨鏈消息管理中心,要編寫一個跨鏈合約,需要編寫好目標鏈的 chainid 和目標鏈的對應的智能合約哈希,在用戶調用跨鏈合約後,跨鏈合約會調用跨鏈管理合約並 Notify 對應的跨鏈消息,Relayer 會搬運數據到對應的鏈調用跨鏈管理合約,跨鏈管理合約識別參數後調用對應鏈合約。

第二個問題,所有的多鏈中統一使用 ONG 作爲手續費用,當用戶調用鏈 A 時,會直接在鏈 A 中鎖定或銷燬對應的 ONG,relayer 執行成功後會在對應鏈 B 上釋放或解綁對應的 ONG 作爲礦工費用。

八、本體的跨鏈跟 Polkadot 和 Cosmos 在設計上有什麼區別?可以給不懂代碼的同學解釋一下嗎?

胡凝:這裏有一張相對簡單的圖表,列舉了本體和 Polkadot、Cosmos 的區別。

640 (1).jpeg

是從本體 medium 轉過來的,原文在 https://medium.com/ontologynetwork/ontology-releases-multichain-design-to-rival-that-of-cosmos-polkadot-and-plasma-17ddaa027b05

但是目前 Polkadot 的白皮書並沒有更新和主網也還未上線,所以本體對 Polkadot 分析的信息源頭可能滯後,結果可能存在誤差。很難用非技術的語言來描述跨鏈設計的區別。這邊還是轉一下本體技術團隊內部的分析報告概要。僅供參考。

1)側鏈驗證人的產生方式不同,Polkadot 的側鏈驗證人由主鏈分配,Cosmos 和本體的側鏈驗證人由側鏈自治;

2)跨鏈數據交互種類不同,Cosmos 的跨鏈交互暫時停留在只能轉移數字資產(也就是代幣),而 Polkadot 和本體可以實現任意信息的跨鏈轉移;

3)側鏈與側鏈的直接交互,Cosmos 和 Polkadot 側鏈與側鏈之間不能直接交互,而本體的側鏈與側鏈之間可以直接交互;

4)驗證人集體作惡問題,Cosmos 和 Polkadot 都存在側鏈驗證人集體作惡的問題,他們都採用側鏈向主鏈抵押的方式來實現側鏈與主鏈間的信任,但若主鏈轉移到側鏈的實際資產價值大於側鏈驗證人抵押在主鏈的實際資產價值,側鏈有作惡的可能性。本體的設計中重點提出了這個問題,並附帶了一種解決方案;

5)獲取區塊頭方式,Cosmos 的設計中側鏈與主鏈的交互時通過在旁邊部署輕客戶端的方式來獲取區塊頭信息,而 Polkadot 中需要存儲每個側鏈的的賬本信息。本體採用同步少量關鍵區塊頭經過對方鏈共識的方式來獲取對應鏈的區塊頭信息;

6)是否有 Relayer 搬運跨鏈數據,Cosmos 和本體中都使用 Relayer 搬運跨鏈數據,而 Polkadot 中鏈與鏈之間直接通過消息隊列直接管理;

7)跨鏈交互收取手續費用的方式,Cosmos 中設計中暫不明確,本體使用 ONG 作爲主鏈、所有子鏈、跨鏈資產交互的手續費和礦工費用;

8)跨鏈交互激勵方式,Cosmos 和 Polkadot 的設計中跨鏈交互如何激勵 Relayer 暫不明確,本體設計中 relayer 的「礦工費」收入方案和方法已經詳細公佈,並且這樣的設計使得無需註冊即可成爲 relayer;

9)測試網上線,Cosmos 暫時只上線了主鏈,Polkadot 主網還未上線,本體已上線跨鏈交互的測試網絡,可編寫跨鏈智能合約實現不同鏈間的資產轉移。

九、Staking 經濟的繁榮,也在反哺着其他行業,本體作爲一個 PoS 的公鏈,有計劃去支持 Staking 經濟生態中的其他角色嗎?比如 PoS 礦池、Defi、普通用戶的教育、Staking 服務平臺、節點的技術支持(這個門檻應該不高的吧)或者本體在這個生態中還會佈局什麼類型業務?

胡凝:還是從基礎設施的角度回答這個問題吧。業務生態需要生態夥伴一起來參與共建。

本體基礎設施作爲一個 PoS 公鏈基礎設施,能夠爲上層業務應用提供完整的、合規的、高性能的服務。Staking 經濟是一類業務應用,所以本體基礎設施有能力去支持 Staking 經濟生態的中的其他角色。

本體基礎設施聚焦於基礎設施,需要業務來推進生態,本體目前正在大力發展鏈上業務,我們懷着開放的心態滿足儘可能多的業務需求。

舉兩個例子,在生態業務方面,本體 DDXF 支持數據資產化,進一步支持數字資產的價值交換,通過結合穩定幣接入等相關業務,開拓區塊鏈業務場景,由此帶來諸如 MovieBloc 的生態合作伙伴。同時,國際標準化組織 ITU-T 的物聯網和智慧城市焦點組接受了本體的身份體系的相關提案,助力 CoT 生態合作伙伴也在物聯網 IoT 領域獲得突破性的進展。

十、目前在做 Staking 的節點有收益的嗎?爲什麼大節點和小節點的收益不一樣?

胡凝:因爲本體節點運維成本相對較低,在節點激勵計劃的設計下,基本都是盈利的。但是如果考慮 governance token 本幣的波動,就不好說了。

這是 PoS 的特性,如果質押越多,獲得的收益越多,因爲 Stake 的鎖倉也是一種成本。這種情況在共識網絡會出現差異,就是之前提到的那個激勵曲線的設計,防止寡頭的出現。目前有 7 個共識節點拿出自身的 ONG 收益,促進用戶 Staking,這幾個節點,從 ONG 收益和運維角度,是不盈利的。

本體第三輪招募計劃已經公開,本着公平競爭的原則,小節點可以考慮支持 Staking 而成爲較大的節點,這是本體原生支持的。