Multicoin創始人:細數模塊化區塊鏈的七大隱性成本

作者:Kyle Samani,Multicoin Capital 創始人;翻譯:金色財經xiaozou

在過去兩年裡,關於擴展的爭論範圍逐漸縮小,最後集中在模塊化與集成的核心問題上。

(請注意,加密領域用語經常將“單體”和“集成”系統混為一談。在過去的40年裡,堆棧各層的集成系統和模塊化系統都存在很多技術爭論。加密領域裡的這種對話也應該通過同樣的視角來構建;這絕非一場全新的爭論)。

在考慮模塊化與集成時,一個鏈可以做出的最重要的設計決策就是讓應用程序開發人員承擔多大的複雜性。區塊鏈的客戶是應用程序開發人員,因此設計決策最終應該考慮到他們的需求。

如今,模塊化在很大程度上被譽為區塊鏈擴展的主要方式。本文,我將從第一性原理出髮質疑該假設,揭示模塊化系統的隱性成本,並分享我過去六年來對這一爭論的思考和結論。

1、模塊化系統增加了開發人員複雜性

到目前為止,模塊化系統最大的隱性成本是開發人員面臨的複雜性。

模塊化系統大大增加了應用程序開發人員必須管理的複雜性,無論是他們自己的應用程序(技術複雜性),還是與其他應用程序和狀態塊的交互(社會復雜性)。

在加密系統的背景下,我們今天看到的模塊化區塊鏈在理論上支持更大的專業化程度,但代價卻是產生新的複雜性。這種複雜性——本質上是技術上和社會上的——正在向上傳遞給應用程序開發人員,最終使開發建設變得更加困難。

例如,拿OP Stack來說,它似乎是2023年8月領先的模塊化框架。 OP Stack迫使開發人員選入Law of chains(正如其名稱所暗示的那樣,它帶來了很多社會復雜性),或者是獨立分叉並管理OP Stack。這兩種選擇都給builder帶來了大量的下游複雜性。如果你選擇分叉走自己的路線,你是否會從其他生態系統參與者(CEX、法幣入金等)那裡獲得技術支持?如果你選入Law of Chains,你在今天,甚至更重要的是,在明天給自己設置了什麼樣的規則和約束?

(圖片來源:OSI模型)

Modern操作系統(OSes)是由數百個子系統組成的大型複雜系統。 Modern OSes處理上圖中的2-6層。這是集成模塊化組件以管理堆棧帶給應用程序開發人員複雜性的典型示例。應用程序開發人員不想處理第7層以下的任何東西,這正是OSes存在的原因:OSes管理下面各層的複雜性,這樣應用程序開發人員就不必這樣做了。因此,模塊化本身不應該是目的,而應該是達到目的的一種手段。

當今世界上每一個主要的軟件系統——雲後端、OSes、數據庫引擎、遊戲引擎等——都是高度集成的,同時由許多模塊化子系統組成。軟件系統傾向於長期集成,以最大化性能並最小化開發人員面臨的複雜性。區塊鏈也不會有什麼不同。

(順便說一句,以太坊的主要突破是降低了2011-2014年比特幣分叉時代出現的複雜性。模塊化支持者經常強調開放系統互聯(OSI)模型,認為數據可用性(DA)和執行應該分離;然而,這一觀點被廣泛誤解。對手頭問題有正確的優先項理解會導致相反的結論:使用OSI作為類比是集成系統而非模塊化系統的論據。)

2、模塊化鏈不能更快地執行代碼

根據設計,“模塊化鏈”的通用定義是數據可用性(DA)和執行相分離:一組節點執行DA,而另一組(或多組)執行執行。節點集之間不必有任何重疊,但它們可以重疊。

在實踐中,分離DA和執行並不能從本質上提高兩者的性能;最終,世界上某個地方的某些硬件必須執行DA,某個地方的某些硬件必須執行執行。分離這些功能不會提高任何一方的性能。然而,分離可以降低計算成本,但只能通過中心化執行來實現。

同樣,值得重申的是:無論是模塊化還是集成架構,某處的某些硬件必須完成工作,並且將DA和執行推送到單獨的硬件上,本質上既不會讓系統提速也不會增加系統的整體性能。

