原文標題:Vitalik:Rollups不完全指南
Rollups解決方案在以太坊社區中正風靡一時,并有望在將來成為以太坊的關鍵擴容解決方案。但是這項技術究竟是怎樣的呢?它能給我們帶來什么?我們將如何使用這項技術呢?本文將盡量回答其中一些關鍵問題。
背景:何為一層、二層擴容?
區塊鏈擴容方式有兩種。第一種,可以提高區塊鏈本身的交易容量。這種技術的主要挑戰就是:當區塊容量越來越大時,區塊鏈將越來越難驗證,且中心化程度越來越高。為了避免此類風險,開發者可以提高客戶端軟件的效率。或者選擇另一種更為可持續的方式:利用諸如分片這類技術,使得區塊鏈上的構建區塊和驗證工作可以分散至許多節點(Eth2升級中就會將此技術引入以太坊)。
第二種,可以改變使用區塊鏈的方式。即用戶不是將所有交易都直接在區塊鏈上進行,而是通過二層協議在鏈下執行大部分交易。好比鏈上有一個智能合約,該合約只有兩個任務:處理存款和提款交易、以及驗證所有鏈下交易的有效性。對鏈下交易進行驗證的方法有多種,但他們都具有同一個特性:在鏈上驗證證明比在鏈下進行原始計算的成本要低得多。
狀態通道vsPlasmavsRollups
二層擴容方案的三種主要類型是:狀態通道、Plasma和rollups。他們是三種不同的范式,具有不同的優劣勢。我們可以把所有二層擴容解決方案大致地歸為這三類(盡管有的方案因分類模糊而存在命名爭議,如validium)。
狀態通道的原理
更多資料請參考:
https://www.jeffcoleman.ca/state-channelsandstatechannels.org
假設Alice正給Bob提供互聯網連接,作為交換,Bob每兆字節向她支付0.001美元。他們不需要每一次支付都執行交易,而是使用下面的二層解決方案。
首先,Bob向一個智能合約中存入1美元(或等值的ETH或穩定幣)。Bob在一張寫著“0.001美元”的票上進行簽名(一條鏈下信息),然后發給Alice,這樣就完成了對Alice的第一筆支付。而第二次支付時,Bob在另一張寫著“0.002美元”的票上進行簽名,然后發給Alice。以此類推,可以根據需要進行多次付款。當他們完成交易了,Alice可以將數值最高的票單發布到鏈上,并對其進行簽名。鏈上的智能合約將驗證Alice和Bob的簽名,然后向Alice支付Bob票據上的金額,并將剩余的錢退還給Bob。
如果Alice不愿意關閉他們之間的狀態通道(出于惡意行為或由于技術故障),則Bob可以啟動提款期(withdrawalperiod),如果Alice在這段期間內(比如7天)還是沒有向Bob提供票據,那么Bob就可以拿回他的所有錢。
該技術功能強大:可以對其進行調整,以進行雙向支付、處理智能合約關系(如,Alice和Bob在通道中簽訂金融合約)、以及對通道進行組合(比如,當Alice和Bob、Bob和Charlie之間有一條開放通道時,Alice和Charlie也可以進行去信任交易)。
以太坊創始人V神發布關于“單槽終結路徑”的研究文章:金色財經報道,1月25日,以太坊創始人Vitalik發布了關于“單槽終結路徑”的研究文章,文章表示,由很多論據推論,盡管以太坊現在有超過28w個驗證者,但仍可以將以太坊最終確認時間減小至單個Slot時間。
實現“單槽終結”可以提升用戶體驗,減少以MEV為目的的重組鏈并減少協議復雜性和錯誤幾率。但這是一個是長遠的計劃,其順序會排在PoS、分片、Verkle樹之后。目前,實現這一目標主要思路有:
1.通過超級委員會實現,即通過至少數百名的超級委員會驗證者完成共識中單個slot內的驗證工作。
2.讓如今的巨量的驗證者更快更高效的發揮作用,即讓聚合簽名過程更高效。
此外,對于“單槽終結”實施有具體如下4點要求。
1.加緊優化簽名聚合工作;2.確定超級委員會規模;3.研究、達成一致并指定一個理想的共識和分叉機制選擇;4.同意并在實施路徑上執行這些。[2022/1/25 9:11:04]
但狀態通道的作用是有限的:無法將資金在鏈外發送給沒有參與進來的用戶;通道不能代表那些邏輯上沒有明確所有者的對象(如Uniswap);并且如果要進行更為復雜的交易,需要在通道內鎖定大量資金。
Plasma的原理
更多資料請參考?
最早的Plasma論文:
http://plasma.io/plasma-deprecated.pdf
PlasmaCash:
https://ethresear.ch/t/plasma-cash-plasma-with-much-less-per-user-data-checking/1298
用戶向某個Plasma鏈的智能合約中發送一筆資產以完成存款。Plasma鏈給該資產分配一個唯一的ID(如537)。每條Plasma鏈都有一名運營者“operator”(他可以是一個中心化的角色、一個多簽名者、或諸如PoS/DPoS此類更為復雜的東西)。每隔一段時間(可以是15秒至1小時),運營者便會生成一個等待批量處理的匯總交易(由他們在鏈下收集到的所有Plasma交易組成)。
這些運營者會生成一個默克爾樹,樹中每個索引X處,如有存在交易的話,會顯示某筆轉移交易資產IDX,如果沒有交易,葉子值為零。隨后他們將該默克爾樹的默克爾根發送到鏈上,同時還會將每個索引X的默克爾分支發送給其資產的當前所有者。
如果用戶想要進行提款,那么就要公布其最近向其發送資產的交易的默克爾分支。然后智能合約就將啟動挑戰期,在此期間,任何人都可以嘗試使用其他默克爾分支來證明該提款無效。需要至少證明其中一項:(i)發送方在發送資產時并不是該資產的所有者;(ii)發送方在后來將資產發給了其他人。如果在某個時間段內(如七天)沒有人證明該提款是欺詐性的,用戶便可以取出他的資產。
V神發文探討以低于市場出清價格銷售以實現公平的替代方案:金色財經報道,8月22日,以太坊創始人V神發布關于《以低于市場出清價格出售以實現公平(或社區情緒或樂趣)的替代方案》的文章,V神表示,區塊鏈為我們提供了一個獨特的機會來重置社會規范。幾十年來經濟學家大喊“效率”失敗的情況下,優步將激增定價合法化;當然,區塊鏈也可以成為使機制設計的新用途合法化的機會,與其擺弄以市場價格與低于市場價格出售的粗粒度一維策略空間(也許還有拍賣與固定價格出售的第二個維度),我們可以使用更先進的工具來創建一種更直接地解決問題、副作用更少的方法,在所有這些情況下,解決方案的核心很簡單:如果你想對人可靠公平,那么你的機制應該有一些明確衡量人的輸入。人格證明協議可以做到這一點(如果需要,可以結合零知識證明來確保隱私)。因此,我們應該將市場定價和拍賣定價的效率收益,以及人格機制證明的平等收益,結合起來。[2021/8/22 22:29:12]
Plasma比狀態通道擁有更加強大的性能:使用Plasma,用戶可以將資產發送給從未加入其系統的參與者;對資本的要求也低許多。但Plasma也是有缺點的:在“正常操作”期間,通道不需要任何數據就可以在鏈上進行傳輸,而Plasma要求每條鏈定期發布一個哈希。此外,在Plasma上轉賬不是即時的:用戶需要等一段時間并且等到區塊被發布之后。
再者,Plasma和通道都有一個關鍵弱點:確保這兩種方案安全的前提是,這兩種系統所控制的對象都有邏輯上的“所有者”。如果該資產的所有者不關心其資產,那么可能會導致證明其資產無效的結果。這對許多應用程序來說是可以接受的,但是對于許多其他應用來說(如Uniswap)來說是破壞交易原則的。甚至在一些系統中如果對象的狀態不經其所有者的同意就可以被改變(如基于賬戶的系統,你可以不經某人的同意就可以提升其余額),這些系統也不適用Plasma。
這意味著,當部署任何實際Plasma或通道時,都需要大量的“某個特定應用程序的推理”,并且不可能創建一個模擬完全的以太坊環境(或“EVM”)的Plasma或者狀態通道系統。為了解決此問題,各種rollup方案出現了。
Rollups
其他資源參見?
EthHubonoptimisticrollups:
https://docs.ethhub.io/ethereum-roadmap/layer-2-scaling/optimistic_rollups/
ZKrollups:
https://docs.ethhub.io/ethereum-roadmap/layer-2-scaling/zk-rollups/
Plasma和通道類是“純粹”的二層方案,因為其將數據和計算都移至鏈下。然而,圍繞“數據可用性”的基本博弈論問題意味著這些方案不一定對于所有應用來說都是安全的。Plasma和通道方案的解決方式是依靠所有者完全知曉狀態,但這使得此類方案無法完全通用化。Rollups,則是一種“混合型”二層方案。Rollups將計算(以及狀態存儲)移至鏈下,但將每筆交易的一些數據放在鏈上。
V神發布倫敦升級后鏈容量增加約9%的三個原因:V神(Vitalik Buterin)發文《鏈容量為什么在倫敦升級之后增加了約9%?》。V神表示有3個原因:
1. 冰河時代延遲
當倫敦分叉開始時,冰河時代才剛剛開始生效。倫敦之前的平均區塊時間約為13.5秒,倫敦之后的平均區塊時間回落到其長期正常水平約13.1秒。這是區塊速度約3%的差異,這解釋了鏈上gas使用量增加9%中的3%。
2. 目標值1500萬與最大1500萬
在倫敦升級之前,區塊最低gas使用量為1500萬,并非所有區塊都使用了整個1500萬,即使是功能最完善的區塊生產者也會留下0-20999未使用的gas,因為剩余空間太少,無法容納單筆交易,除此之外,總會有偶爾的區塊生產者制造空塊。4月份的一項分析表明,大約2%的區塊是空的。假設在倫敦之前有大約2-3%的未使用空間。然而,在倫敦之后,1500萬不是最大值,而是目標值。這意味著,如果使用的平均gas(包括空塊)低于1500萬,則基本費用將減少,直到平均值回到1500萬。所以這又占了大約2-3%。
3. basefee調整中的數學缺陷
EIP1559公式在目標為50%時并不完美。從最近觀察到的時間跨度中獲取數據,51.5%是完整區塊(full block)(因此,比預期的50%高約3%)。[2021/8/15 22:15:37]
為了提高效率,這類方案借助了許多復雜的壓縮技巧以盡可能使用計算替代數據。結果是系統的擴容性仍然受到底層區塊鏈的數據帶寬限制,但比較來看仍十分有利:以太坊基礎層ERC20通證的轉移成本約為45000gas,而rollup中的ERC20通證僅轉移占用16字節的鏈上空間,成本不到300gas。
數據在鏈上這一點很關鍵(請注意:將數據“放在IPFS上”是行不通的,因為IPFS不能就任何給定的數據是否可用提供共識;數據必須被記錄在鏈上)。將數據放在鏈上并對此達成共識,使得任何人都可以根據需要在本地處理rollup中的所有操作,從而允許其對欺詐進行監測、發起提款或親自開始批量生成交易。缺乏數據可用性意味著一名惡意的或是離線的運營者能夠產生的影響甚至會更小(例如他們無法造成一周的延遲),從而為有權發布批量交易的人打開更大的設計空間,并使rollup更容易有理可循。
更重要的是,缺乏數據可用性意味著不再需要映射資產到所有者,從而我們能得出以太坊社區相較之前的二層擴容方案對rollups更加期待的關鍵原因之一:rollups是完全通用的,我們甚至還可以在rollup內部運行EVM,使得既有的以太坊應用幾乎不需要編寫新代碼就能遷移到rollups上。
Rollup的原理到底是什么?
在鏈上存在一份智能合約,其中包含一個狀態根,即rollup狀態的默克爾根(也就是rollup內部的賬戶余額、合約代碼等等)。
任何人都可以發布一批匯總交易(batch),這是一個經由高度壓縮的交易集合,其中包含之前的狀態根和新狀態根(處理交易之后的新默克爾根)。該合約會檢查batch中的舊狀態根是否匹配其當前的狀態根,如果匹配的話,合約會對狀態根進行更新。
V神發推稱贊EIP 1559 用戶質疑該提案將會損害礦工利益:10月20日消息,今日上午V神發推稱,EIP 1559正是當今世界所需要的。對此,有用戶表示反對,稱應該否決該提議,他表示雖然EIP 1559確實很有趣,但是似乎它會對礦工造成很大的傷害。并認為如果該提議獲批將會影響大型礦工和礦業集團繼續參與以太坊網絡挖礦。目前V神尚未回復。
據悉,EIP 1559由V神于2018年首次提出,預計使以太坊區塊鏈的收費市場更加可預測并緩解擁堵。[2020/10/20]
為了支持存款和提款,我們增加了輸入和輸出在rollup狀態“外部”的交易的功能。如果一個batch中包含來自外部的輸入,則提交到該batch的交易也需要將資產轉移到rollup合約。如果一個batch中包含來自外部的輸出,則智能合約在處理該batch時會發起提款。
這就是rollup的工作原理了。但還有一個重要細節:如何得知batches里的后狀態根(post-stateroot)是正確的呢?如果某人能夠提交一個具備任意后狀態根的batch,而無需承擔任何后果,他們完全可以將rollup中的所有代幣都轉移給自己。這個問題很關鍵,因為由此誕生了兩種不同的解決方案,這兩種解決方案又衍生出了兩種不同的rollups。
Optimisticrollups與ZKrollups
這兩種rollups為:
1.Optimisticrollups,其解決方案為欺詐證明(fraudproofs):這類rollup會追蹤所有歷史狀態根以及每個batch的哈希值。如果任何人發現某個batch的后狀態根不正確,他可以向區塊鏈發布一個證明,證明該batch計算錯誤。合約會對證明進行驗證,并且對該batch及其之后的batches進行回滾。
2.ZKrollups,其解決方案為有效性證明(validityproofs):每個batch都包含一個稱作ZK-SNARK的密碼學證明(例如使用PLONK協議),以證明后狀態根是正確執行batch的結果。無論計算量有多大,該證明都能在鏈上得到極速驗證。
這兩種rollup之間存在復雜的權衡:
總的來說,我個人的觀點是,在短期內,optimisticrollup的顯著優勢在于其通用的EVM計算,而ZKrollup更可能被用于支付、交易和其他特定用例。但中長期來看,隨著ZK-SNARK技術的成熟,ZKrollup會在所有用例中發揮出優勢。
解構欺詐證明
Optimisticrollup的安全性保障主要來自于:如果有人在rollup中發布了一個無效的batch,其他任何跟進該鏈的用戶監測到欺詐行為都可以發布欺詐證明,向合約證明該batch的無效性,并進行回滾。
在上圖中,聲稱某batch?無效的欺詐證明會包含綠色的數據:如果要證明特定賬戶被該batch讀取和/或被修改,則需要該batch本身(可以對照存儲在鏈上的哈希值進行檢查)以及Merkle樹的各個部分。不需要提供圖中黃色的節點,因為他們能夠被綠色的節點重構。該數據已經足夠執行batch并計算后狀態根了(這與無狀態客戶端驗證單個區塊的方式幾乎相同)。如果經計算的后狀態根以及獲得的batch中的后狀態根不一致,那么該batch就是無效的。
動態 | V神發起DAI貸款年利率超國債的投票 半數用戶認為DAI隨時可能面臨崩盤:以太坊創始人V 神今日在推特發起關于“DAI 的貸款年利率與美國 10 年國債收益率差距”的投票,V 神指出,DAI 貸款可以提供 11.5% 的年利率。而美國 10 年期國債收益率僅為 1.5%。為什么會出現這種差距呢?,同時給出了四個選項,1. 臨時現象,受市場影響;2. DAI 有隨時崩盤的風險;3. Compound 倒閉的風險;4. 其他,請回復在評論中。截至目前,結果顯示超半數用戶認為DAI隨時可能崩盤的風險導致了它的高年利率。V神在評論中表示,這就是為什么我認為“貸款”是整個defi的錯誤隱喻的部分原因。大多數在發展中國家發放的貸款并不是由其他高流動性加密資產(或一般的高流動性或數字資產)擔保的150%。[2019/8/24]
可以保證如果某個batch不正確,但之前所有的batches都是正確的,那么就能夠創建一個欺詐證明以表示該batch是不正確的。請注意對之前batch的聲明:如果有超過一個無效的batch被發布到rollup中,那么最好嘗試證明最早的無效batch。也可以說,如果某個batch是正確的,那么永遠都無法創建一個欺詐證明表示其無效。
如何進行壓縮?
一筆簡單的以太坊交易(發送ETH)大小約為110字節。而在rollup上進行ETH轉賬,大小僅為約12字節:
其中一部分只是簡單的高級編碼:以太坊的RLP編碼方式在每個值上會浪費1字節。但是其中還包括一些機智的壓縮技巧:
Nonce:這個參數的主要目的是預防重放攻擊。如果帳戶的當前隨機數為5,則該帳戶的下一個交易記錄必須包含隨機數5,但是交易一經處理,該帳戶中的隨機數將增加為6,因此無法再次處理該交易。在rollup中,我們可以完全省去隨機數,因為我們可以直接從前狀態中恢復隨機數;如果有人嘗試使用先前的隨機數重放交易,簽名將無法驗證,因為會依據包含較高隨機數的數據來對簽名進行檢查。
Gasprice:我們可以允許用戶按固定gas價格范圍進行支付,例如2的16次冪。或者我們可以在每個batch中收取固定的gas費用,甚至可以將gas費的支付完全移出rollup協議,讓交易者使用通道向batch創建者支付相應費用。
Gas:同樣地,我們可以將總gas設定為2的多次冪形式。或者我們也將gas限制在batch的水平。
To:可以用index來替換20字節的地址(例如,如果某地址是被添加到默克爾樹中的第4527個地址,我們只需使用index4527來表示即可。然后向狀態添加一個“子樹”(subtree)來存儲index和地址本身的映射關系)。
Value:我們可以用科學記數法儲存值。在大多數情況下,交易只需要1-3個有效位。
Signature:我們可以使用BLS聚合簽名將大量簽名聚合成一個約為32-96字節(取決于協議)的簽名。該聚合簽名可以依據消息集和batch的發送者集一次性進行檢檢查。表中的“~0.5”表示一個聚合簽名中可以包含的簽名數量是有限制的,因為需要能夠在一個欺詐證明中對聚合簽名進行驗證。
ZKrollups特有的一個重要壓縮技巧是:如果交易的一部分信息僅用于驗證,并且不用于計算狀態更新,那么該部分可以移至鏈下。Optimisticrollup無法做到這一點,因為該數據仍然需要存在鏈上,以備需要在欺詐證明中進行檢查的不時之需。而在ZKrollup中,SNARK已經證明了batch的正確性,也就是說驗證所需的數據已經齊全。
具備隱私保護功能的rollups是一個重要例子:在optimisticrollup中,每筆交易中用于隱私保護的ZK-SNARK證明需要在鏈上,需要占據約500字節。而在ZKrollup中,包含整個batch的ZK-SNARK已經證明了“內部”ZK-SNARK的有效性。
這些壓縮技巧是rollups擴容性的關鍵,否則rollups擴容性相較底層連只能提高約10倍(雖然對于某些特定的計算密集型應用來說,簡單的rollups方案已經足夠),而對數據進行壓縮后,幾乎對所有應用來說,擴容性都可以實現100倍以上的提升。
誰能批量打包交易并提交?
對于optimisticrollups和ZKrollups中交易的打包權有許多說法。一般來說,任何想要打包交易并且提交的用戶,必須要鎖定大量存款。如果用戶提交了包含欺詐/無效交易的batch(例如包含無效狀態根),那么該用戶的存款的一部分會被銷毀,另一部分則作為欺詐證明者的獎勵。除此之外,還存在其他可能性:
完全“無政府狀態”:任何人都可以在任何時候批量打包交易并提交。這是最簡單的方式,當然也存在缺陷。尤其是多個參與者同時嘗試提交但最終只有一個batch能被成功打包。這會導致大量生成證明的工作和/或發布batches的gas被白白浪費。
中心化處理:存在一個行為者即排序者(sequencer)提交batches(但提款存在例外:通常來說一個用戶可以首先提交提款請求,如果排序這沒有在下個batch中處理該提款,那么該用戶能夠自己提交一個batch)。這是最“高效”的方式,但是依賴于一個中心化的角色。
排序者拍賣:通過定期舉行拍賣的形式來確定誰有權成為下一個周期的排序者。其優點在于它可以籌集資金,并通過例如由rollup控制的機制(例如DAO)來進行分配。(參見MEV拍賣)
PoS集隨機選擇:任何人都可以將ETH(或是rollup協議的代幣)存入rollup合約,然后在存款人中隨機選擇每個batch的排序者,被選中的可能性與鎖定資產成一定比例。這個方式的主要缺點在于會有大量資本被鎖定,而這是不必要的。
DPoS投票:通過拍賣確定一個排序者,如果該行為人表現不佳,那么代幣持有者可以通過投票將其驅逐,并發起新的拍賣。
將批量打包和狀態根處理相獨立
目前正在開發的一些rollup項目采用了“獨立批量打包”的方式,也就是將提交二層交易的batch和提交狀態根的過程分離。這種做法的優勢在于:
1.使得多個排序者能夠同時發布batches,以提高扛審查性,而避免了因為一些batches被首先打包而導致其他batches無效的問題。
2.如果某個狀態根是無效的,我們不需要回滾整個batch,可以只回滾狀態根,并等待他人提供該batch的新狀態根。這保障了交易發送方的交易不會被回滾。
總之,在效率、簡潔性和抗審查性等方面的權衡十分復雜,許多方案也在進行探索。目前要判斷哪些概念是最佳組合還為時尚早,時間會證明一切。
rollup能在多大程度上實現擴容?
在現有的以太坊鏈上,gas上限是1250萬,一筆交易里,每個字節的數據花費16gas。這意味著如果一個區塊只包含一個batch(我們說相當于打包了一個zkrollup,在證明驗證上花費50萬gas),那一個batch可以包含?(1200萬/16)750,000字節的數據。如上文所示,對于一個以太坊轉賬的rollup,每一次用戶操作只需12個字節,也就是說該批交易可以包含高達6.25萬筆交易。現在平均出塊時間為13秒,即相當于大約每秒4807筆交易(相比之下,現在直接在以太坊上轉賬是每秒1250萬/21000/13~=45筆交易)
以下表格是其他用例的例子:
擴容的最高水平是這樣計算的:/*1200萬/1250千萬
現在,值得注意的是這些數據都過于樂觀了,原因有幾個。最重要的是,一個區塊幾乎不可能只包含一個batch,因為最起碼會有多個rollup。第二,存款和提款行為會一直存在。第三,在短期,使用率會比較低,所以固定成本會占主導。但即使這些因素都考慮到了,超過100倍的擴容水平也有望成為常態。
如果我們想每秒交易量達到1000-4000呢(取決于特定的用例)?這就是eth2數據分片發揮作用的時候了。分片協議為每12秒提供16MB的空間來容納任何數據,且系統確保數據可用性的共識。數據空間可以被rollup使用。這大約每秒1398kb的空間比現在以太坊鏈上每秒大約60kb提高了23倍,且在更長期來看,數據容量有望繼續增加。因此,使用eth2分片數據的rollup可以以每秒約10萬筆交易的吞吐量批量處理,在未來可能更多。
Rollup上還有哪些未解決的困難?
盡管rollup的基本概念現在已為人所了解,我們確信它們是完全可行且安全的,現在多種rollup已經部署到主網上,但rollup設計還有很多領域未被充分探索,以及在實現橋接以太坊生態上大部分的活動到rollup上,以利用它們的可擴容性這件事上,還存在不少困難。一些關鍵的困難包括:
用戶和生態的入駐——使用rollup的應用不多,用戶也不熟悉rollup,只有少數錢包開始集成rollup。商家與慈善機構也還不支持這種支付方式。
跨rollup交易——高效地從一個rollup移動資產與數據(例如:預言機輸出)到另一個,而無須產生經由基礎層的費用。
審計激勵——如何最大程度提高至少有一個誠實節點完整驗證一個optimisticrollup的機會,使得出現問題時他們會發布欺詐證明?對于小規模rollup(高至每秒幾百筆交易),這個問題不大,因為對礦工來說只是舉手之勞,但對于大規模的rollup來說,還需要更充分的理由以說服礦工去做驗證。
探索plasma和rollup之間的設計空間——是否有技術可以放一些狀態更新相關數據到鏈上而不是全部的數據,且這些數據會產生有用的東西?
最大程度提高提前確認的安全性——很多rollup都會為了更快的用戶體驗(UX)提供“提前確認(pre-confirmation)”,這里排序者(sequencer)會馬上承諾某筆交易會被打包到下一個batch里,而如果此承諾沒有被兌現,該排序者將損失其保證金。但這個方案的經濟安全性是有限的,因為排序者可以同時對非常多的人作出非常多的承諾。這個機制可以改善嗎?
提高缺席排序者的回應速度——如果一個rollup的排序者突然離線了,在最短的時間內以最低的成本從這種情況恢復過來是很重要的,方法不是快速且低成本地大規模退出到另一個rollup,就是換一個排序者。
高效ZK-VM——生成一個ZK-SNARK證明,證明通用的EVM代碼(或一些現有的智能合約可以編譯成的不同VM)已被正確執行和有一個給定結果的。
結論
Rollup是一個強大、新穎的二層擴容范式,并有望成為以太坊在中短期未來(也可能是長期)擴容的基石。以太坊社區已經表現出對rollup的強烈興趣,因為不像之前在二層擴容的嘗試,它們可以支持通用的EVM代碼,使得現有的應用可以輕易遷移。Rollup有一個重要的妥協:交易處理不是完全在鏈下進行,而是每筆交易留下一小部分數據在鏈上。
Rollup有很多種,在設計空間上有很多選擇:可以是使用欺詐證明的optimisticrollup,也可以是使用有效性證明(即ZK-SNARKs)的ZKrollup。排序者(可以發布打包好的batch到鏈上的用戶)可以是中心化的行動者、自由放任者、或兩者間的很多可能性。Rollup還是早期的技術,其開發在不斷快速地進行中,但它們是可行的,且其中有些(比較有名的是路印、ZKSync、和DeversiFi)已經運行數月了。期待今年rollup會有更多令人振奮的成果。
來源|?vitalik.ca
作者|VitalikButerin
原文鏈接:
https://vitalik.ca/general/2021/01/05/rollup.html
尊敬的用戶:因行情波動,導致杠桿ETF產品BTC3S的單價跌破10USDT、ETH3S的單價跌破1USDT觸發了杠桿ETF產品清算重啟機制.
1900/1/1 0:00:00鏈聞消息,總部位于瑞典的游戲工作室AntlerInteractive為其區塊鏈游戲MyNeighborAlice募集了210萬美元資金.
1900/1/1 0:00:00消息面:今天比特幣再次創新高,對于我們來說可能只是平凡的一天,但是對于M國來說,今天是T朗普決定能否擔任總統的最后一個時間機會,往常今天只是一個程序性和儀式感的日子,但是他不接受選舉結果.
1900/1/1 0:00:00Gate.io將于2021年1月7日19:00上線Elrond(EGLD)交易。EGLD令牌是Elrond網絡的原生的價值單位.
1900/1/1 0:00:00DeFi正如一片剛剛開始墾殖的“新月之地”,各式各樣的重要創新在不斷涌現,我們期待著它的擴張和對傳統金融的征服。DeFi并非是新詞新概念,卻在2020年大放異彩.
1900/1/1 0:00:001.王永利:數字人民幣不應定位于M02020年10月中旬,深圳以財政出資1000萬元,以注冊成功的個人抽簽中標方式投放5萬個紅包,通過指定銀行轉換成數字人民幣.
1900/1/1 0:00:00