目前擴容的兩條主要路線分別是鏈上擴容和鏈外擴容,這兩條路線中均有實力不俗的代表團隊。每種代表路線中都有很多值得學習瞭解的設計思路和哲學,本文中,區塊鏈項目 Nervos 聯合創始人及 COO 呂國寧爲大家講述如何通過鏈外擴容和分層思想打造下一代區塊鏈基礎設施。

原文標題:《Nervos 呂國寧:解析下一代加密經濟生態》
文章來源:公衆號 區塊鏈研習社
分享者:呂國寧,Nervos 聯合創始人及 COO

Nervos 呂國寧:通過鏈外擴容與分層思想打造下一代區塊鏈基礎設施_ 呂國寧,Nervos 聯合創始人及 COO_

區塊鏈擴容是業內長期以來的焦點,區塊鏈最爲人詬病的點也是性能的低下,而擴容是解決區塊鏈性能問題的重要一環。

以太坊相比比特幣在性能上有所進步,然而遠遠不夠,以太坊之後誕生的大多數公鏈,無不把解決性能問題作爲主要解決方向,以期能夠打造出性能強悍、可商用的區塊鏈系統,成爲區塊鏈大規模落地的基礎平臺,成爲下一代區塊鏈的代名詞。

不同公鏈團隊提出了不同的解決方案,然而現在一切都還未定,各立場方也爲不同的解決方案展開了激烈辯論。

目前擴容的兩條主要路線分別是鏈上擴容和鏈外擴容,這兩條路線中均有實力不俗的代表團隊。

每種代表路線中都有很多值得學習瞭解的設計思路和哲學,本期問道區塊鏈請來了知名區塊鏈項目 Nervos 聯合創始人及 COO 呂國寧爲大家講述如何通過鏈外擴容和分層思想打造下一代區塊鏈基礎設施。

Nervos 呂國寧:通過鏈外擴容與分層思想打造下一代區塊鏈基礎設施

5 月 6 日晚,區塊鏈研習社社羣專訪欄目 ——《問道區塊鏈》邀請了 Nervos 聯合創始人、COO 呂國寧(前 imToken 聯合創始人兼 CTO,EthFans 以太坊愛好者社區發起人,前雲幣交易所 CTO,國內最大的線上技術社區 RubyChina 創始人)爲大家講述 Nervos 獨特的分層設計思想及鏈下擴容相關知識。

本次活動在「問道區塊鏈創世羣」進行,並在區塊鏈研習社所有社羣及合作伙伴社羣進行直播。活動得到了鏈聞、星球日報、COINVOICE、耳朵財經、深鏈財經、Coin4A 及各大媒體的大力支持。

呂國寧及 Nervos 團隊在業內深耕超過 5 年,在交易所、錢包、礦池、聯盟鏈等方面都取得了傑出成績,參與創立的項目在領域內均爲頭部項目,具有豐富的區塊鏈開發實踐經驗。

一、鏈上擴容方案的取捨和妥協

呂國寧指出 ,目前區塊鏈的性能擴展方式有兩條路,一條路爲鏈上擴容,另外一條路是鏈外擴容。

鏈上擴容是指從區塊鏈本身特性出發,解決影響性能的特性,從而提高區塊鏈性能。

比如共識算法不夠高效,就選擇更高效的 POS 及其變種算法;比如鏈式存儲結構效率不夠高,就使用可以並行打包的 DAG 方案;再比如網絡處理交易和驗證是串行的,一次只能處理一筆交易,就使用可以給節點分組的分片技術,不同的組處理不同的交易,提升性能。

鏈上擴容的技術都在實現一個目標,即做一條更強的鏈。每一種技術方案在具體實現的時候都要面臨各種不同的取捨,每一種方案在帶來更好的性能提升的同時,其實都會在其他方面做出一些妥協。