一些人認為,模塊化允許大量EVM以rollup方式並行運行,從而使執行能夠水平擴展。雖然這在理論上是正確的,但這個說法實際上強調了EVM作為單線程處理器而非在擴展總系統吞吐量的情況下解決DA和執行的基本前提。

模塊化本身並不能提高吞吐量。

3、模塊化增加了用戶交易成本

根據定義,每個L1和L2都是具有自己狀態的不同資產賬本。這些獨立的狀態塊可以通信,儘管延遲更嚴重,開發人員和用戶複雜性也更大。 (即,通過橋接,如LayerZero和Wormhole)。

資產賬本越多,所有賬戶碎片的全局狀態就越多。這對鍊和各端用戶來說絕對是非常可怕的。狀態碎片化將導致:

(1)流動性減少,因此對投資者來說價差更高。

(2)gas總消耗更多(因為根據定義,跨鏈交易需要在至少兩個資產賬本上至少進行兩次交易)。

(3)更多跨資產賬本的重複計算(從而降低系統總吞吐量):當ETH-USDC的價格在Binance或Coinbase上波動時,所有資產分賬本的每個ETH-USDC池都有套利機會。 (你可以很容易地想像這樣一個世界:每當ETH-USDC價格在Binance或Coinbase上波動時,各種資產賬本上就會有10多個交易。由於狀態的碎片化,保持價格一致是對區塊空間的一種極其低效的使用。)

重要的是要認識到,創建更多的資產賬本明確地增加了所有這些維度的成本,特別是與DeFi相關的成本。

DeFi的主要輸入是鏈上狀態(即誰擁有哪些資產)。當團隊啟動應用鏈/rollup時,他們自然會分裂狀態,這對DeFi非常不利,在管理應用程序開發人員複雜性(橋接、錢包、延遲、跨鏈MEV等)和用戶複雜性(更大範圍價差、更長的結算時間)方面都如此。

當資產在單個資產賬本上發布並且交易在單個狀態機內發生時,DeFi表現最佳。資產賬本越多,應用程序開發人員必須管理的複雜性就越高,用戶要承擔的成本也就越多。

4、App rollup不能為開發人員創造新的盈利機會

App鏈/rollup的支持者認為,激勵機制將引導應用開發人員構建rollup,這樣他們就可以為自己的代幣捕獲MEV。然而,這種想法是有問題的,因為運行app rollup並不是將MEV捕獲回應用層代幣的唯一方法,而且在大多數情況下,這不是最佳方法。應用層代幣可以簡單地通過在通用鏈上的智能合約中進行邏輯編碼,將MEV捕獲回自己的代幣。讓我們來看幾個例子:

(1)清算——如果Compound或Aave DAO想要獲取清算機器人的部分MEV,他們可以更新各自的合約,支付當前清算人路由到DAO的費用的一定百分比。不需要新鏈/rollup。

(2)Oracle——Oracle代幣可以通過提供BRaaS來捕獲MEV。除了價格更新之外,oracle還可以綁定任何保證在價格更新後立即運行的鏈上交易。因此,oracle可以通過向搜尋者、區塊構建者等提供BRaaS來獲取MEV。

(3)NFT鑄造——NFT鑄造充斥著惡意機器人。這可以簡單地通過一個逐漸降低的利潤再分配編碼來緩解。例如,如果有人試圖在NFT鑄造的兩週內轉售他們的NFT,那麼100%的收入可以被重新捕獲回NFT創建者或DAO。這個比例會隨時間變化而變化。

對於將MEV捕獲到應用層代幣,沒有通用答案。然而,只要稍加思考,應用程序開發人員就可以輕鬆地將MEV捕獲回通用鏈上自己的代幣中。啟動一個全新的鍊是完全沒有必要的,這會給開發人員帶來額外的技術和社會復雜性,並給用戶帶來更多的錢包和流動性挑戰。

5、App rollup不能解決應用間擁塞問題

許多人認為,app鏈/ rollup可以確保特定應用不受其他鏈上活動(如流行的NFT鑄造)造成的gas峰值的影響。這種觀點一部分是正確的,但大部分是錯誤的。

