譯者注:今年以來,rollup作為一種非常有潛力的擴容方案得到了廣泛的關注,多個使用rollup技術的二層項目在主網或測試網上線,Vitalik本人則是多次號召社區關注并使用rollup。本月初,Vitalik更是在以太坊魔術師論壇上寫了一篇文章詳細講述,如果將rollup作為以太坊未來發展中心,以太坊的路線圖應該做怎樣的調整?
需要注意的是,以太坊社區采用的是一種市集類型的開發模式——在這種模式中,不存在一個集權式的中心,取而代之的是透明開放的討論。也就是說Vitalik本人發了這個帖子之后,并不意味著以太坊的路線圖馬上就做相應變更了。市集模式大大增強了以太坊的包容性和演化過程中涌現出群體智慧的可能性,因此當rollup在區塊鏈世界的演化過程中逐漸展現出了其潛力之時,Vitalik發起的討論勢必會使rollup在以太坊演化的過程中扮演更重要的角色。
為了更好地說明自己文章中觀點的背景,Vitalik在多個場合進行了更詳細的補充說明,我們將Vitalik在社交媒體中的相關發言放在本文的開頭,充當背景介紹和摘要;Vitalik在以太坊魔術師論壇上的帖子則作為正文放在中間;最后,我們還節選了Vitalik在月初的ETHGlobal活動上的問答,供讀者參考。
分片不是被取消,只是被疊加
當前的ETH2.0路線圖包含3個階段:
Phase0:PoS
Phase1:數據分片,但不包括計算分片
Phase2:交易分片
以太坊當前的TPS大約為15-45,使用Rollup可以提升吞吐量100倍。分片則可以提升吞吐量64倍。將這兩項技術實現的吞吐量疊加,也就是說在分片基礎上疊加實現rollup,可以實現6400倍的吞吐量提升。
但目前的路線圖會衍生出一個有趣的意外:實現分片應用的愿景要到Phase2才會實現,但分片rollup在Phase1就可以實現了,因為rollup只需要用到主鏈上存儲數據的功能,不需要主鏈實現計算功能。所以在ETH2.0完整實現前,以太坊就具備了擴容6400倍的條件。
V神:對BTC等加密貨幣有廣泛價格區間預期:V神在推特表示,我對于BTC和其他加密貨幣有一個廣泛的價格區間預期。基本上,我們應該為明顯低于今天的價格水平和數萬億美元市值之間可能發生的任何事情做好準備。[2020/8/10]
因此,并不是用rollup取代分片,而是在分片上疊加rollup。也就是說,在分片實現之前,rollup已經可以實現100倍吞吐量的提升,因此盡快使用rollup!
以Rollup為中心的以太坊路線圖
上周,Optimism團隊宣布啟動Optimism的第一階段測試網,同時宣布了邁向主網上線的路線圖。Optimism并不是唯一正在實現optimisiticrollup的團隊,Fuel的rollup也在向測試網邁進,Arbitrum也在做一個rollup。Loopring、zkSync實現的基于zk-rollup的rollup方案已經上線,基于Starkware技術的Deversifi也已經上線,已經有用戶在主網上使用這些產品了。OMG的主網測試版上線則表明plasma也在向前發展。與此同時,eth1上的Gas價格正在攀升到新的高點,以至于一些非金融類的dapp被迫關閉,還有一些dapp只能在測試網上運行、無緣主網。
系統的可擴展性本是Eth2的題中之義,而且Eth2的早期階段也正在快速推進。但對于使用基礎層的應用來說,可擴展性要到Eth2的最后一個主要階段才會出現,這還需要幾年時間。略具諷刺意味的是,在Eth2的Phase1,Eth2就可以作為rollup的數據可用性層使用了,這遠早于Eth2可以被“傳統的”一層應用所用的時間。匯總這些因素,會得出一個特別的結論:以太坊生態系統很可能會全身心地投入到rollup中,作為近期和中期實現可擴展性的戰略。
若以此結論作為前提,則關于以太坊核心開發和生態開發的優先事項,我們將得出一些結論,暗示了在某種意義上與當前的路線圖不同的方向。具體來說,我們可以得出哪些結論?
V神:分片技術的缺點是需在最開始設置參數或依賴治理:以太坊創始人V神剛剛發推稱,分片技術(sharding)的一個缺點是,由于沒有好的協議和方法告訴你有多少節點,你必須在最開始設置確定容量和最小安全節點數之間的參數,或依賴治理。[2020/3/16]
短期路線圖:圍繞rollup推進ETH1
關于短期內的方向,一個主要的結論是,以太坊基礎層的可擴展性將主要聚焦在擴展每個區塊可以容納的數據量,而不是鏈上計算或IO操作的效率。因為對于rollup來說,其可擴展性的唯一決定性因素是鏈上能容納多少數據。任何超過當前數據容量的擴容辦法,都將有助于進一步提高rollup的可擴展性。
在此視角下,以下基礎層的改進方案仍具有意義:
EIP2929?,確保以太坊主鏈在當前的Gas設定下可以抵御DoS攻擊
EIP1559?,EIP1559既可以實現ETH的燃燒,也可以使一筆交易更容易被下一個區塊打包
新的橢圓曲線預編譯,從而可以更全面地挖掘ZKrollup的潛在性能
十六進制->二進制樹變更,以及其它推動更好支持無狀態客戶端的變更
賬戶抽象的重要性稍弱,因為不管L1是否支持賬戶抽象,都可以在L2上實現。其他類似的“巧妙的基礎層特性”也會變得相對不那么重要。
Eth1客戶端可以被optimisticrollup客戶端再利用。optimisticrollup仍然需要有全節點,如果rollup內部的狀態轉換規則與以太坊類似,只是做了一些修改,那么現有的代碼可以被再利用,用來運行rollup的全節點。將共識引擎與狀態轉換引擎分離出來的工作已經在eth1Eth2合并的背景下進行,該工作也可以幫助實現上述目標。需要特別注意的是,像TurboGeth這樣的項目仍然是非常重要的,只是從中獲益最大的將是高吞吐量的rollup客戶端,而不再是基礎層的eth1客戶端。
聲音 | V神:如果人們使用單獨投票貨幣來進行二次投票,你會使用同樣的技術:BOS團隊今日發推表示,區塊鏈投票機制給行業公平的投票系統帶來了挑戰,批準和二次投票機制(Quadratic Voting)引來了爭議。網友glenweyl對此稱,這與二次投票幾乎沒有關系,幾乎所有的二次投票都使用不與金錢掛鉤的單獨投票貨幣。BM(EOS創始人Daniel Larimer)回復該網友稱,如何使貨幣不與金錢掛鉤,這聽起來是矛盾的問題。V神回復到,如果人們開始嘗試用這種技術來進行投票,你可能會使用同樣的技術,并以反賄賂的理由使投票無法被證實。[2020/2/13]
短期路線圖:圍繞Rollup調整相應的基礎設施
目前,用戶的賬戶在L1上,ENS域名在L1上,應用也都運行在L1上。一切都需要改變。我們需要適應這樣一個世界:用戶的主要賬戶、余額、資產等完全在L2里面。由此會造成這些情形:
ENS需要支持在L2上注冊和轉移域名;關于如何實現這一點的一個可能的提案參見這里。
L2層協議應內置到錢包中,而不是像dapp那樣放到網頁上。目前,L2集成到dapp/類dapp中需要用戶完全信任dapp,這與現狀相比安全性大大降低。理想的情況是讓L2成為錢包本身的一部分,這樣我們就可以維持目前的信任模型。這種支持應該是標準化的,這樣一個支持zksync支付的應用就會立即支持zksync-inide-Metamask、zksync-inide-Status等。
我們需要在跨L2轉賬上做更多的工作,使資產在不同L2之間的轉移時,具有盡可能即時和無縫銜接的用戶體驗。
更明確地將Yul或類似的東西標準化為中間編譯語言。以太坊的底層EVM和Optimism推出的OVM使用的編譯目標略有不同,但都可以由Solidity編譯。為了支持一個具有不同編譯目標的生態系統,但同時避免Solidity的單一文化并接納多種語言,更明確地標準化像Yul這樣的東西作為中間語言可能是有意義的,從而使所有高級語言都可以被編譯至EVM或OVM。我們也可以考慮一種更明確的對于形式化驗證友好的中間語言,它可以處理像變量這樣的概念,并確保基本的不變量,從而使形式化驗證更加容易。
聲音 | V神:第二個最好的對抗“魔王”的時間就在今天:V神發布推特稱,最好的對抗“魔王”的時間是一年前,第二個就在今天。在此條推特下,V神附上了ViaBTC官方推特給推特網友的回復。推特網友“Jason Elliott”希望ViaBTC支持SV。ViaBTC回復稱:“很抱歉支持暴君或瘋子是不對的。想殺死BCH的人,只是想發明一種新的代幣來發展其自己的礦業,而希望殺死其他公司只是純粹出于個人恩怨。這完全不可接受!”(魔王或暗指企圖用算力控制一切的人)[2018/11/14]
Rollup中心主義的經濟可持續性優勢
一個不可回避的事實是:一個密碼貨幣項目必須在財務上實現可持續發展。在2020年,這意味著一個項目需要數百萬甚至上千萬美元的資金。其中一部分可以由常見的公益資助實體提供,但其規模實在不足以達到上述資金量級。二層項目可以通過推出自己的代幣的方式籌得資金——當然,前提是該代幣有真正的經濟價值支持。
以rollup為中心的路線圖的第二個重要好處是,它為L2協議留出了開放的空間,這些L2協議或可直接收集費用/MEV,或可間接通過發行代幣,從而獲得開發所需的資金。以太坊基礎層有一個重要的需求是可信中立性,這使得協議內的公益資助變得困難,但L2自己設立公益資助機制的爭議要小得多。因此,留出這個空間對于整個以太坊長期的經濟可持續性來說是一個很好的戰略舉措。
除了資金問題之外,最有創造力的研究人員和開發人員往往希望在自己的地盤上創造影響力,而不是在一個沒有什么影響力的位置上與其他人爭論以太坊協議的未來。此外,已經有很多現有的項目在嘗試創建各種平臺。以rollup為中心的路線圖為所有這些項目提供了一個明確的機會,使他們既能成為Ethereum生態系統的一部分,又仍然能保持高度的經濟和技術自主權。
長期路線圖
除了上述這些短期路線圖層面的考量,以rollup為中心的路線圖還可能意味著重新設想Eth2的長期未來:一個所有人都可以處理的具有高安全性的執行分片,再加上一個具有可擴展性的數據可用性層。
V神:以太坊網絡將能夠每秒處理100萬次交易:在最近的OmiseGO AMA會議上,V神稱采用Sharding和Plasma等第二層解決方案后,以太坊網絡將能夠每秒處理100萬次交易,并且有潛力每秒交易超過1億次。[2018/6/3]
要想理解為什么可以這么說,可以思考一下下列數據:
以太坊目前的TPS約為15。
如果所有人都轉移到rollup,TPS將達到3000。
一旦Eth2的Phase1實現,rollup轉移到Eth2分片鏈進行數據存儲,理論TPS最大值可達100000。
最終,Eth2的Phase2將會實現,在分片基礎上實現了計算,此時TPS約為1000-5000TPS。
在我看來,當Eth2Phase2最終實現的時候,已經不會有人關心了。屆時無論我們喜歡與否,大家都已經適應了一個以rollup為中心的世界。到那時,繼續沿著之前這條路走下去,比試圖讓大家遷移到Eth2完成后的基礎鏈上要容易得多,因為遷移到Eth2完成后的基礎鏈上沒有明顯的好處,可擴展性則會降低20-100倍。
這意味著Eth2到“Phase1.5就完成了”,屆時基礎層重新收縮,只需專注于做好幾件事——即共識和數據可用性。
對于Eth2來說這可能是更合適的目標,因為對數據可用性分片比對EVM計算分片要安全得多。想驗證分片化EVM計算在不誠實者占多數假設下的證明,就需要欺詐證明,這需要一個嚴格且具有潛在風險的兩個epoch的同步假設,但數據可用性采樣在異步假設下是安全的。
這將有助于把以太坊與其他分片式二層鏈的安全模型區分開,這些二層鏈都是在執行層面進行了分片。Eth2作為基礎層的功能只需要剛剛好就行,不需要很強大。
從長遠看,Eth2應該做什么?
錯開不同分片上的區塊時間,這樣在任何時候總會有一些分片會在幾百毫秒內出塊。這樣就可以讓跨多個分片運行的rollup具有超低的延遲,而不使鏈本身面臨超低延遲所帶來的風險。
改進并鞏固其共識算法
調整EVM,使其對欺詐證明的驗證更加友好。
與ZK-SNARK有關的一切
更妥協的提案
如果你不認可上述“一路”走到“Phase1.5即完成”的發展方向,那么有一條自然的折中之路:使Eth2具有少量的執行分片和更多的數據分片。我們的目標是,執行分片的數量仍然足夠少,在特殊情況下,普通計算機能夠完全驗證所有的執行分片,但基礎層空間仍然會比現在路線圖中所設定的大得多。
基礎層空間不能太小,因為用戶和應用仍然需要使用基礎層進行一系列操作,例如在不同的rollup之間移動,提交欺詐證明,在ZKrollup中提交ZK證明,發布根ERC20代幣合約等等。而如果這些操作所涉及的每筆交易的成本是140美元,用戶體驗仍然是非常差的。因此,如果有必要,設定4-8個執行分片而不是1個,可以大大緩解這一問題。而且一臺計算機仍然可以驗證所有的分片。如今,以太坊上每13秒就能挖出一個區塊,而驗證一個區塊平均耗時約200-500毫秒,所以短時間內驗證8個線程是完全可行的。可以想象客戶端會有這樣的對策:"只要網絡延遲很低,或委員會人數達到滿員數量的80%,依靠欺詐證明和委員會,可以在特殊情況下直接驗證所有分片"。
在ETHGLOBAL上針對該文的問答
Q:?L2致力于解決擴容問題,在社區已經被研究和討論多年,但之前的嘗試似乎不太成功,你對rollup有多大信心?這次擴容嘗試和之前相比有什么不同?
A:?我在博客文章中對這個問題有更詳細的討論。我的主要觀點是rollup與狀態通道及plasma都有所不同。對于擴容來說,要擴容兩樣東西,擴容計算和擴容數據可用性。我的觀點是,狀態通道和plasma都不解決數據可用性問題,他們用了一類特殊的與應用場景相關的技巧試圖解決這個問題。與前兩者不同的是,rollup并不把所有東西都放在鏈下,而是將計算放在鏈下,但是將一定量的數據存儲在鏈上,這是rollup的擴容性能受到一些限制的原因。也就是說Rollup更加妥協一些,為了支持任意狀態機犧牲了一些擴展性。對于plasma來說,一開始我們認為可以解決在plasma中運行任意狀態機的問題,但最終我們意識到這是做不到的。但對于rollup來說,有一些數學和技術層面的證據可以證明rollup可以實現這些功能——任意狀態機,也即是某種圖靈完備性。在實踐中,rollup已經成功運行一段時間了,例如已經有了3個使用rollup的DEX,你也可以在gitcoin捐款時使用rollup,sythentix等項目則在支持evm的測試網中進行測試。可以說,在狀態通道和plasma中沒有得到解決的問題,我覺得在rollup中已經得到逐步解決了。
Q:當前L1具有可組合性/互操作性,你覺得未來仍然會具備嗎?換一個角度,你是覺得未來是會是多rollup共存,還是會形成贏家通吃??A:這是一個好問題。我覺得會有一些rollup在最后占據主導地位。我覺得rollup同時具備了網絡效應和反網絡效應。主要的反網絡效應是:TPS越大,跑一個rollup全節點越難,這在一定程度上會降低其可用性。另一方面,目前rollup有幾個不同的技術路線,我是希望這些技術路線和對應的技術特性在短中期都得到測試的。從長期來看,也許某一個rollup會贏家通吃,但我還不能確定:)
Q:你在文章中描繪了一個可能的愿景,你覺得以太坊基礎層什么時候會穩定下來?還是說會一直在迭代改進?
A:在我提出的路線圖中,我希望以太坊2.0在1.5階段達到基本穩定的狀態,這也是我在文章中提及“1.5階段即完成”的原因。但是在這之后還是會有持續的技術迭代,這些技術迭代主要包括增加更多零知識證明從而提高安全性和效率,將共識機制從FFG改為CBC,以及將密碼學原語切換為后量子密碼學原語。這些改進基本不會影響以太坊的經濟系統和基本的安全特性。我絕對期待持續在很長一段時間里技術會持續迭代優化,當然這些優化更多接近于運維層面。
原文鏈接:
https://ethereum-magicians.org/t/a-rollup-centric-ethereum-roadmap/4698
https://twitter.com/VitalikButerin/status/1312905882330521600
作者:?Vitalik
翻譯&校對:?安比實驗室&?阿劍
Bitget全球用戶: 為提高全球網站訪問性能,給您提供更加安全、穩定、快速的網絡訪問服務,Bitget已完成網絡環境的優化及升級.
1900/1/1 0:00:00尊敬的用戶: Filecoin主網將于區塊高度達到148,888時正式開啟,預計時間為2020年10月15日,幣虎將于Filecoin主網啟動后第一時間開放充提幣業務,屆時期貨將自動轉換為現貨.
1900/1/1 0:00:00云算力挖礦是什么? 用一句話就可以概括了,云算力不是什么稀奇古怪的東西也不是憑空出世的。前段時間云電腦——“無影”出現,大批網友圍觀,但并不感到驚奇.
1900/1/1 0:00:00尊敬的用戶: Hotbit即將開啟CoFi(CoFiToken)數字資產服務。 具體安排如下: 充值時間:2020年10月12日21:00 交易時間:待定 交易對:CoFi/USDT、CoFi/.
1900/1/1 0:00:00尊敬的用戶: 火幣全球站將支持AaveProtocol(LEND)智能合約置換為AaveProtocol(AAVE).
1900/1/1 0:00:00DeFi很火,這個夏天業內仿佛打入雞血一般地參與到這個生態,創新、革命,各類項目此消彼長。不過,熱鬧背后,卻是暗流涌動.
1900/1/1 0:00:00