比如分片方案能否高效的解決跨鏈計算,DAG 在雙花檢測上是否能夠做到比較低的延遲,而 PoS 共識算法的安全性能否保證,所有基於 PoS 的攻擊方式是否已知並且有針對性的方案,且能帶來如 PoW 在真實環境中長達十年的檢驗給我們帶來的信心?

這些問題都是當下各個鏈上擴容團隊在積極努力和試圖解決的,雖然在過去的一兩年鏈上擴容的研究有了很多進展,但是這些都不是 Nervos 嘗試解決問題的方向。

Nervos 不是爲了做出一條更強的鏈

實現鏈上擴容是不是我們要解決的核心問題?

我們的看法是擴容不是唯一核心要解決的問題,比如說,如果我們把性能的瓶頸問題解決了,存儲可能會馬上變成瓶頸,這就是前段時間被熱議的狀態爆炸問題。由於交易量的提升,那麼對存儲的需求也會同步提升,而節點的存儲資源其實是有限不可回收資源,所以這個問題可能要比性能問題還要嚴重,甚至它直接影響到了去中心化這一區塊鏈的本質特性,且這類問題還無法通過分叉能方便得解決。

進一步深入思考,會發現在一層中要把所有的事情全部都做到最好,其實要權衡的東西很多,並且做取捨非常難,很多東西甚至是互相矛盾,導致無論做出怎樣的取捨,在保證去中心化和安全性的前提下,很難做到很好的性能。

Nervos Network 的設計思想的出發點不是爲了做出一條更強的鏈,Nervos Network 的目標是去實現一個豐富繁榮的加密經濟生態,併爲這個生態提供底層基礎設施服務。

區塊鏈在這個生態中的角色是提供最高效率達成全球共識的工具,並以最低的成本來構建信任。所以 Nervos 的方案是鏈外擴容,並提出了設計一個分層的加密經濟網絡設計,並且帶來一個全新的公鏈架構設計思路:如果我們認爲分層是未來的發展方向,我們應該從一開始就考慮到上層協議和分層網絡的需求,在分層的大框架下去設計區塊鏈協議。

基於分層的思想,Nervos 的底層 Layer 1 網絡只需要關注到安全和去中心化,Layer 2 層追求極致的性能,並且在業務實現上去滿足各類商業場景的需求,然後由 Layer 1 來對 Layer 2 提供保證。

三、分層思想和技術創新下的繁榮生態

Layer 2 的興起,是源於我們發現公有鏈的性能不足,很難擴容到滿足整個加密經濟體需求的水平,因此慢慢演化出了一系列可以由區塊鏈來保證安全的 Layer 2 協議,例如支付通道(Payment Channel),Plasma 等等方案。

Layer 2 方案共同特點是犧牲共識範圍來換取性能,因此作爲 Layer 1 的區塊鏈,關注點顯然不應該是性能,因爲 Layer 2 會承擔這個職責。Layer 1 是保障上層協議參與者的最後防線,它的關注點應該是安全和去中心化。

Layer 1 負責的是狀態共識(存儲),Layer 2 負責的是狀態生成(計算)。

Layer 1 需要一個安全的共識協議,並且範圍越大越好。基於 PoW 的 Nakamoto Consensus 正是這樣一個協議,這是唯一一個在現實環境中經過驗證的全球共識,於是我們針對 Layer 1 設計了一套性能優化的給予 PoW 的共識協議,這套共識協議可以在不犧牲安全性的基礎上,壓榨初網絡帶寬的所有潛能,目前我們沒有給我們的 PoW 取正式的名字,暫定名字爲 NC-Max。

Layer 1 需要驗證各種 Layer 2 的狀態,需要擁有一個強大的可編程能力的虛擬機,以支持各種狀態驗證邏輯,這意味着我們需要一個強大的編程模型(狀態模型+虛擬機),我們引入了基於 RISC-V 指令集實現的虛擬機,來滿足 Layer 1 的各種需求。