這個問題之所以一直存在,主要是因為EVM的單線程特性,而不是因為DA和執行沒有分離。所有的L2都向L1支付費用,L1的費用可以隨時增加。在今年早些時候的meme幣熱潮中,Arbitrum和Optimism上的交易費超過了10美元。最近,在Worldcoin發布後,Optimism的費用飆升。

解決費用飆升的唯一方法是:既要最大化L1 DA,又要使費用市場盡可能細化:

如果L1的資源受到限制,那麼各個L2的使用高峰將會影響到L1,這將給所有其他L2帶來更高的成本。因此,app鏈/rollup也不能倖免於gas費飆升。

許多EVM L2的共存只是試圖將費用市場本地化的一種原始方式。它比將所有內容放在單個EVM L1中要好,但不能從第一性原理出發解決核心問題。當你認識到解決方案是將費用市場本地化時,邏輯端點是各狀態塊的費用市場(而不是各L2的費用市場)。

其他鏈已經得出了這個結論。 Solana和Aptos都自然而然地將收費市場本地化。這需要多年來對各自的執行環境進行大量的工程工作。大多數模塊化的支持者嚴重低估了解決工程難題的重要性和難度,這些問題使超級本地收費市場成為可能。

通過啟動許多資產賬本,開發人員自然會增加技術和社會復雜性,而不會釋放真正的性能收益,即使在其他應用推動交易量增加的時候亦如此。

6、靈活性被高估

模塊化鏈的支持者認為模塊化架構更加靈活。這種說法顯然是正確的。但目前還不清楚這是否是重要的。

六年來,我一直在努力尋找這樣的應用程序開發人員,他們所需的靈活性是有重大意義的,是通用L1無法提供的。但到目前為止,除了三個非常具體的用例之外,還沒有一個清晰的表述可以說明靈活性為什麼重要,也沒有說明它如何可以直接幫助擴展。我發現的關於靈活性很重要的三個具體用例如下:

(1)利用“熱”狀態的應用程序。熱狀態是一些操作的實時協調所必需的狀態,但最終不會在鏈上永久提交。下面是熱狀態的幾個例子:

— DEX(如dYdX和Sei)中的限價訂單(許多限價訂單最終被取消)。

— 實時協調以及dFlow的訂單流交付識別(dFlow是一種協議,用於促進做市商和錢包之間的去中心化訂單流市場)。

— Pyth之類的oracle(一個低延遲的oracle)。 Pyth是一個獨立的SVM鏈。 Pyth產生瞭如此多的數據,以至於核心Pyth團隊決定最好將高頻價格更新發送到一個獨立的鏈,然後根據需要使用Wormhole將價格橋接到其他鏈。

(2)更改共識的鏈。這方面最好的例子是Osmosis(其中所有交易在發送給驗證者之前都是加密的)和Thorchain(根據所付費用對區塊內的交易進行優先級排序)。

(3)需要以某種方式利用閾值簽名方案(TSS)的基礎設施。這方面的例子有Sommelier、Thorchain、Osmosis、Wormhole和Web3Auth。

除了Pyth和Wormhole之外,上面列出的所有示例都是使用Cosmos SDK構建的,並且作為獨立鏈運行。這充分說明了Cosmos SDK在所有三個用例中的質量和可擴展性:熱狀態、共識修改和閾值簽名方案(TSS)系統。

然而,上述三部分中的大多數項目都不是app,而是基礎設施。

Pyth和dFlow不是app,它們是基礎設施。 Sommelier(鏈條,而不是收益優化前端)、Wormhole、Sei和Web3Auth都不是app,它們是基礎設施。而那些面向用戶的app都是一種特定類型:DEX(dYdX、Osmosis、Thorchain)。

六年來,我一直在詢問Cosmos和Polkadot的支持者,他們提供的靈活性釋放了哪些用例。我認為有足夠的數據可以做出如下推斷:

首先,基礎設施示例不應該以rollup的形式存在,因為它們要么產生太多的低價值數據(例如,熱狀態,熱狀態的重點是數據沒有提交回L1),要么因為它們執行一些有意與資產分賬本上的狀態更新垂直的功能(例如,所有TSS用例)。

