Vitalik:以Rollups為中心的以太坊路線圖
作者| Vitalik Buterin
作者| Vitalik Buterin發布作者| Vitalik ButerinFuel發布Arbitrum作者| Vitalik ButerinLoopring、Zksync發布DeversifiOptimism團隊不久前OMG network發布也在推進測試網進程,,其他以及基於Starkware技術的
其他
推出其主網bata版本,plasma也有所進展。與此同時,eth1鏈上的gas費已經達到了新高,以至於
其他
非金融類dapps被迫停止運行
其他
EIP 2929應用也只能在測試網中運行。
EIP 1559Eth2的發展目標之一就是增強擴容性,我們已經非常接近eth2前期階段了,但要為應用提供基礎層擴容性,我們還需要等到數年之後eth2最後一個主要階段(譯者註:即階段2 ) 的實現。諷刺的是,eth2作為rollups數據可用性層的可用性在階段1就能實現,而在許久之後eth2才能真正用於“傳統”的L1應用。將這些事實結合起來,我們可以得出一個結論:以應對近期和中期的擴容性需求,整個以太坊生態系統需要將發力點集中到rollups上(以及plasma和通道技術)。
如果以此為前提,我們就能得知以太坊中心開發和生態系統發展應該優先考慮的問題,而這多多少少與當前的發展路徑有所不同。那麼我們應該優先考慮哪些問題呢?
短期:推進Eth1基礎建設以支持Rollups
在短期內,這樣做的一個主要結果在於:針對以太坊基礎層的擴容工作將主要集中於擴大區塊的數據容量,而不是優化鏈上計算或IO操作的效率。 Rollup擴容性的決定性因素在於該鏈能包含多少數據,如果能夠在當前約60 kB/秒的基礎上有所提升,rollups的擴容性則能得到進一步優化。
在基礎層上,以下因素需要持續重視::在當前gas情況下保證以太坊區塊鏈能夠抵禦DoS攻擊:一是推動ETH銷毀,二是優化交易效率,並且幾乎能夠確保交易被打包到下一個區塊中(rollups仍然需要等待確認)
新的橢圓曲線預編譯,以實現對ZK rollups編程的完全支持
無狀態客戶端的相關工作,包括從十六進制樹轉換為二進制樹等(無論我們如何使用以太坊區塊鏈,無狀態客戶端都非常有意義)
ENS needs to support names being registered and transferred on L2; see here 54for one possible proposal of how to do this.
Eth1客戶端可以被重新定義為optimistic rollup客戶端。 Optimistic rollups仍然需要全節點,並且如果rollup的內部狀態轉換規則本質上仍然是以太坊式的,只是進行了一些修改(例如Optimism的目標),那麼我們可以使用現有代碼來運行全節點。目前此處已經實現將共識引擎從狀態轉換引擎中分離出來,而這項工作也有助於達成該目標。請注意,這也意味著類似TurboGeth的項目仍然非常重要,高吞吐量的rollup客戶端(而非eth1客戶端) 將成為最大受益者。
此處
目前,用戶的賬戶、ENS域名、以及應用等等都在L1上,這些都需要改變。我們要將用戶的主要賬戶、餘額、資產等等都放在L2中。隨之而來的是以下幾個需求:
此處
ENS需要對在L2上註冊和轉移的域名提供支持,
此處
是一個可能的相關提案。MEVLayer 2協議應該被集成到錢包中,而不是網頁版的dapp中。目前,集成了L2的dapp或是類dapp (例如集成zksync的Gitcoin) 都要求用戶完全信任該dapp,這導致安全性大打折扣。要維持當前的信任模型,L2成為錢包本身的一部分(metamask, status等等) 是最理想的情況。這類支持應該進行標準化,因此支持zksync支付的應用也能隨即兼容內置zksync的錢包。
加大跨L2轉移的工作力度,目標是能夠即時、無縫進行跨L2鏈的資產轉移。
對Yul或其他中間編譯語言進行更加明確的標準化。以太坊的基礎層EVM和Optimism rollup所使用的OVM作為編譯目標稍有不同,但都可以由Solidity編譯而成。為了使生態系統存在不同的編譯目標,但同時還要接受不同的語言,避免Solidity的單一化使用,因此更明確地對所有高級語言都能編譯的中間語言(例如Yul) 進行標準化或許是有意義的。我們也可以考慮對形式驗證友好的中間語言,能夠處理諸如變量之類的概念,還能保證基本不變量,從而使所有被編譯的高級語言都更易進行形式驗證。
以Rollup為中心帶來的經濟可持續性
加密貨幣項目必須具備經濟上的可持續性,這是無法迴避的事實,在2020年這意味著數百萬甚至數千萬的融資金額。其中的一部分能夠由公共物品募資平台提供(如Gitcoin Grants或以太坊基金會),但這些機制的規模不足以覆蓋這個等級的融資。但是Layer 2項目能夠通過發布自己的代幣來解決這個問題,前提是其代幣具備真正的經濟價值,即未來L2所捕獲到的價值。
如果路線圖以rollup為中心,隨之而來的另一個好處是為L2協議留出了開闊的空間,這些L2協議有能力通過收費或是
形式來獲取發展資金,無論是直接還是間接地(即代幣發行)。以太坊基礎層非常需要保持中立,這就使得在協議內進行公共物品募資(public good funding) 變得十分困難,但L2具備自己的公共物品募資機制,這樣一來爭議就會大大減少。因此,在這個方面留出空間對於整個以太坊長期的經濟可持續性來說可能是一個不錯的戰略舉措。
除了募資問題,具有創造力的研發人員通常都傾向於在他們自己的領域中擁有影響力,而不是針對以太坊的整體協議進行無足輕重的爭辯。此外,有許多現有的項目正在嘗試創建各種平台。以rollup為中心的路線圖使得所有這些項目有機會成為以太坊生態系統的一部分,同時仍能保留高度的經濟和技術自主權。
長期視野
除了上文提到的短期考慮外,路線圖以rollup為中心還可能意味著我們要重新構想eth2的長遠未來:每個人都可以進行處理的強安全性單一執行分片,以及可擴容的數據可用性層。phase 1.5 and done要理解為什麼是這樣,需考慮以下因素:
當前以太坊的TPS約為15
如果大家都遷移到rollups上,TPS很快可以達到3000一旦階段1到來,rollups的數據存儲遷移到eth2分片鏈上,理論上TPS最高能達到10萬左右。
最後,階段2實現之後為eth2分片鏈提供本地計算,TPS達到……1000-5000
這意味著eth2的“
”道路,精簡基礎層並且工作有所側重,即共識和數據可用性。
實際上這對於eth2來說是更好的發展方向,因為分片數據可用性相對分片EVM計算要安全得多。雖然分片EVM計算的不誠實多數證明(dishonest-majority-proof) 驗證需要欺詐證明,這需要有潛在風險且嚴格的2 epoch同步假設,但在異步情況下,數據可用性採樣(如果使用ZKP或多項式承諾) 是安全的。
這將有助於以太坊擁有比其他分片型L2鏈更強壯的安全模型,而這些分片型L2鏈都朝著某種形式的分片執行方向發展;
eth2將是功能強大的基礎層,強大到足以提供功能逃逸速度(functionality escape velocity) 就足夠了
長期來看eth2的工作重點有哪些?
優化並鞏固共識算法
參考資料:
如果你並沒有被說服接受“phase 1.5 and done”這個發展方向,也有自然的折衷方案:使用少量分片作為執行層(例如4-8個),其他的分片則作為數據層。目標是使執行分片的數量足夠低,以至於在特殊情況下,常規計算機將能夠對所有分片進行完全驗證,但是與當前的基礎層相比,其空間仍然要大得多。參考資料::
Vitalik Buterin在ETHOnline上的
聲明:ECN的翻譯工作旨在為中國以太坊社區傳遞優質資訊和學習資源,文章版權歸原作者所有,轉載須註明原文出處以及ethereum.cn,若需長期轉載,請聯繫ethereumcn@gmail.com進行授權。
相關演講
《如何評估六大以太坊Layer-2擴容方案》
網站:ethereum.cn