在 Layer 1 這一層,基於 Cell 編程模型的靈活的狀態存儲能力,結合 Nervos CKB-VM 虛擬機,可以方便的支持各種密碼學證明,讓
Layer 1 充當 Layer 2 的「法院」的角色,並且可以非常靈活的增加新的密碼學算法而無需硬分叉。

最後,一個合理設計的經濟模型,對齊網絡上參與的各方價值和利益,才能保證網絡長久安全可靠運行。

最後總結一下創新點:

  • Cell 模型,支撐靈活的狀態存儲和驗證
  • CKB-VM 虛擬機,基於 RISC-V 指令集實現
  • NC-Max PoW 共識算法,壓榨網絡帶寬的所有潛能
  • 靈活的新增各種加密算法,而無需硬分叉
  • 經濟模型,針對 Layer 1 定製的,保障網絡長久安全可靠運行

四、開發進度和近期目標

5 月 18 日,我們的測試鏈將正式發佈。大概會有不短於 6 個月的測試階段,然後纔是主網上線。測試鏈運行期間,我們會繼續修復各種問題。當測試鏈比較穩定後,我們會引入第三方安全審計團隊從滲透測試到白盒測試進行多輪審計,基於審計結果我們會開展一系列的安全問題修復。以及在保障安全性的前提下做到儘可能的性能調優。

當安全方面的工作達到一個穩定階段後,我們會開始壓力測試,我們的目標是希望當壓力測試達到一個穩定的狀態持續一段時間,比如 30 天后,屆時我們會開啓主網絡發佈計劃。

從測試鏈到主鏈,可能有長達半年的迭代時間,在這個期間,我們會針對社區和開發者開展一系列的基於測試鏈的技術活動,包括系列的 Hackathon,Demo 大賽,漏洞懸賞等等,希望能借此吸引到更多的開發者早期參與到我們的測試鏈的測試和完善工作中。

五、訪談實錄

Q1:Higer (區塊鏈研習社創始人):Nervos 一直在強調「價值捕獲」以及 Token 的內在價值,比如我們的 CKB Token 可以去換取 Layer1 上的存儲空間。EOS 採取的也是抵押 Token 換取資源的方式來解決存儲瓶頸問題,那我們和 EOS 的思路有什麼本質上的區別嗎?這種模型是否會面臨由於 Token 價格上漲而帶來的開發者成本過高問題?

呂國寧:這是一個非常好的問題。我們可以從 EOS 資源模型的異同來解釋 CKB 的資源模型。

首先從所有公鏈的基礎共性上看,每一條基礎公鏈設計其 Token 時,都需要考慮運行時的資源消耗,並且通過需要解決資源的消耗付費問題,並且 Token 的定價必須綁定到資源本身,尤其是稀缺資源,Token 的價格才能保持穩定。不同的鏈的定價模型不同,綁定的資源也不同。

比特幣綁定的是交易帶寬,即交易打包權,因爲區塊大小受限,每 10 分鐘出一個塊,所以礦工會優先選擇打包手續費較高的交易。

以太坊綁定的是計算資源,由於計算資源有限,每個塊限定了總的計算量即 gas limit,當前約 800 萬左右,所以礦工優先計算 gas price 較高的交易。

Nervos CKB Token 綁定的資源是狀態的存儲空間,開發者要質押 Token 換取一定量的空間用於存儲狀態數據。

EOS 則綁定三種資源,CPU,RAM,Net,並且在使用中要爲這三種資源付費。

從表現上看,CKB 和 EOS 的資源模型的使用方法很類似,尤其是跟 EOS 中的 RAM 資源非常類似。EOS 中的 RAM 資源和 CPU/Net 資源不同,CPU/Net 你需要質押一些 Token 就可以換取到,並且使用完畢後,被質押的 Token 可以自動退回,因爲 CPU/Net 是瞬時,或者可再生資源,而 RAM 是持久佔用資源,賬號的創建,合約的執行,都需要佔用一定的內存空間,所以必須消耗一定量的 RAM。RAM 需要向系統購買獲得,而非質押獲得,未消耗掉的 RAM 還可以賣回給系統,且 RAM 總供給會不斷增發。

