FIBJS 專案創辦人響馬自 1992 年從事軟體開發至今,已有 30 年經驗,目前專注於 fibjs 和 EOS 相關的底層設施開發,此次訪談中,他將暢談 EOS、以太坊與區塊鏈背後的政治哲學。
(前情提要:彭博:Layer2成軍後,以太坊「公鏈之王」將更加穩固)
(背景補充:為什麼以太坊的公鏈之王地位難以撼動?)
響馬,FIBJS 專案創辦人,92 年從事軟體開發至今,已有 30 年經驗。響馬在 1994 年接觸網際網路相關技術,1998 年創辦華語圈首個大型綜合社群網站 —— 西祠衚衕,2012 年創辦孢子社群,2018 年涉足 EOS 生態,目前專注於 fibjs 和 EOS 相關的底層設施開發。
本次訪談從響馬對 EOS 的回憶開始,引申到區塊鏈背後的政治哲學。他認為:
- 追求極端 TPS 的是偽區塊鏈,高效能其實是最不重要的一環;
- POS 的核心是如何選出長老,本質趨於聯盟鏈。而 EOS 通過治理來分配出塊權,涉及到公共治理權的來源;
- POS 鏈的股權制存在剝削,原生 Token 持有者有治理權,持有其它資產的人卻沒有。這是引入智慧合約所引發的問題,以太坊為首的智慧合約區塊鏈,從保護私權,變成管理公共資產,引申出了一系列複雜模糊、不好解決的問題。比如頭重腳輕,上層資產太重。
- 支援智慧合約和 Defi 的以太坊管轄了公共資產,但相關權力分配不明晰合理,比如借貸協議憑什麼採用並相信某些預言機。Permissionless 的合約部署及採用,授予了許多個體以沒有被充分監督的權力,這連鎖反應產生了一系列問題。
- 使用者並不關心底層技術,他們想要的往往是簡單、得心應手的產品,而不必是最完美的。
- 以太坊現在其實是通過去中心化技術形成的一個中心化的信任中心。
- DID + 可驗證憑證也許是一個未來方向,它可以連線分散的網路,無需信任與邊界。
- 只要有鏈就有共識,有共識就有邊界,有邊界,就無法做到互通。 我們要做的就是一個沒有邊界的,沒有信任的協議,這才是下一代網際網路的屬性。
訪談全文
1.Cynic: 我們從一個問題引入本次對 EOS 乃至新公鏈的討論吧。我們都知道,EOS 在 2018 年曾無比瘋狂,其 IC0 募資規模達到 42 億美元,一度震驚區塊鏈乃至傳統金融圈,讓無數上市公司都黯然失色。但時至 4 年後的今天,EOS 生態已然勢微,市值縮水 98%,甚至逐漸被世人遺忘。
在此,您能否靠著對 「2018 之夏」 的記憶, 簡單講述下您對 EOS 的回憶與其跌宕起伏?
響馬: 我的經歷代表了很多從傳統技術圈進入區塊鏈的人的經歷 —— 當時總是被 「教育」 到,BTC 很慢,使用成本很高,但它的價格卻漲得很高。這個時候,我們 想讓區塊鏈能夠承載更廣泛的業務和更大規模的市場,顯然就要讓區塊鏈的吞吐量變得更高。
EOS 在這樣的時代背景下,提出了每秒 100 萬 TPS 的驚人指標, 雖然現在大家知道,僅就單鏈而言 EOS 遠做不到這一點,但在那個時代,它卻給了大家以幻想的餘地。EOS 是不是真的解決了區塊鏈的效率問題?區塊鏈可以變得很快,可以重新容納更多業務,可以創造更大的市場?
在單鏈生態上,EOS 在一段時間內的表現其實不錯。單從效能來看,經過我們的優化後,可以達到 3 萬 TPS。EOS 無論是從效能還是在生態上,其實都曾是一個不錯的專案。 但我認為區塊鏈的核心不是效能,而 EOS 過於注重交易處理速度和吞吐量問題。 對高效能區塊鏈的敘事,我的觀點大概是在 2019 年前後開始轉變的。
2.Cynic: 我記得您之前曾說,「 EOS 用了半年時間,堵死了高效能公鏈這條路」, 這個應該就是您提到的思想轉變?
響馬: 這個轉變的過程是什麼?EOS 的發展,讓我們在技術實踐中發現了問題。我們可以和其他鏈進行對比,比如說 BTC,到現在為止,BTC 的資料量規模是比較穩定的,我們甚至可以在幾小時內驗證完歷史資料。但對於 EOS,哪怕只同步 18 年到 19 年底這部分的歷史資料,我們跑一個全節點都會感覺到同步時間的漫長。
這其實違背了區塊鏈和密碼學的宗旨: Don’t trust,verify. 也即自己去驗證資料,不必信任其他人。 但過長的歷史資料同步時間,擡高了執行全節點的門檻,意味著你無法快速完成驗證交易的過程, 大多數使用者最後只能長期信任第三方節點的資料驗證結果。
我們發現,在越來越多的區塊鏈專案中,使用者只有依賴雲服務商,才能驗證區塊鏈帳本資料。
這個時候我們就會反思 —— 區塊鏈的第一性到底是什麼? 什麼樣的業務應該用區塊鏈,什麼樣的業務不該用區塊鏈?要不要為了 TPS 去犧牲安全?要不要為了高效能去犧牲可驗證性? 當我們失去了資料的可驗證性、資產的可驗證性,區塊鏈跟支付寶還有什麼區別? 我為什麼不用支付寶而去用區塊鏈?
後來我意識到, 追求極端 TPS 的是偽區塊鏈。 區塊鏈應在效率和安全之間找到平衡,高效能實際上是區塊鏈中最不重要的一點。
3.Cynic: EOS 創辦人 BM 之前還做過兩條鏈,和 EOS 一樣用的都是 DPOS 共識。 您怎麼看 DPOS 及其背後的哲學? 因為 DPOS 中的 D: Delegate 委託機制,似乎讓 EOS 天然具備了鏈上治理能力。
響馬: 共識機制在我的定義裡只有兩種,要麼 POS,要麼 POW。POW 來源於計算能力,而 POS 來源於股權。 POW 更 Permissionless,而 POS 的核心是如何選出長老,本質上會向聯盟鏈靠攏。
同為 POS 體系的公鏈,以太坊簡單的通過質押,通過隨機選拔共識節點,然後去儘量避免人為主觀介入的比重;EOS 考慮更多的則是通過公開治理來分配出塊權。
但 POS 總會產生一個問題:公共治理權的來源是什麼? 在 POS 中,Token 是這個權力的來源,大家通過 Token 質押量來決定個人的治理權,也就是股權制。這不像國家治理,國家政府的權力來自於人權的讓渡,採用的是人權制。
股權制存在剝削問題, 原生 Token 持有者有治理權,持有其它鏈上資產的人卻沒有。 這是引入智慧合約本身帶來的巨大難題。 以太坊為首的智慧合約區塊鏈,從保護私權,變成管理公共資產,必將遇到更多問題。
4.Cynic:您提到的 「引入智慧合約帶來了巨大問題」,是指?
響馬: 可以這麼打比方,比特幣只是個帳本,沒有智慧合約,使得比特幣只是個記帳工具,只記錄私有財產的轉移,只涉及私權,這比較簡潔,權力模型是合理的;但以太坊引入智慧合約後,本質成了去中心化的雲服務。
支援智慧合約的以太坊實際管轄了公共資產,不再是比特幣那樣單純管轄私有財產,這引申出了一系列極其複雜和模糊、不好解決的問題。
首先,以太坊鏈上有原生資產 ETH 和流通的其他資產(或稱為寄生資產),「寄生資產」 只有使用權沒有底層鏈的治理權,隨著這類流通在鏈上的 「寄生資產」 越來越多,以太坊難免出現 「頭重腳輕」 的現象, 即底層安全和上層承載的巨量資產不匹配。 pow 轉 pos 後,這個頭重腳輕的問題更明顯了,整個體系的治理權更集中;
更重要的是, 智慧合約賦予了以太坊公共資產管理屬性,Defi 相關的各種交易,涉及到公共資產相關的權力再分配, 可以延伸到治理權。舉個例子:
某個 Defi 借貸協議採用了一組預言機節點聯盟來提供餵價服務,確定哪些使用者的抵押率不足需要清算,這其實就賦予了預言機節點以公共資產管理權; 但我們憑什麼相信這些預言機是可信和安全可靠的,憑什麼把公權賦予他們, 很多時候都沒有使用者參與的空間,稀裡糊塗就把權力賦予給了一些沒有被充分監督和充分披露的個體。考慮到過去頻繁出現的預言機餵價操縱攻擊,這個問題其實比較嚴肅。 不被監督、沒有被許可的權力往往是不可信的。
但凡涉及到公共資產管理權,其實需要充分監督,需要充分披露,但目前沒有充分監管各種智慧合約專案的機制。
歸根結底我認為, Permissionless 只應該針對私權,不應該針對公權,Permissionless 的合約部署及採用,授予了許多個體以沒有被充分監督的權力,這連鎖反應產生了一系列問題。 Multichain 跨鏈橋的例子或許是更直觀的。
EOS 相關的治理權分配思路和來源其實比較明晰,但 Defi 協議等智慧合約專案的權力分配來源不明晰,甚至消失了;如果像 EOS 那樣搞明確的公開治理,把公權力進行明晰合理的分配,又會使得專案本身開發難度變大,變得很重。這是個難點。
所以,只要涉及公共資產的管理權,就涉及權力邊界的問題,比如德國人的事情不可能讓法國人去管理。引入智慧合約使得以太坊實際管轄了公共資產,不再是比特幣那樣單純管轄私有財產,這引申出了一系列極其複雜和模糊、不好解決的問題。
5 . Cynic:EOS 提出獨特的資源模型,模仿電腦分配網路頻寬 NET、算力 CPU、記憶體 RAM 等資源。您認為這個設計對 EOS 有何影響?
響馬:BTC、以太坊所使用的銀行帳本式的模型,執行機制相對簡單,更受歡迎,同時也會面臨 狀態膨脹(狀態爆炸) 問題。而在 EOS 的設計裡,佔用儲存空間的話,會持續消耗資源(類似於 gas),這種設計能夠避免狀態膨脹, 模擬電腦資源收費的設計讓它更貼近雲服務的體驗。
儘管資源模型可能對服務提供者而言更合理,但複雜的設計超出了大多數使用者的理解能力,不容易被接受。 使用者並不關心底層技術,他們想要的往往是簡單、得心應手的產品,而不必是最完美的。
6.Cynic:EOS 計劃改用 HotStuff 共識,您認為這個改動的目的是什麼?(注:Hotsuff 是 PBFT 的一種流水線式實現,每個區塊完成一輪 2/3 比例的出塊節點確認,再出下一個塊)
響馬: EOS 之前的設計不追求交易的即時確定性,需要 3 分鐘時間才能完成交易的最終確定 Finalize (注:EOS 為了加速出塊 + 降低節點間資訊傳遞的複雜度,新區塊不必等 2/3 的人確認完,就可以出下一個塊;接收者也不會立刻廣播自己的確認結果。這些延長了區塊的最終確認時間。一個新區塊產生後,要再過 355 個區塊才被敲定)。
EOS 修改共識演算法是為了改善交易確定性,這項改動對整個專案的影響有限,因為基本架構是不變的,對出塊沒有產生本質影響,還是原先 DPOS 的大致流程。只是利用 HotStuff 以更快達成共識,可以看作在 DPOS 基礎上擴充套件了交易確定性 Finality 的相關功能。
7.Cynic:能為我們介紹一下您目前進行的與 EOS 相關的技術工作嗎?
響馬:我們在 EOS 上實現了 EVM 智慧合約,修改了跨鏈功能。 EOS 官方的 EVM 實現,是在 WASM 虛擬機器上實現 EVM,除了速度慢,還無法複用原先的基礎設施。
EOS 的 RPC(遠端過程呼叫)設計也存在缺陷,寫 RPC 是通過封裝,將以太坊交易提交到 EOS 上;讀 RPC 為了實現方便,直接將 EOS.evm 的資料同步到一個獨立的以太坊節點上,架構過於複雜,基本沒有多少人能夠提供 API 服務,只有專案方自己在支援。
我們的 EVM 是原生實現的,節點可以直接呼叫 EOS 資產,並且相容 web3.js, ethers.js 等開發工具,使用體驗接近以太坊。 我們修改後的專案會逐步開源。
8.Cynic:您也算是經歷過一套主流敘事從萌芽到爆發再到歸於沉寂的全過程,從您的角度出發,整個行業的未來將何去何從?
響馬:我一直說 web3.0 和 web3 不是一個東西, web3.0 是下一代網際網路想要解決的一些問題的總和, web3 是一群人希望能夠用區塊鏈解決所有網際網路出現問題的一種嘗試。
但是網際網路現在真正遇到的問題,其實是一個原有的舊網際網路的信任機制的問題。因為在原有的網際網路中,大家不能夠擺脫對中央伺服器的信任假設,導致所有的使用者被被中央機構綁架。
我們有沒有辦法去把網際網路重新變成一個去信任化的分散式的網路?這才是關鍵,而不是說我們重新信任一個由去中心化技術形成的中心化網路。 以太坊現在其實是通過去中心化技術形成的一個中心化的信任中心。
IPFS 也是個同樣的例子,以前我們說資料存在中央機構,我們的資料被綁架,為瞭解決這個問題,我們要把資料儲存變得去中心化。但我們現在看 IPFS 並不是一個去中化儲存,它只是一個用去中化技術形成的中心化儲存,它還是服務, 只要是服務它就是中心化的。
我們需要回歸網際網路的本質,而不是信任新的(通過去中心化技術構建的)中心化網路。 DID + 可驗證憑證也許是一個未來方向,它可以連線分散的網路,無需信任與邊界。
DID 本身它並不是一個身份,而是身份協議。 在 DID 中並沒有存在一個大家都必須認可的機制,我自己生成一個公鑰,那 DID 就已經有了,並不需要別人的認可。我們怎麼樣去用 DID 去解決實際問題,通過可驗證憑證。
一個最重要的一個突破點,就是它不再是兩個機構之間進行資料共享,而是由資訊主體來主導資訊共享。這時你會發現,雖然它沒有共識,沒有所謂的去中心化的概念,沒有區塊鏈,但是你會發現它很去中心化,中間只有三個人參與:資訊的控製者、資訊的接收方和資訊主體。
我們最初設計這套協議的時候,也是有鏈的。後來我們反複的被問到:鏈是誰建的?你說誰建這條鏈是能夠被大家都認可? 只要有鏈就有共識,有共識就有邊界,有邊界,就無法做到互通。 我們要做的就是一個沒有邊界的,沒有信任的協議,這才是下一代網際網路的屬性。
📍相關報導📍
JPEX公佈JP-Chain公鏈細則:正式邁向Web3.0、廣邀大眾成為JP節點