區塊鏈設計演變之路

擴展性難題

擴展性三難困境,描述了擴展性,去中心化和安全性之間的不可能三角問題,這也是Vitalik Buterin 最先提出的問題,這的確對於目前市面上以BSC和Solana為代表的單片鍊是個未解決的困境,然而這個困境可以嘗試通過一些新技術或者新的假設解決,這就是我們需要了解的模組化區塊鏈。

單片鏈的問題

以Solana,BSC, 第一代Polygon為代表的單片鏈,通過犧牲去中心化,從而實現高吞吐量,提升效率,本質上都是通過提高硬件(資源)要求,網絡帶寬使用,提升驗證節點的門檻,從而實現網絡的擴展。儘管這個解決方案短期能佔據一定市場份額,長期來看仍然是存在很多弊端的。 Polygon所以目前開發了Polygon Avail, 試圖尋找一種更長遠的解決方案。 Solana,通過引入Proof of Histroy共識機制,實現時間戳的本地化,無需再通過廣播實現全網的更新,同時通過優化執行環境,可以並行處理多筆交易,而在EVM環境中,同時只能處理一筆交易。

本質上,這些單片鏈都是受限於單節點的處理能力,單片鏈的擴容目前僅能通過將治理限制於少數節點而實現,而模塊化區塊鏈則通過將所有的任務分發給不同的節點,從而提升網絡效率。

去中心化是模組化區塊鏈的一個核心特點,還有一個非常重要的特點是有效資源定價。在單片鏈上,所有的交易共享同樣的區塊空間,消費同樣的網絡資源,所以當一個應用上的用戶/使用需求增多會給網絡上其他所有的應用帶來負擔,網絡上的燃料費也會飆升,以太坊就是一個非常好的例子。

最後,我們看到單片鏈並不適用於所用不同特性的應用,例如Solana的低延遲性能只適用於像Serum這樣的DEX,而維持這樣的低性能,需要限制狀態的增長,這往往需要向每個賬戶收取一筆狀態租金。而這個對於像Kin這種強依賴賬戶數的應用是非常不友好的。同樣,以太坊的,擁堵,高燃料費用讓本身就擁有高交易,交互頻率特性的遊戲應用望而卻步,紛紛搭建自己的Layer2或者選擇在Solana,Avalanche這樣的低交易手續費網絡上部署。

儘管這些單片鏈的可組合性,可擴展性有一定的應用場景,但是我們仍需要探索更多的設計方案,更有效的資源定價,從而實現大規模採用,模塊化區塊鏈應運而生。

區塊鏈的演變- 模塊化區塊鏈

單片鏈的可組合性實現了不同應用間的無摩擦交互,而模塊化區塊鏈則是強調將整個系統拆分為不同模塊並且可以隨意剝離和重新組裝的基礎設施。模塊化區塊鏈的代表有以太坊2.0分片,Cosmos 樞紐, Polkadot平行鏈,Avalanche子網, Rollups等。而這些不同的設計主要還是圍繞不同的安全解決方案的。像以Avalanche,Cosmos,Algorand這種主打多鏈樞紐的設計更適合獨立自主安全性(Cosmos今年準備上線三個版本的共享安全)的產品,而以太坊2.0, Polkadot, Near, Celestia則更強調共享安全的重要性。

多鏈的網絡樞紐

模塊化最簡單的設計就是互操作性樞紐。這些樞紐上可以搭建應用鏈,而這些應用鏈可以自主選擇虛擬機,節點要求,費率模型和治理,這個可實現的靈活度和單片鏈上的應用有本質差別。 Cosmos是這個領域的前輩,應用百花齊放,就單單Terra鏈的鎖倉量已經排到全網前三的位置,其發行的穩定幣UST的市值已經達到了180億美金,排名前十,而其設計的獨有費率模型和通脹機制是成功的關鍵。

跨鏈去中心化流動性協議Osmosis,處理著IBC網絡上接近90%的交易,而Osmosis本身也有自己的設計特點,其上線的superfulid staking 第一次讓流動性提供者在享受交易費,流動性激勵計劃的同時,還能參與到節點的安全維護和治理中。同時,它們還計劃通過自主研發的閾值加密技術實現交易的加密,避免MEV這類的攻擊。

Algorand和Avalanche則更傾向於企業級別用戶解決方案,例如為遊戲公司搭建遊戲網絡,為政府機構搭建CBDC等,可以通過Beefier Machine的技術,在不影響其他網絡的去中心化程度的情況下,實現這些網絡的擴展。