在很多方面,CKB 和 RAM 的區別很大:

RAM 和 CKB 的設計目標不同。RAM 錨定的是計算節點的內存資源,而 CKB 錨定的是持久狀態存儲空間佔有,CKB 的消耗跟節點內存消耗無關。

RAM 和 CKB 的增發方式不同。RAM 的增發主要依賴 EOS 的社區治理決定(我們假設 EOS 的社區治理是正常的 ),而 CKB 的增發方式是經濟模型設計的一部分,並且由協議實現,是確定性的。

RAM 和 CKB 的獲取方式不同。RAM 的定價基於 Bancor 模型,由 RAM 供應量和稀缺性決定價格,只能向系統購買。而 CKB 完全通過二級市場定價,並且可以通過多種渠道獲得,包括挖礦模式。

RAM 和 CKB 的消耗方式不同。RAM 被使用掉即消耗,而 CKB 的狀態空間使用不消耗 CKB 本身,只是讓 CKB 失去了流動性,如果釋放掉 CKB 空間中的數據,那麼 CKB 可以重新流通。

RAM 和 CKB 的主要使用策略不同。RAM 的使用是強制性的,只要合約執行就必須佔用內存狀態,而狀態的佔用跟合約的應用規模正相關,而 CKB 具體用來存什麼則由開發者決定,CKB 是分層設計,鼓勵儘可能將計算和存儲放到成本更低的 Layer 2 上,而將最重要的關鍵數據,比如資產存儲在 CKB 上。

所以總結一下,CKB 和 EOS 的資源,尤其是 RAM 表象上很像,其實內核非常不同,具體解釋 Nervos 的 CKB Token 的內生功能,以及圍繞 Nervos CKB 設計的經濟模型,希望有機會單獨做一次分享,才能講清楚 。

關於 Token 價格上升是否會帶來開發者成本過高的問題?

EOS 的 RAM 消耗需要開發者支付,最終是要轉嫁給用戶承擔,所以開發者需要考慮如何能更高效的使用 RAM 並開發高價值的 DApp 給用戶,而 CKB 的主要考慮是存儲的價值密度,Layer 2 項目部署到 CKB 上,可以有效的降低對 CKB 的存儲需求,但是 CKB 的存儲由礦工提供算力保護,並且提供全局共識,所以 CKB 會傾向於存儲資產以及 Layer 2 的 Merkel Proof。

Merkel Proof 意味着 Layer 2 應用只要每隔一段時間,向 Layer 1,也就是 CKB 提交一份 32 字節的哈希字符,就能證明 Layer 2 的一致性和準確性,這樣的話,這 32 字節的字符就代表了整個 Layer 2 的經濟體量,那麼這 32 字節就是高價值密度數據。

在 CKB 上,當 Token 價格上升時,由於自由市場調節,會導致礦工更大的投入,帶來更多的算力保障網絡的安全性。而安全性作爲 Layer 1 向 Layer 2 提供的最主要的價值,會幫助 Layer 2 擴展其信用規模,從而幫助 Layer 2 層發展出更好的經濟生態,並且將價值沉澱到 CKB 本身,這是 CKB 的經濟模型的核心,即捕捉 layer 2 產生的價值到 layer 1 的 token 上。

爲了解決 Token 價格上升帶來的成本問題,CKB 底層靈活的編程模型可以方便的把所有權和使用權分離,這樣會刺激產生一個完全市場化條件的 CKB 租賃市場,我們認爲租賃 CKB 可以有效的解決 Token 價格帶來的開發成本過高問題。

Q2 Higer:Nervos 的分層設計方案,並沒有像其他公鏈那樣從某個角度去尋找「單點突破」,而是完全重構了一套全新的底層基礎公鏈 CKB 去更好的配合 Layer2,這是出於非常長遠的考慮。那麼您覺得目前對於開發者來說,公鏈的用戶規模和易用程度,哪個會是他們首要考慮的因素呢?除了做好技術本身,Nervos 還會從哪些方面來提高整個生態的價值?

