作者:Todd
原文: 《A&T View:模塊化之後--關於區塊鏈底層優化路徑的探尋》
01 前言
這兩週花了不少時間來弄明白新公鏈&新L2的創新點,並嘗試從中尋找模塊化之後,下一個公鏈底層創新可能出現的地方,就有了“拆分&優化&重組”——是我從所有這些創新中提煉出的第一性原則,更是我認為會長期指引區塊鏈不斷優化的第一性原則。
►TL,DR;
近期的創新(Danksharding,Aptos&Sui,Altlayer),抽象來看都在走“先拆分,再進化的路線” 的路線,這與模塊化區塊鏈的初始理念一致,但又走的更遠>> > 這樣的理念會持續指引區塊鏈優化的方向
將不同項目創新項目的創新點進行抽離和重組,可以獲得更好的效果:將並行計算引入模塊化區塊鏈框架
即便給整個框架帶來了大量的複雜性,但我們仍應該繼續“拆分&優化” ,區塊鏈還未到“做減法”的時候
02 正文
1►什麼是細分&優化&重組
這個理念源於“模塊化區塊鏈”,
但與當前主流的模塊化定義存在一定的不同:
-模塊化理念意味著將區塊鏈三大塊“存儲,計算,共識” 中至少一塊拆分成相對獨立運行的結構,eg Celestia將存儲層拆分,並提供通用的存儲層以支持更高的效率&更多的自主性;
-拆分&優化&重組,代表著在三大塊中任意單一塊中,按照優化需求做進一步“拆分”,並最終重組成一個更高可能性的區塊鏈,eg 在計算層,將所有交易按照分類來獨立執行。
這個理念其實很好理解:讓每一個結構可以執行盡可能簡單的計算,以獲得單個結構最大的效率提升。
2►基礎層創新中的“拆分&優化”
以太坊——Danksharding
在以太坊基金會研發團隊第八次AMA中,Justin明確表示“以太坊正在變得越來越模塊化”(Ethereum is becoming increasingly modular)
Justin在Reddit中回复的截屏
但你應該也注意到了,Justin口中的“模塊化” 是超出了當前市場上大量被討論的“模塊化區塊鏈” 概念的:
-第四點“Proposer Versus Builder” 提出將交易排序與最終出塊進行拆分,以獲取抗MEV的特性>>> 此設計並沒有在Danksharding之外的項目中看到;
-第五點“Prover Versus Verifier” 提出將部分非關鍵性共識驗證邏輯從關鍵性共識SNARK驗證邏輯中剝離,並以此開發出兩套客戶端,以獲取更好的網絡效能>>> 針對Prover和Verifier提供兩套客戶端的設計也並未在Danksharding之外的項目中看到,但這樣的設計是其他項目能夠快速參考& 上手的理念。
以上這兩點均完美契合了“拆分&優化”的定義。
Aptos & Sui
並行計算是Aptos和Sui 擴容方案中的核心理念。
其實,並行計算是一種已經在Web2中被大量驗證過的擴容理念,但其中的前置條件限制了這種理念在當前主流區塊鏈:兩兩之間存在相關性&衝突性的交易無法直接進行並行計算,eg 當兩個用戶與Uniswap中的同一個交易對進行交互,A用戶交易執行後會改變B用戶面對的資產兌價,那麼先執行A還是先執行B對結果是存在衝突的。
Aptos & Sui 通過一系列的分類處理來解決了這樣的限制:
- Software Transactional Memory (STM)與optimistic concurrency control (OCC)的組合,是一種對內存訪問進行檢測並管理衝突的方法(從鏈上對交易的記錄最終會修改數據庫的視角):先樂觀的讓並行的多個線程獨立完成對共享數據庫的修改,完全忽略可能會有其它的線程存在,如果不涉及沖突,則可以輕鬆的處理超大量的內存修改;如果涉及沖突,則會對單個交易進行回滾,並待衝突交易更新完畢後再執行。
這種分類處理的概念從某種意義上也完全符合“拆分&優化” 的理念:
-將共識層和執行層進一步細分,按照交易的類別來對整個P2P網絡中的所有進行分類處理,讓每一個結構可以獨立完成對共享數據庫的修改,這樣盡可能優化了單個結構的執行要求。
Altlayer
Altlayer是一個可插拔的&按需加載的L2&L3框架,主要針對應用階段性的高擴展性需求。
如果你一定要問我Altlayer和其他主流L2的區別,我大概會說:Altlayer是套彈性的擴容方案,而其他主流L2都是非彈性的。
以下的這種場景將最大化彈性擴容的價值:
-大量的NFT項目會在其Mint活動期間爆發出超高量的交易,但長期中並不會持續有對高TPS的要求>>> 彈性擴容方案可以滿足NFT項目Mint期間的網絡需求,且長期不會給NFT項目帶來持續性負擔。
- Altlayer的核心理念也完美契合“拆分&優化”的理念:
-彈性擴容本質上是將用戶的需求進行細分,針對階段性&突發性需求,提供了更加優化的方案--彈性擴容其實在傳統雲服務中是一種非常常見的解決方案。
簡單的歸納一下:
在以太坊誕生至今的數年裡,關於最優的區塊鏈的大體框架結構其實已經越來越清晰,但我們仍需要將區塊鏈底層再次優化以適應大規模應用的需求,那優化的方向是?
-方向之一:將區塊鏈這個整體進行細分,並對細分結構進行極致的優化;
-方向之二:新一代的技術替代,eg 零知識證明,10x的網絡帶寬,10x的固態硬盤空間(如果你一定要我“細分&優化”之外,還有什麼方向的話)
3►請注意:通過細分&優化的單個結構,重組的方案也可以創新,且最終效果可能遠超原計劃
下一代以太坊殺手?最近社群裡其實有很多關於下一代以太坊殺手的討論:Move匪幫Aptos & Sui VS 模塊化標杆Celestia
個人認為:不是上述的任何一個,但會包含上述方案中的創新點。
-大體四層框架: Celestia& Danksharding已經展示了將Monolithic Blockchain拆分成四層再優化的價值(拆分成更多層當然是可以的,但這里為了方便大家理解,就拆成四層)
-存儲--Celestia:從節點規模層面來看,Celestia可以是目前最安全的獨立DA層;
-交易排序共識--Celestia:通過引入DAS(Data Availability Sampling),Celestia能夠提供高效的對交易順序的共識;此外,將交易進行分類後的並行計算,也同樣能加速此結構。
-狀態共識--類Aptos&Sui共識:並行計算在理論上擁有極高的處理效能,是當前此層的最效率選項;此外,引入ZK技術,可進一步優化(已出現ZKmove 的討論)
-執行:作為相對獨立的一層,現有很多方案已經極大的釋放了開發者的可能性;而彈性擴容可作為一個補充以應對各類突發需求。
上述“以太坊殺手”VS以太坊(Danksharding)
以太坊是更安全的選項,但在可擴展性&自定義能力上並不佔優--個人觀點(可能會update :D)
Aptos&Sui的共識涉及到了區塊鏈狀態共識部分,意味著該共識天生就和以太坊現有框架無法集成>>> 以太坊目前還無法集成這類並行計算的創新,至少在短期不太行。
4►基礎層創新中的“拆分&優化”
從Vitalik在EthCC打趣“Shall we cancel sharding” ,再到@Polynya的《4844 and Done》,市場上有許多關於“減緩鏈創新以降低區塊鏈複雜度” 的討論。
個人偏向於“還沒到簡化的階段” :如果我們回看雲服務行業的發展歷程,在前半段的數年裡,雲服務變得越來越有用的同時也是在變得複雜。直到近幾年,我們才看到越來越多的簡化措施,eg Serverless, IAC
-新興技術的發展大概都是你這樣的三部曲:“尋找&確定一套通用且最具價值的大框架” >>“提升能力範圍,也變得複雜” >> “簡化以獲得更好的使用體驗和更低的成本”
-簡化的前提是東西已經足夠好用,而當前的區塊鏈底層基礎很明顯尚未達到“足夠好用” 的級別。我們仍在上半場
我十分堅信:我們能在漫長的熊市中看到更多的“細分&優化” !屆時,再回來做更新!