Avalanche通過資源有效利用,提升網絡的吞吐量。 Avalanche的C-Chain設計僅僅適用於EVM兼容智能合約,同時只能處理單筆交易,而對於某些例如點對點支付等特定場景的應用,Avalanche則通過X-Chain來實現多筆交易並行處理的任務。 P-chain則是專門用來提供治理和質押等解決方案的。

同時,我們看到Avalanche, Algorand通過子樣本投票,任意領導選舉等核心技術的創新,讓節點可以任意選擇代表進行投票和治理,大大降低了共識溝通的門檻。

當然,這種解決方案也存在一些問題,一個核心的問題這類型的鏈目前僅僅適用於獨立自主安全區塊鏈的部署,而無法真正實現共享安全。有很多人會說,Cosmos不是即將上線共享安全模塊嗎? Avalanche不是默認通過網絡節點驗證其上部署的多鏈嗎?它們都對驗證節點提了很高的要求,大大提升了可接入鏈的門檻,所以實現的可擴展性也非常有限。目前我們知道要實現安全的跨鏈互通,我們需要可信第三方或者同步假設。在不同樞紐之間,可信的第三方在多數誠實的假設下,可以理解為對方鏈的大部分節點。目前IBC上接入的鏈數量還非常有限,(43條),如果未來實現大規模應用(大量長尾鏈接入),如果我們還是通過信任多數節點誠實,從而實現溝通或者共享安全性,這會造成很大的問題,所以我們在多數誠實假設之外,引入了能夠提供更高安全保障的Rollups和分片技術。

數據可見

數據可見性問題我們之前多次強調了,這已經成為了模組化區塊鏈的核心技術。所以目前可擴展性問題都演變為解決數據可見性問題。在區塊鍊網絡裡,全節點負責下載和執行交易,而輕節點通過下載區塊頭,驗證交易的可行性,區塊鏈頭包含了大部分節點驗證的區塊數據。全節點可以輕鬆偵察並且拒絕一些無效交易,而輕節點認定大部分節點認證的交易為有效交易(多數誠實節點假設)。所以為了提升效率,我們需要全節點通過向輕節點發送有效性證明/欺詐證明,從而保護輕節點。這樣輕節點可以在不消耗過多資源的情況下,達到和全節點同樣的安全性。但是為了生成欺詐證明,全節點必須確保所有的數據都是可見的,如果惡意驗證者發布了區塊頭,但是保留了一部分的交易數據,全節點無法判斷缺失的交易是否有效或者是否會導致雙花問題,所以無法生成相關證明。所以每個輕節點可以通過數據採樣過程(DAS 我們也介紹過,Celestia也利用了這個技術),在無需下載全部交易數據的情況下,可以驗證交易的有效性。

所以這個數據可見性問題,在多數誠實假設之外,提供了非常好的跨鏈互通,擴展性解決方案。而Rollup 通過共享數據,實現了與以太坊之間的信任最小化溝通(Trust-minimized bridge)。

Rollups

Rollups 將數據傳送到以太坊上所有的L1節點,其中想要提供資源的L1節點可以執行交易並且從頭搭建Rollup的狀態。擁有了全部狀態的節點(全節點)可以將Rollup狀態過渡至下一個狀態,同時通過生產有效性/欺詐性證明,驗證交易的真實性。我們之前說過,要實現信任最小化溝通,必須有兩個條件1)數據可見性2)解釋雙方的有效性/欺詐證明,Rollups 通過解決數據可見的問題,能夠在單個誠實節點假設下,而不是多數誠實節點假設的基礎上運作。

Rollups 的設計有以下優勢:

  • 只要一個全節點就可以保護其他輕節點,在不會產生中心化問題的情況下,實現可擴展性
  • 儘管所有L1上的節點都可以下載Rollups的交易數據,但是只有部分可以執行交易並且創建狀態,因此減少了整體的資源需求
  • Rollups的數據在上傳至以太坊L1之前,通過先進的技術可以實現壓縮
  • 和應用特定鏈類似,Rollups可以通過定制化虛擬機提供特定場景的應用,從而實現更有效的資源利用

目前市面上有兩種Rollups, Optimistic rollups 和ZK-rollups, ZK-rollups 從可擴展性的角度上,要優於Optimistic Rollups, 它們通過更有效的壓縮方法,壓縮數據,從而在某些特定上實現了更低的L1日誌,例如Optimism將數據上傳至L1,從而顯示每筆交易,而dydx可以通過上傳,顯示每個賬戶餘額,因此,dydx的L1的日誌是Optimism的1/5,而卻可以處理超過10倍的吞吐量。