呂國寧:用戶規模和易用程度,這兩個概念放在一起類比非常有趣,但是在我的理解,這兩個概念可以相關,但是也可以獨立看待。

我可以廣義的去理解關於用戶規模,用戶類型和角色可以是很多種,有開發者,有 DApp 用戶,有 Token holder 投資用戶,有礦工。有人提供信息服務,有人提供技術培訓,有人在多種不同的角色中切換,公鏈背後的社區應該是多元的,存在不同類型的角色,並且角色之間可以互動,交流,彼此服務,併產生價值,最後價值能以各種形式沉澱到社區當中。所以用戶的規模,可以等同於社區的規模。

公鏈平臺的運營者如果希望更多的用戶進來,短期策略可以做各種類型的活動,如同電商打折讓利促銷,這樣的確可以短期抓住大量以套利爲目標的用戶,但是這種類型的用戶切換成本也低,如果模式不能持續,則用戶很快會流失掉。

如果公鏈平臺能證明自己的價值,並且有可持續的建設和發展社區,並且能把價值沉澱下來,那麼這些沉澱的價值是無法低成本切換走的,並且這些價值支撐了用戶規模和爲未來持續發展提供保障。開發者看待一個平臺,不能僅僅看單一 DApp 用戶數量這一個指標,應該去看這條鏈背後的社區狀態,以及發展趨勢。

易用程度取決於平臺定位和技術迭代,或者換句話說,易用程度是技術領域的問題,我們可以觀察到一個事實,想要把一個平臺的進入門檻做到足夠的低,開發體驗足夠的好,跟其難度和背後需要付出的努力呈反比,看起來越簡單的平臺,背後可能付出的努力越大。

但是技術層面的問題,只要有足夠的人力,資源,時間,總會方法和手段可以做到更好。問題是公鏈項目的開發團隊,任何一家都不是資源無限,時間無限的條件下去做開發的。在資源有限的情況下,最好的策略是想辦法通過社區的力量幫助開發,而事實證明做的最好的公鏈,大部分工作主要依靠的是社區的力量協作實現的。所以開發者首先應該考慮的,依然是公鏈平臺背後的社區,以及發展趨勢。

關於除了做好技術本身,Nervos 還會從哪些方面來提高整個生態的價值 ?

Nervos 首先是一個開源項目,並且目標是把 Nervos 發展成一個強社區驅動的開源開放區塊鏈平臺。把社區和生態的發展放在了優先級非常高的位置,我們主要做的幾個核心工作大概分爲三點。

第一,儘可能讓更多的人接觸,瞭解 Nervos,然後參與進來。

我們光去年就做了接近 40 多場的線下 Meetup,而且不僅僅在國內,我們在北美,歐洲,亞太等地區。在這個過程中我們直接跟社區成員面對面交流,傳播我們對當前區塊鏈的認知,對未來區塊鏈發展的觀點。包括我們宣傳的基於分層的未來區塊鏈基礎設施架構,以及各種 Layer 2 項目的概念,發展趨勢等。

爲此我們還在 github 上成立了 awesome-layer2 項目,目的也是爲了更好的方便大家理解 Layer 2 作爲未來區塊鏈發展的一個重要方向。努力的結果,讓我們獲得了全世界範圍內,來自區塊鏈技術圈頭部專業人士的一致認可。

第二,開源,並儘可能擁抱開源社區。

Nervos CKB 的底層用的是 Rust 語言開發,我們有超過 30 名 Rust 工程師,所以我們深度參與到了國內 Rust 社區和生態的建設當中,幫助把國內的 Rust 社區發展到一個新的 Level,在剛剛過去的四月二十號,我們聯合國內另外一家 Rust 的公司 PingCAP 一起爲 Rust 社區做了一場非常成功的 RustCon Asia。

