對于以太坊而言,Rollups 是短中期,也可能是長期的唯一無須信任的可擴展性解決方案。以太坊 L1 上的交易費在幾個月以來一直很高,現在更迫切的是采取一切必要的行動,幫助推動整個生態系統轉移到 Rollups。Rollups 已經大大降低了許多以太坊用戶的費用:l2fees.info?網站時常顯示 Optimism 和 Arbitrum 網絡的費用要比以太坊基礎層本身低了約 3-8 倍,而 zk-Rollups 有著更好的數據壓縮,并且可以避免包含簽名,因此其費用要比以太坊基礎層低約 40-100 倍。
然而,對于許多用戶來說,即便是這些 (Rollups中的) 費用也還是太過昂貴了。很長一段時間以來, 數據分片 (data sharding) 被認為是解決當前形式的 Rollups 的長期不足的解決方案,數據分片有望在以太坊鏈上為 Rollups 增加大約 1-2MB/s 的專用數據空間。本文描述了實現該解決方案的一條實用的路徑,能夠盡可能快地為 Rollups 解鎖數據空間,并隨著時間的推移增加更多額外的空間和安全性。
Step 1: 擴展交易 calldata
目前現有的 Rollups 使用了交易 calldata。因此,如果我們想要在無需讓各個 Rollups 團隊做出任何額外工作的情況下,在短期內提升 Rollups 的容量并降低成本,我們應該降低交易 calldata 的 Gas 成本。當前的平均區塊大小還遠沒有達到威脅以太坊網絡穩定性的大小,因此這樣做是有可能安全的,盡管可能需要一些額外的邏輯來預防非常不安全的邊緣情況。
Gravity Finance項目Discord服務器已被入侵:金色財經報道,據CertiK監測,Gravity Finance項目Discord服務器已被入侵,黑客發布了虛假空投鏈接。在團隊確認他們已經恢復服務器的控制權之前,請勿點擊任何鏈接。[2023/4/6 13:47:37]
參見 EIP-4488 提案,或者另一個 (更簡單但效果更溫和的) EIP-4490 提案。
EIP-4488:
https://github.com/ethereum/EIPs/pull/4488
EIP-4490:
https://github.com/ethereum/EIPs/pull/4490
EIP 4488 應該能將每個 slot 可用于 Rollups 的數據空間增加至理論上最大約 1 MB,并將 Rollups 上的成本降低約 5 倍。這可以比后面的步驟更快地實現。
Step 2: 幾條分片
與此同時,我們可以開始做一些工作來推出“適當的”分片。想要以完整 (功能) 的形式實現分片還需要很長的時間,但我們能做的是可以一步步地實現它,并從每一步中獲益。首先自然是要實現分片規范的“業務邏輯”,但需要使最先上線的分片數量非常低 (比如 4 條分片),以此來避免圍繞分片網絡的大多數難點。每條分片將在其自己的子網絡中廣播。默認情況下,驗證者將信任委員會,但如果他們愿意,他們可以選擇在每個子網絡中,但只有當他們看到了信標區塊確認的任何分片區塊的全部數據時,他們才會接收該信標區塊。
4萬枚ETH從Vitalik Buterin創建的合約地址轉出:11月24日消息,據WhaleAlert監測,4萬枚ETH從Vitalik Buterin創建的合約地址(0x22086開頭)轉出,該合約地址當前還持有逾25萬枚ETH,價值近3億美元。[2022/11/24 8:05:12]
分片規范本身并不是特別困難;它與最近發布的 Altair 硬分叉有著類似規模的樣板代碼更改 (Altair 的信標變更規范文件是 728 行,分片的信標變更規范文件是 888 行),因此可以合理地預計它可以在與 Altair 的實現和部署類似的時間框架內實現。
為了使分片數據 (sharded data) 實際上可被 Rollups 使用,Rollups 將需要能夠使其證明 (proofs) 進入到分片數據中。有兩個選擇:
增加?BEACONBLOCKROOT 操作碼;Rollups 將增加代碼來驗證根植于歷史信標鏈區塊根的默克爾證明 (Merkle proofs);
增加面向未來的狀態和歷史訪問預編譯,這樣當承諾方案 (commitment scheme) 在未來發生改變時,Rollups 就不需要更改它們的代碼。
這將使得每個 slot 的 Rollup 數據空間增加至約 2 MB (每個分片 250 kB * 4 個分片,再加上上文 Step 1 中擴大的 calldata)。
Vitalik Buterin與YC創始人已在社交媒體上互相取關:11月22日消息,以太坊聯合創始人Vitalik Buterin與Y Combinator聯合創始人Paul Graham已在社交媒體上互相取關。以太坊聯合創始人Vitalik Buterin此前發推諷刺Paul Graham的小道消息推文,并表示過去一周發現難以忍受的一個現象:人們散布謠言,很多人轉發它們,很多人開始根據這些謠言信息進行交易……總之,我認為我們不應該把“Trustme”的謠言交易合法化。這為操縱市場提供了成熟的空間,甚至可能造成波動。另一個更深層次的問題是,加密領域有一段悠久的歷史,人們利用謠言來誘導價格朝著有利于他們的方向波動。故意操縱市場并獲取收益并不符合加密金融文化。[2022/11/22 7:55:26]
Step 3: N 條分片,由委員會保護
將活躍分片的數量從 4 條增加到 64 條。此時分片數據將進入子網絡,因此屆時的 P2P 層必須已經足夠牢固,使得將其分割成更多數量的子網絡變得可行。數據可用性的安全性將基于大多數 (驗證者) 誠實假設,依賴于委員會的安全性。
這將使得每個 slot 的 Rollup 數據空間增加至約 16 MB (每條分片 250 kB * 64 條分片);我們假設此時 Rollups 將已經從以太坊執行鏈中遷移出來。
Vitalik Buterin:并不認為zkPorter具有比Optimistic Rollup更強的安全保證,且沒有緊密耦合性:以太坊聯合創始人Vitalik Buterin針對Matter Labs披露的zkPorter擴容方案表示:并不認為zkPorter具有比Optimistic Rollup更強的安全保證,寧愿將資產放在Optimistic Rollup中,而不是鏈下數據可用性系統中。zkPorter鏈下數據可用性的安全級別要低于基礎鏈,且沒有緊密耦合性(Tight coupling)。另一方面,分片中的數據可用性層將受到整個以太坊網絡的保護,并兼具緊密耦合性。如果某些應用程序同時使用鏈下數據可用性也是可以的,但前提是鏈下數據在基于分片的數據可用性可用之前明確為臨時措施,但是我認為這沒有必要。[2021/4/14 20:17:45]
Step 4: 數據可用性抽樣 (DAS)
添加數據可用性抽樣 (DAS) 以確保更高級別的安全性,使得即便是在大多數 (驗證者) 不誠實的攻擊情況下,用戶也能夠得到保護。數據可用性抽樣可以分階段來進行:首先,以非約束性的方式來允許網絡對其進行測試,然后將其作為接收信標區塊的必要條件,甚至可能先在某些客戶端上進行。
一旦完全引入了數據可用性抽樣,分片的鋪展就完成了。
基于分片的 Optimistic Rollups 和 ZK Rollups
聲音 | 江卓爾:分片提升容量難度大時間長 故而Vitalik提出使用BCH或者ETC作為以太坊數據層:7月25日消息,萊比特礦池CEO江卓爾表示,分布式系統(去中心化系統)有一個不可能三角,稱為分布式系統CAP定理,指的是在一個分布式系統中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分區容錯性),三者不可兼得。Vitalik提出用分片方法提升容量,但分片方法的難點是一致性,也就是CAP中的C,Consistency(一致性),這個是一個要挑戰不可能三角的開發,所以開發難度很大,時間長,所以Vitalik才提出使用BCH或者ETC作為以太坊數據層的短期方案,來解決ETH的燃眉之急。[2019/7/25]
當前的以太坊與實施分片之后的以太坊的一個主要區別就是,在分片的世界里,Rollup 數據實際上不可能成為向智能合約提交 Rollup 區塊的交易的一部分。相反,Rollup 數據的發布與 Rollup 區塊的提交將必須是分開的:首先,數據發布將把數據放到鏈上 (也就是放到分片鏈中),然后區塊提交將會提交區塊頭以及一個指向底層數據的證明。
Optimism 和 Arbitrum 已經為 Rollup 區塊的提交使用了一種兩步式設計,因此這對二者來說都將是一個很小的代碼更改。
對于 ZK Rollups,事情有點棘手,因為提交交易需要提供一個直接對數據進行操作的證明。它們可以通過 ZK-SNARK 來證明分片中的數據與信標鏈上的承諾相匹配,但這一操作是非常昂貴的。幸運的是,還有更便宜的替代方案。
如果該 ZK-SNARK 是一個基于 BLS12-381 的 PLONK 證明,那么它們可以簡單地直接將分片數據承諾作為輸入來進行打包。BLS12-381 分片數據承諾是一個 KZG 承諾,與 PLONK 中的承諾類型相同,因此可以作為公共輸入直接傳遞到證明中。
如果 ZK-SNARK 使用了一些不同的機制 (或者即便是 BLS12-381 PLONK 但有著一個更大的可信設置),那么它可以包含自己的數據承諾,并使用一個等效性證明 (proof of equivalence) 來驗證該證明中的承諾與信標鏈中的承諾是對相同數據的承諾。
分片世界中,誰將存儲歷史數據?
增加數據空間的一個必要條件是移除以太坊核心協議負責永久性維護達成共識的所有數據的屬性。因為這些數據量太大了。例如:
EIP-4488 理論上帶來的最大鏈大小是每 12 秒的 slot 為大約 1,262,861 字節,也即每年大約 3.0 TB,但實際上每年更有可能是約 250-1000 GB,尤其是在開始階段。
4 條分片 (每個 slot 為 1 MB) 每年會增加額外的約 2.5 TB。
64 條分片 (每個 slot 為 16 MB) 每年將帶來總計為約 40 TB 的存儲。
大多數用戶的硬盤驅動器的大小在 256 GB 和 2 TB 之間,1 TB 似乎是中間值。下圖是一項針對計算機硬盤空間有多大而在一組區塊鏈研究員中開展的內部調查的結果:
這意味著用戶當前可以運行一個節點,但如果此路線圖的任何一部分如果不進行修改就實施,那么用戶將無法運行節點。當然還有更大的驅動器可用,但用戶將必須竭力去購買它們,這大大增加了運行節點的復雜性。當前主要的解決方案是 EIP-4444,此提案消除了節點運營者存儲超過 1 年的區塊或收據的這一責任。在分片的情況下,這個 1 年的時長將很可能進一步縮短,而且節點將只需要負責他們積極參與的子網絡上的分片。
這就提出了一個問題:如果以太坊核心協議不存儲這些數據,誰來存儲?
首先,重要的是要記住,即使有了分片,數據量也不會那么大。是的,每年 40 TB 確實超出了運行“默認”消費硬件的個人的能力 (事實上,即便每年 1 TB 也還是如此)。然而,對于一個愿意投入一些資源并想辦法來存儲這些數據的人來說,這是在其可接受的范圍內的。當前一臺 48 TB 的 HDD (硬盤驅動器) 的售價是 1729 美元,一臺 14 TB 的是約 420 美元。出于可以獲得質押獎勵,某個運行了 1 個 32 ETH 驗證者插槽的人可能會愿意支付并存儲分片實施之后的整條鏈。因此,實際上,「沒有人會存儲某個分片的一些歷史數據以至于這些數據完全丟失」的這種情況似乎是不可能出現的。
那么誰將存儲這些數據?我的一些想法:
個人和機構志愿者;
區塊瀏覽器 (etherchain.org、etherscan.io、amberdata.io 等等) 將肯定會存儲所有數據,因為向用戶提供數據是它們的業務模式。
Rollup DAOs 指定并付費給參與者來存儲并提供與他們的 Rollup 相關的歷史數據。
歷史數據可以通過種子 (torrents) 進行上傳和共享。
客戶端可以自愿選擇隨機存儲區塊鏈的 0.05% 的歷史數據 (使用糾刪碼,這樣只有當許多客戶端在同一時間離線時才會丟失一小塊數據)。
Portal Network 中的客戶端可以隨機存儲一部分區塊鏈歷史數據,且 Portal Network 會自動將數據請求導向存儲了該數據的節點。
可以在協議中激勵歷史數據的存儲。
像 The Graph 這樣的協議可以創建激勵市場,其中的客戶端向服務器支付費用,從而獲取歷史數據和證明其正確性的默克爾證明。這就激勵了人們和機構來運行存儲歷史數據的服務器,并按需提供這些數據。
這些解決方案中的一些方案 (個人和機構志愿者、區塊瀏覽器) 已經是可用的了。而當前的 P2P 種子場景更是一個主要由志愿者驅動和存儲大量內容的生態系統的絕佳例子。其他基于協議的方案要更加強大,因為它們提供了激勵機制,但它們可能需要更長的時間來進行開發。從長期來看,通過這些 L2 協議來訪問歷史數據,可能要比通過當前的以太坊協議更加有效。
撰文:Vitalik Buterin,以太坊聯合創始人
加密市值的進一步增長,加密世界正吸引越來越多的機構參與其中。盡管數字資產非常不穩定且具有投機性,但為滿足客戶交易加密貨幣的巨大需求,并采用加密貨幣背后的技術,銀行業也逐步開始了加密活動.
1900/1/1 0:00:001.金色硬核 | 去中心化身份DID:Web3通行證隨著WEB3的發展,人們越來越認識到去中心化身份系統DID的重要性.
1900/1/1 0:00:00隨著元宇宙概念的爆發,以及 Axie Infinity 徹底點燃了 GameFi 鏈游的熱潮,近期各條鏈上 Play-to-Earn 類游戲持續火熱.
1900/1/1 0:00:00過去兩年間,非同質化通證NFT成為一股席卷世界的潮流,不僅以太坊等鏈上原生NFT如火如荼地迭代,阿里巴巴、騰訊、Facebook等國內外互聯網巨頭也進入這一領域.
1900/1/1 0:00:00近期元宇宙概念大熱。隨著Facebook(如今更名為Meta)“All In”元宇宙之后,更是將其熱度推高到巔峰.
1900/1/1 0:00:00Web 3.0 是萬維網的下一個時代。盡管 Web 多年來取得了許多進步,但許多用戶仍然擔心其當前結構對其施加的限制.
1900/1/1 0:00:00