儘管Rollups通過先進的技術實現了數據的壓縮,但是數據還是需要上傳到L1,所以Rollups在減少有限費用的同時,實現的可擴展性也只是線性的,同時它們還會受到以太坊網絡上燃料費用波動的影響,所以為了實現可持續的擴展,我們有兩個探索方向1)以太坊實現區塊擴容,通過ETH2.0分片2)將數據上傳至Celestia,Celestia再將一攬子證明(簽名,默克爾根),而非數據本身傳送至以太坊。

以太坊分片和數據可見證明

分片技術再次用到了我們提到的數據可見證明。所有的節點不再需要下載每塊分片上的所有交易,而是每個節點只需要通過下載分片鏈上的部分數據,而通過這些部分數據樣本,我們可以恢復所有的數據區塊。這個在分片上實現了共享安全的可能性,因為任何一個分片上的節點都可以提出爭議,並且可以由任何節點按需解決。 Polkadot和Near都將數據可見證明運用到分片技術中,而這個數據可見證明也同時被運用到像ETH.20分片和Celestia這樣的新型模組化區塊鏈中。

那麼以太坊2.0的分片和其他分片有什麼不同呢?儘管以太坊剛開始想要做類似於Polkadot的執行分片,它改變了現有技術路線,專注於數據分片,這意味著以太坊上的分片僅僅將作為數據可用層,分片也將處理執行,而Polkadot將處理所有的執行,所以每個分片都有不同的狀態。

那麼僅僅作為數據可見層的分片有什麼優勢呢?在其上部署的Rollups可以更靈活地在不同分片上上傳數據,同時仍然保持完全的可組合性。因此Rollups的吞吐量和費率將不會受限於單個分片上的數據容量大小。例如64分片,可以將Rollus整體的吞吐量5000TPS提高到100,000TPS。而相反,不管Polkadot上的吞吐量有多高,Rollups的費率都會受到單條平行鏈的吞吐量限制。

特定性數據可見性區塊鏈

特定性數據可見層是模組化區塊鏈設計的最新形式,它們利用了數據可用證明,但是引導至不同的方向。這領域的項目包括Celestia,和最新的解決方案例如Polygon Avail (社區很多人說Polygon的方案很大一部分借鑒了Celestia)。

和以太坊的數據可見層類似, Celestia作為不同Rollups,鏈的底層,幫助它們實現共享安全(其實在我看來,Celestia也藉鑑了Rollups技術)。 Celestia 和以太坊2.0的解決方案有以下不同:

  1. 交易不在Celestia Layer1上執行,而是在Rollups的客戶端執行,所以在Celestia上搭建的Rollups可以理解為獨立自主區塊鏈。這個會讓Rollups不再受限於底層區塊鏈的設計和費率架構,當有一些例如代幣售賣,NFT空投,高收益挖礦機會的時候,整個網絡的費用會非常高(以太坊現狀)。所有Celestia上的Rollups享有相同的數據可用協議,而不會犧牲Celestia共識的安全優勢。所以即使是軟/硬分叉也可以在Celestia上展開,而無需擔心安全稀釋的問題,從而打開了更廣闊的創新領域。而且高效讓Rollups上的費用僅僅和該Rollups的使用情況有關(交易費和上傳數據大小相關),而不會受到整條鏈的擁堵情況影響。有效資源定價,剛提到以太坊的分片技術將會僅僅用於數據分片,而分片將負責執行交易,這通過提升以太坊的區塊容量,大大降低了Rollups的費率。然而,以太坊並沒有放棄其執行環境。所以對於Rollups上全節點來說,還是需要參與執行以太坊上的狀態認證,而以太坊方本身的巨大狀態給Rollups的節點帶來了巨大負擔,所以Rollups費用還是和費用正相關。而Celestia的區塊空間僅僅儲存了數據,而執行層在上面提到是在Rollups客戶端執行。由於活動受制於不同的費用市場,一個執行環境中的活動高峰不會影響另一個執行環境的用戶體驗。
  2. Celestia在利用數據可用證明的情況下,無需通過分片技術就可以實現高吞吐量,通過輕節點的獨特設計,當網絡上擁有越來越多參與數據樣本採集的輕節點(智能手機可以),更多的數據將會被存儲,區塊容量也會更大,網絡吞吐量也會越高。

綜上,我們看到了不同的區塊鏈設計原理,和安全性解決方案,我們認為目前來說多鏈樞紐的簡單設計,模塊化組件,更靈活的設計空間和水平擴展的能力解決了目前區塊鏈領域的一些核心問題,但最終,我們也相信,以特定數據可見層為代表的區塊鏈將會帶來更好的可擴展特性和更有效的資源利用。

聲明:本內容為作者獨立觀點,不代表0x财经 立場,且不構成投資建議,請謹慎對待,如需報導或加入交流群,請聯繫微信:VOICE-V。

來源: CFG Labs

Total
0
Shares
Related Posts