我們希望聯合所有跟我們相關的開源社區,爭取來自其他各個開源社區的支持和幫助,所以我們必須先儘量想一切方法去 contribute 我們的努力到開源社區,效果是非常顯著的,現在 Nervos 取得了非常好的開源社區的品牌形象,以及認同感。除了 Rust 社區,還有 RISC-V 社區,Ruby 社區,區塊鏈相關的各種技術社區等等。

這是 RustCon Asia 的官網 https://rustcon.asia

這個大會非常的成功,但是這是一個區塊鏈企業爲 Rust 技術社區所做的力所能及的貢獻,而這場技術大會跟區塊鏈完全無關,但是意義非凡。

第三,我覺得也是我們做的最重要的一點,就是教育。

現在還處於社區早期發展階段,還有大量的潛在的社區貢獻者,我們需要創建儘可能多的內容去教育大家,跟大家共同學習,成長,幫助潛在的社區貢獻者成爲真正的社區貢獻者,爲此我們在教育資源的投入上做了很多努力。包括通過線上,線下媒體發表了大量的技術文章,以及社區分享,比如今天這種形式的分享就是我們的工作的一部分。

我們還贊助了很多內容創作者去產生跟 Nervos 有關的內容,比如 learning.nervos.org,haoqicat.com,orange.xyz 等等。並且把我們的內容通過國內所有我們能接觸到的平臺,渠道進行傳播,推廣,並且我們維護了超過 100 個微信羣,Telegram 羣,以及其他各種可以接觸到社區成員的渠道。並且在各地想辦法建設當地的 Nervos 社區,比如 NervosFans,Nervos 北京社區,Nervos 成都社區,Nervos 臺北社區等等,以及我們的 talk.nervos.org 已經成爲國內非常有特色的交流區塊鏈技術和加密經濟學的在線社區。

通過這些努力,我們已經幫助很多人成長爲優秀的社區貢獻者,我們相信會有更多的人在將來會成長起來並且貢獻價值到社區,同時我們還會做更多的嘗試來提高整個生態的價值。

Q3 Higer:隨着菠菜應用熱度的消退,到目前爲止,曾被很多人寄以厚望的 DApp,還遠沒有發展到大家理想中的狀態。請問 Daniel 如何看待目前的公鏈和 DApp 發展現狀?到底怎樣的 DApp 應用才能真正被用戶所需要?也許您的回答可以爲社羣的一些從業者和開發者提供更好的思路。

呂國寧:關於如何看待目前公鏈的發展,我只能從 Nervos 的角度回答,只能代表一家之言。

先談願景,Nervos 的目標是爲繁榮的加密經濟生態提供底層基礎設施服務,我們對未來的判斷,是基於密碼學構建的加密經濟生態。

加密經濟是一個全新經濟體。這個經濟體不同於其他的虛擬經濟體,它可能創造出一個非常活躍的市場。它能發展出多大的規模,現在無從知曉,但是它依託於互聯網,發展規模可以平齊於互聯網規模,跨越不同的國家和地區,吸引了成千上萬來自不同國家的市場參與者。它將個人創造和交易數字資產的成本降到極低,它匯聚了前所未有的流動性,永不停轉,7*24 小時不間斷的爲用戶提供服務。

公鏈在未來的加密經濟生態中,扮演的應該是底層基礎設施和信任的引擎。我們認爲目前公鏈的發展,仍然受限於基礎設施的發展。區塊鏈的基礎設施並不完善,以太坊 20+ 的 TPS 和比特幣 5-7 的 TPS,對比支付寶 27 萬筆 / 秒的交易創建速度,所以大家就都把關注點放到了做性能更好的公鏈。我們也看到新的公鏈比如 EOS 將 TPS 提升了一個數量級,就會帶來新的應用類型的 DApp 應用流行起來,那麼隨着底層性能繼續提升一到兩個量級,一定會催生出一個非常豐富的 DApp 生態。

