當(dāng)前位置:區(qū)塊鏈 >區(qū)塊鏈 > 1kx:區(qū)塊鏈擴容的終局是信任最小化和水平擴展

1kx:區(qū)塊鏈擴容的終局是信任最小化和水平擴展

更新時間:2024-01-11 16:11:40 | 作者:佚名
為了真正將區(qū)塊鏈擴展到地球上的每個角落,我們需要構(gòu)建信任最小化和水平可擴展的系統(tǒng)。 撰文:weidai.eth 編譯:Luffy,F(xiàn)oresightNews 以太坊是一種無需許可的世界計算機,在撰寫本文時,它擁有最高的經(jīng)濟安全性,并且充當(dāng)著大量資產(chǎn)、應(yīng)用程序和服務(wù)的結(jié)算賬本。以太坊也有其局限性:區(qū)塊空間是以太坊主網(wǎng)上稀缺且昂貴的資源。L2擴容被認為是這個...
為了真正將區(qū)塊鏈擴展到地球上的每個角落,我們需要構(gòu)建信任最小化和水平可擴展的系統(tǒng)。


撰文:weidai.eth

編譯:Luffy,F(xiàn)oresight News


以太坊是一種無需許可的世界計算機,在撰寫本文時,它擁有最高的經(jīng)濟安全性,并且充當(dāng)著大量資產(chǎn)、應(yīng)用程序和服務(wù)的結(jié)算賬本。以太坊也有其局限性:區(qū)塊空間是以太坊主網(wǎng)上稀缺且昂貴的資源。L2 擴容被認為是這個問題的最佳解決方案,近年來有大量項目進入這個領(lǐng)域,其中大多數(shù)是 Rollup。然而,從嚴格意義上的術(shù)語 Rollup(數(shù)據(jù)位于以太坊 L1 上),并不能實現(xiàn)以太坊的無限擴展,它的上限是每秒處理幾千筆交易。


首先,請了解一下兩個概念:


  • 信任最小化:如果 L2 系統(tǒng)的功能不需要信任底層 L1 之外的部分,那么這個系統(tǒng)(的一個功能)就是信任最小化。
  • 水平擴展:如果可以在不造成全局瓶頸的情況下添加實例,那么系統(tǒng)就是水平可擴展的。


在這篇文章中,我們認為信任最小化和水平可擴展的系統(tǒng)是擴展區(qū)塊鏈應(yīng)用程序最有前途的方式,但這個方向目前尚未被充分探索。我們通過探討三個問題來得出論點:


  • 為什么應(yīng)用程序應(yīng)該是信任最小化的?
  • 為什么要構(gòu)建可水平擴展的系統(tǒng)?
  • 我們?nèi)绾尾拍茉鰪娦湃巫钚』退娇蓴U展性?


聲明:雖然本文重點關(guān)注以太坊作為基礎(chǔ) L1,但我們在這里討論的大部分內(nèi)容也適用于以太坊之外的其它去中心化結(jié)算層。


為什么應(yīng)用程序應(yīng)該是信任最小化的?


應(yīng)用程序可以以可信的方式連接到以太坊,它們可以寫入和讀取以太坊區(qū)塊鏈上的數(shù)據(jù),但需要信任的地方在于業(yè)務(wù)邏輯會被正確執(zhí)行。幣安和 Coinbase 等中心化交易所是可信應(yīng)用程序的絕佳示例。連接到以太坊意味著應(yīng)用程序可以利用具有多種資產(chǎn)的全球結(jié)算網(wǎng)絡(luò)。


受信任的鏈下服務(wù)存在重大風(fēng)險。 2022 年主要交易所和服務(wù)商的崩潰(例如 FTX 和 Celsius)是一個很好的警示故事,講述了當(dāng)受信任的服務(wù)行為不當(dāng)和失敗時會發(fā)生什么。


另一方面,信任最小化的應(yīng)用程序可以以可驗證的方式寫入和讀取以太坊,例如 Uniswap 等智能合約應(yīng)用程序、Arbitrum 或 zkSync 等 Rollup 以及 Lagrange 和 Axiom 等協(xié)處理器。從廣義上講,隨著應(yīng)用程序受到以太坊網(wǎng)絡(luò)的保護,并且更多功能被分配給 L1,信任就會被消除。因此,可以在沒有交易對手或托管人風(fēng)險的情況下提供信任最小化的金融服務(wù)。