其次,我所看到的唯一一種能夠有效改變核心系統設計的應用便是DEX。這是有道理的,因為DEX充斥著MEV,而且從定義上講,通用鏈無法匹配CEX的延遲。共識是交易執行質量和MEV的基礎,因此基於對共識的改變,DEX自然就有很多創新機會。然而,正如本文前面所指出的,現貨DEX的主要輸入是正在交易的資產。 DEX之間會競爭資產,因此也競爭資產發行人。在這種框架下,獨立的DEX鏈不太可能獲取成功,因為資產發行人在發行資產時考慮的主要變量不是DEX相關的MEV,而是通用智能合約功能以及將該功能納入應用程序開發人員各自的app中。

然而,這種DEX競爭資產發行人的框架與衍生品DEX無關,衍生品DEX主要依賴於USDC抵押品和oracle餵價源,並且本質上必須鎖定用戶資產以擔保衍生品頭寸。因此,在某種程度上,獨立的DEX鍊是有意義的,它們最有可能適用於以衍生品為重心的DEX,如dYdX和Sei。

相反,讓我們來考慮一下目前存在的跨通用集成L1的app。例如:遊戲、Audius、DeSoc系統(如Farcaster和Lens)、DePIN協議(如Helium、Hivemapper、Render Network、DIMO和Daylight)、聲音、NFT交易等。這些都沒有特別受益於共識更改帶來的靈活性,它們各自的資產賬本都有相當簡單、明顯的共同需求:低費用、低延遲、訪問現貨DEX、獲取穩定幣以及法幣入金渠道(如CEX) 。

我相信我們現在有足夠的數據可以在一定程度上自信地說,絕大多數面向用戶的應用程序都具有與上述相同的需求。雖然一些應用程序可以通過自定義對其他變量進行優化,但是這些自定義經利弊權衡通常是不值得的(更多的橋接、更少的錢包支持、更少的索引/查詢提供商支持等)。

啟動新的資產賬本是實現靈活性的一種方式,但它卻很少增加價值,而且幾乎總是為應用程序開發人員創造技術和社會復雜性的同時獲得的收益卻微乎其微。

7、擴展DA不需要再質押

你還會聽到模塊化支持者探討在擴展背景下的再質押。這是模塊化鏈支持者提出的最值得商榷的論點,但值得關注。

它大致指出,由於再質押(例如,通過像EigenLayer這樣的系統),加密生態系統作為一個整體可以無限次地再質押ETH,為無限數量的DA層(例如,EigenDA)和執行層提供支持。因此,在確保ETH增值的同時,可擴展性在各個方面都得到了解決。

儘管在現狀和理論上的未來之間還存在大量的不確定性,但我們可以理所當然地認為所有分層假設都像宣傳的那樣。

目前以太坊的DA約為83 KB/s。在今年晚些時候發布EIP 4844後,將翻一番,約為166 KB/s。 EigenDA雖然採用了不同的安全假設(並非所有ETH都將再質押回EigenDA),但其增加了額外的10MB/s。

相比之下,Solana今天提供的DA約為125 MB/s(每區塊32,000個分片,每分片1,280個字節,每秒2.5個區塊)。 Solana比以太坊和EigenDA效率高得多,因為其Turbine區塊傳播協議,該協議已經問世3年了。此外,Solana的DA採用尼爾森定律(Nielsen’s Law)將隨時間的推移而擴展(與摩爾定律不同,其在十年前就因單線程計算而過時了)。

有很多方法可以通過再質押和模塊化來擴展DA,但是這些機制在今天是完全沒必要的,而且會帶來很大的技術和社會復雜性。

8、為應用程序開發人員而建設

經過多年思考,我得出的結論是:模塊化本身不應該是一個目標。

區塊鏈必須服務於區塊鏈用戶——也就是應用程序開發人員——因此,區塊鏈應該在基礎設施級別抽離出複雜性,以便企業家可以專注於開發建設世界一流的應用程序。

模塊化構建塊很棒。但是,構建成功技術的關鍵是弄清楚要整合堆棧中的哪些部分,以及將哪些部分留給其他人。就目前而言,集成DA和執行的鏈本質上提供了更簡便的終端用戶和開發者體驗,最終將為一流的應用程序打下更好的基礎。

Total
0
Shares
Related Posts