關於到底怎樣的 DApp 應用才能真正被用戶所需要 ?

我認爲最符合區塊鏈的基因和邏輯的 DApp 應用,才能創造出獨特的價值,並且服務有需要的用戶,才能做出符合用戶需要的 DApp。

所以關鍵在於清楚的理解區塊鏈到底給我們帶來什麼樣的價值,想清楚了就比較容易做出真正被用戶需要的 DApp。

我舉個實際的例子,我比較關注去中心化金融服務,也就是 DeFi 類應用,這類 DApp 的關鍵是如何合理的利用好區塊鏈提供的安全和強去中心化錨定。

其實金融類的 DApp 已經部分落地了,很多錢包服務內置的去中心化理財,借貸等功能,我們認爲這已經是典型的落地案例,而且也被證明了符合用戶的需求,所以發展非常迅速。

Q4 Higer:近有關 PoS 和 Staking Economy 的話題很多,也有一些人認爲效率更高的 PoS 機制是行業未來不可逆轉的趨勢,以太坊的下一步計劃也將轉爲 PoS。而 Nervos 項目從一開始就將 Layer1 的共識機制確定爲 PoW,我們是基於哪些方面考慮的呢?您又是如何看待 PoS 的未來的呢?

呂國寧:好的,好問題,我先回答爲什麼 Nervos 的 CKB 選擇 PoW?

這要從 Nervos CKB 自身的定位來解釋,Nervos 提出的是分層架構。分層架構相對於使用其他擴展方案的區塊鏈,其核心是底層把計算儘量放到鏈外,放到上層,而底層主要負責的是驗證,以及通過驗證的狀態的持久化存儲,這裏的狀態主要就是資產。所以在我們的設計中,Layer 2 用於承載業務,而 CKB 作爲 Layer 1 則用於保障安全和信任,所以 Layer 1 會變成一個安全層,它上面的 Layer 2 去做 Scalability 的事情。

PoW 的另外一個特點是簡單,簡單其實是一個特別,特別,特別關鍵的特性,因爲簡單意味着更安全,複雜是安全的敵人!

因爲 PoW 模型足夠的簡單,對於 PoW 我們可以方便的建模分析,定量分析其安全性,並且我們可以非常有信心的說,我們對 PoW,或者 Nakamoto Consensus 算法的所有攻擊方式和解決方案都是已知的,是可以在實際生產環境中去提前做好準備和預防的。