將功能外包給 L1,應(yīng)用程序和服務(wù)可以獲得三個關(guān)鍵屬性:


  1. 活性(和排序):用戶提交的交易應(yīng)及時包含(執(zhí)行和結(jié)算)。
  2. 有效性:交易按照預(yù)先指定的規(guī)則進行處理。
  3. 數(shù)據(jù)(和狀態(tài))可用性:用戶可以訪問歷史數(shù)據(jù)以及當(dāng)前應(yīng)用程序狀態(tài)。


對于上述每個屬性,我們可以想到需要什么信任假設(shè);特別是,以太坊 L1 是否提供該屬性或是否需要外部信任。下表針對不同的架構(gòu)范例進行了分類。



為什么要構(gòu)建可水平擴展的系統(tǒng)?


水平擴展是指通過向系統(tǒng)添加獨立或并行實例進行擴展,例如應(yīng)用程序或 Rollup。這要求系統(tǒng)不存在全局瓶頸。水平擴展可以實現(xiàn)系統(tǒng)吞吐量的指數(shù)級增長。


垂直擴展是指通過增加整體系統(tǒng)(例如以太坊 L1 或數(shù)據(jù)可用性層)的吞吐量來進行擴容。當(dāng)水平擴展在諸如共享資源上遇到瓶頸時,通常需要垂直擴展。


聲明 1:Rollup 無法水平擴展,因為它們可能會遇到數(shù)據(jù)可用性 (DA) 的瓶頸。垂直擴展 DA 解決方案需要在去中心化方面做出妥協(xié)。


數(shù)據(jù)可用性 (DA) 仍然是 Rollup 的瓶頸。目前,每個 L1 區(qū)塊的最大容量目標為 1 MB (85 KB/s)。從長遠來看,EIP-4844 將額外提供約 2 MB (171 KB/s) 的可用空間。通過 Danksharding,以太坊 L1 最終可能支持高達 1.3 MB/s 的 DA 帶寬。 以太坊 L1 DA 是許多應(yīng)用程序和服務(wù)共同競爭的資源。因此,盡管使用 L1 作為 DA 可提供最佳的安全性,但它會成為系統(tǒng)潛在可擴展性的瓶頸。使用 L1 作為 DA 的系統(tǒng)(通常)無法水平擴展,并且存在規(guī)模不經(jīng)濟。替代性 DA 層,例如 Celestia 或 EigenDA,也有帶寬限制(盡管較大,分別為 6.67 MB/s 和 15 MB/s)。但這是以將信任假設(shè)從以太坊轉(zhuǎn)移到另一個(通常不太去中心化)網(wǎng)絡(luò)為代價的,從而損害了安全性。



聲明 2:水平擴展信任最小化服務(wù)的唯一方法是實現(xiàn)(接近)每筆交易的邊際 L1 數(shù)據(jù)為零。兩種已知的方法是狀態(tài)差異 Rollup (SDR) 和 validiums。


狀態(tài)差異 Rollup (SDR) 是將一批聚合交易中的狀態(tài)差異發(fā)布到以太坊 L1 的 Rollup。對于 EVM,隨著交易批次變大,發(fā)布到 L1 的每個交易數(shù)據(jù)會逼近一個常數(shù),遠小于 Rollup 的交易數(shù)據(jù)。


例如,在銘文大量涌入的壓力測試事件中,zkSync 發(fā)現(xiàn)每筆交易的 calldata 減少至 10 字節(jié)。相比之下,對于正常流量,Arbitrum、Optimism 和 Polygon zkEVM 等 Rollup 每筆交易大約 100 字節(jié)。


validium 是一個將狀態(tài)轉(zhuǎn)換的有效性證明發(fā)布到以太坊的系統(tǒng),無需關(guān)聯(lián)的交易數(shù)據(jù)或狀態(tài)。即使在低流量條件下,Validium 也具有高度水平可擴展性。而且不同 validium 可以共享結(jié)算層。


除了水平可擴展性之外,validium 還可以提供鏈上隱私(來自公共觀察者)。具有隱私 DA 的 validium 擁有中心化和門控的數(shù)據(jù)和狀態(tài)可用性,這意味著用戶必須在訪問數(shù)據(jù)之前進行身份驗證,并且運營商可以實行良好的隱私措施。這實現(xiàn)了類似于傳統(tǒng)網(wǎng)絡(luò)或金融服務(wù)的用戶體驗:用戶活動不受公眾監(jiān)督,但存在一個需要信任的用戶數(shù)據(jù)托管人,在本例中為 validium 運營商。