(我們的研究員張韌博士三月份發表了一篇關於 PoW 定量分析模型的論文,投中了安全領域的國際頂級協會 https://talkstocks.club/news/251905511704.htm

換個角度來看,因爲共識創造信任,但是信任的創造只有通過錨定稀缺性資源,纔會更加穩定可靠。PoS 是用系統自己發行的 Token 作爲押金保證系統的安全,信任自己創造自己其實是難以自洽的。

這個點其實可以從經濟學角度稍微展開解釋,如果區塊鏈的共識算法創造了一個完全競爭市場,提供多少安全,就需要多少生產成本,那麼「攻擊成本 = 安全程度 = 生產成本」,想要提供多少邊際安全,就需要付出多少邊際成本。而 PoS 的設計讓我們可以提供等量的安全,但是隻需要 10% 甚至 1% 的成本,對於這一點我們覺得還需要真實環境下長期的檢測才能證明。

PoW 的競爭來自於外部性,因爲你總是可以通過市場行爲來避免算力集中產生 51% 攻擊,但是 PoS 的 Stake 如果過於集中,目前並沒有比較好的辦法能解決這個問題。我們觀察目前的所有已經在運行的 PoS 系統,看到一個趨勢是 Stake 的集中程度越來越高,那麼會不會產生相對集中的共識羣體聯合審查交易的情況呢?我還沒有看到能在 PoS 共識協議中解決這個問題的方案。

Nervos 的 CKB 的角色必須是一個無需許可的網絡,因爲 CKB 必須是全球共享的、中立的設施,而「需要許可」則意味着它是受到某一羣人控制的,與這個目標是根本衝突的。如果我們希望 CKB 儘可能的去中心化和安全,目前的 Nervos CKB 就只有 PoW 一個選項。PoS 不是不能用,只是不適合。

我們對 PoS 的未來的態度是謹慎樂觀。我們也看到很多項目採用 PoS,並且在 PoS 的理論和工程實踐方面又了長足的進步。我們希望看到 PoS 能在更多的生產環境下經歷更多來自各個層面的攻擊驗證其安全性,以及在理論層面上能提出更好的分析框架來深度分析 PoS 的各種攻擊角度和應對策略。

Q5 Higer:可能是更多普通用戶所關心的,非開發者未來可以通過哪些方式參與到 Nervos 網絡從而獲益?比如挖礦,我看到 Nervos CKB 白皮書裏把節點分成存儲節點、共識節點和輕節點,他們有什麼不同?哪些節點會有收益?礦工應該如何選擇?

呂國寧:好的,我想先從 Token 獲取角度來談這個問題,我們是一個經過機構 Private Sale,但是沒有公開發幣的項目,這個問題我們被反覆問過。

區塊鏈的生態是通過大家持有 Token,分享社區和平臺的成長紅利,並且共同承擔風險。所以如何參與到 Nervos 的問題變成了如何獲得 Nervos CKB Token 的問題。

這是一個開放性問題,首先大比例的 Token 一定會通過 PoW 的方式挖礦分散出去,所以挖礦會獲得,二級市場可以直接購買獲得,以及各種交易的方式獲得。我認爲這個跟其他類型的平臺,尤其是基於 PoW 的平臺 Token 獲取方式並無本質區別。

同時我們認爲非技術開發者在這個社區中依然扮演非常重要的角色,依然有很多方式可以幫助這個社區,參與任何類型的社區建設,比如幫忙測試,提交評論,產生文檔內容,做線上線下活動,解答其他人的疑惑,傳播 Nervos 的技術等等,這些都是在爲這個社區創造價值。

而如何激勵爲社區創造價值的用戶,尤其是在早期階段通過激勵去快速發展社區,是 Nervos 基金會的職責。在我們的規劃中,Nervos 基金會持有一定比例的 Token,用於激勵社區的貢獻者,我們在不斷的探索實踐如何更有效的利用手中有限的資源去產生最大的效用,去助力 Nervos 構建一個更好更良性的社區。三月初我們發佈了 CKB 的經濟白皮書,然後我們在 talk.nervos.org 論壇上發起了評論有獎的活動,就取得了非常好的效果,類似的活動我們還會繼續開展,並且會更加的多元化。

關於存儲節點、共識節點和輕節點,他們有什麼不同?哪些節點會有收益?礦工應該如何選擇?

輕節點:不參與共識,也不存儲歷史數據,主要存儲有限的數據,所以可以在移動設備或者終端設備上運行,主要是爲了方便客戶端交互。

存儲節點:存儲全網的全部數據,並且對所有的交易進行驗證,並對外提供數據查詢檢索服務,全節點是網絡中非常重要不可或缺的部分,只有維持一定數量的存儲節點,才能保障網絡是可靠的,健壯的。

共識節點:主要職責是參與共識和出塊,共識節點不必要保留全部歷史數據,也不用提供對外提供數據查詢服務。

礦工應該選擇並運行共識節點,也只有礦工通過共識節點能獲取到出塊的基礎髮型,二級髮型獎勵以及交易手續費收入。

輕節點有應用場景支持,一般 DApp 開發者,或者錢包等場景需要部署輕節點,用於給用戶提供更好的數據查詢和區塊鏈交互服務。而全節點的激勵則需要通過社區治理來解決,我們希望看到最後產生一個比較好的機制能激勵更多的全節點來維護網絡的安全性。