中心化排序器與去中心化排序器呢?為了保持系統(tǒng)的水平可擴展性,獨立排序器(無論是中心化排序器還是去中心化排序器)至關(guān)重要。值得注意的是,盡管使用共享排序器的系統(tǒng)具有原子性可組合性,但它們無法水平擴展,因為隨著添加更多系統(tǒng),排序器可能成為瓶頸。


互操作性呢?如果水平可擴展的系統(tǒng)都在相同的 L1 結(jié)算,則它們可以在無需額外信任的情況下實現(xiàn)互操作,因為消息可以通過共享結(jié)算層從一個系統(tǒng)發(fā)送到另一個系統(tǒng)。運營成本和消息傳遞延遲之間需要進行權(quán)衡(這可以在應(yīng)用層解決)。


水平可擴展系統(tǒng)的信任最小化


我們能否進一步最小化水平可擴展系統(tǒng)中對活性、排序器和數(shù)據(jù)可用性的信任要求?


值得注意的是,以水平可擴展性為代價,我們知道如何挽救無需信任的活躍性和數(shù)據(jù)可用性。例如,L2 交易可以從 L1 發(fā)起以保證被包含。 Volition 可以為用戶提供選擇加入的 L1 狀態(tài)可用性。


另一種解決方案是簡單地去中心化(但不依賴 L1)。通過使用去中心化排序器(例如 Espresso Systems 或 Astria),而不是使用單個排序器,系統(tǒng)可以變得更加去中心化,從而最大限度地減少活性、排序和數(shù)據(jù)可用性所需的信任。與單個運營商的解決方案相比,這樣做存在局限性:(1) 性能可能受到分布式系統(tǒng)性能的限制,(2) 對于具有隱私 DA 的 validiums,如果去中心化排序器網(wǎng)絡(luò)是無許可的,則默認的隱私保護會丟失。


對于單個運營商 validiums 或 SDRs,我們還可以減少多少信任依賴?這里有幾個方向。


方向 1:validiums 中信任最小化的數(shù)據(jù)可用性。 Plasma 在一定程度上解決了狀態(tài)可用性問題,要么是某些特定狀態(tài)模型(包括 UTXO 狀態(tài)模型)的提現(xiàn)問題,要么要求用戶定期在線(Plasma Free)。


方向 2:SDR 和 validiums 中的負責(zé)任的預(yù)確認。這里的目標是為用戶提供排序器包含交易的快速預(yù)確認,并且如果包含承諾沒有兌現(xiàn),應(yīng)該允許用戶發(fā)起挑戰(zhàn)并對排序器實施權(quán)益懲罰。這里的挑戰(zhàn)是證明交易未被包含,這可能需要用戶提供額外的數(shù)據(jù),而排序器可以簡單地保留這些數(shù)據(jù)。因此,我們可以合理假設(shè),我們至少要求 SDR 或 validium 為其完整的 calldata 或交易歷史雇用一個數(shù)據(jù)可用性委員會,委員會能夠根據(jù)用戶請求提供不包含(預(yù)確認交易)的證明。


方向 3:從活性故障中快速恢復(fù)。單個運營商系統(tǒng)可能會遇到活性故障(例如 Arbitrum 在銘文事件期間宕機)。我們能否設(shè)計出一個在類似情況下不會服務(wù)中斷的系統(tǒng)?從某種意義上說,允許自我排序和狀態(tài)提議的 L2 確實提供了防止長期活性故障的保證。對短期活性故障更具彈性的單個運營商系統(tǒng)目前尚未被充分探索。這里的一種潛在的解決方案是通過對活性故障進行削減來追究相關(guān)責(zé)任。另一個可能的解決方案是簡單地縮短接管之前的延遲期(目前設(shè)置為一周左右)。


結(jié)論


在保持信任最小化的同時擴展全球結(jié)算賬本是一個難題。在當(dāng)今的 Rollup 和數(shù)據(jù)可用性領(lǐng)域中,垂直擴展和水平擴展之間還沒有明顯的區(qū)別。為了真正將信任最小化系統(tǒng)擴展到地球上的每個角落,我們需要構(gòu)建信任最小化和水平可擴展的系統(tǒng)。


非常感謝 Vitalik Buterin 和 Terry Chung 的反饋和討論,以及 Diana Biggs 的編輯評論。

本站提醒:投資有風(fēng)險,入市須謹慎,本內(nèi)容不作為投資理財建議。