以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

HARD:深度解讀 EIP-4844:Sharding 的一小步,以太坊擴容的一大步

Author:

Time:1900/1/1 0:00:00

撰文:YihanXu,ForesightResearch

在這篇報告中你可以了解到:

EIP-4844;

Proto-danksharding;

Danksharding;

KZGCommitment;

KZGCeremony;

Dynamicstatesharding;

最近社區參與度超標的KZGCeremony都刷到了吧,這個儀式到底在干什么?

簡單概括,KZGCeremony是實現EIP-4844不可繞過的一個初始化環節,而EIP-4844是實現以太坊sharding過程中的先行版本。

一、Sharding:以太坊擴容的長久之計

Sharding從數據可用性角度擴容,而rollup主要從執行層面擴容,一起緩解主網擁堵問題;我認為sharding可能是突破區塊鏈不可能三角的一次嘗試。

下面這張以太坊區塊大小的走勢圖可以從另一個角度說明數據層面擴容的必要性。從創世區塊開始,以太坊從底層架構到上層應用都在不斷地快速迭代,但平均區塊大小仍為90Kb左右,最高點也沒有質的突破。雖然Rollup從計算層切入,解決以太坊擁堵問題,但性能仍然受制于layer1的數據存儲能力。

由于實現過程的復雜度和安全性考慮,以太坊開發團隊將sharding分成了多個階段,其中就包括最近提到的proto-danksharding和danksharding。整個過程將會是一個歷時數年的更新;

在目前的以太坊的數據存儲模式下,只有少數特定高配置的機器可以加入網絡成為節點,而fullsharding之后ethereum不再需要每個節點都保存全部數據,在降低主網數據存儲成本的同時加強了安全性。

二、EIP-4844:短期高回報,Sharding的精簡先行版

EIP-4844=Proto-Danksharding;

Proto來自以太坊研究者的名稱

由于實現danksharding的復雜度很高,開發周期至少是以年為單位的。因此proto-danksharding是實現danksharding前對以太坊的擴容方案,主要實現了danksharding中的交易格式、precompile等設計;

1.Proto-danksharding概述

Proto-Danksharding主要引入了一種新的transactiontype,也就是blob-carryingtransaction。至此,Rollup的數據通過blob的形式以更低的成本向layer1傳輸,并作非永久存儲。同時,blob遠大于現在的calldata,可以更好地支持rollup上的高TPS。

工信部等五部門:將強化虛擬現實與區塊鏈、數字孿生等技術深度融合:11月1日消息,工業和信息化部、教育部、文化和旅游部、國家廣播電視總局、國家體育總局印發《虛擬現實與行業應用融合發展行動計劃(2022—2026年)》,發展目標包括,到2026年,產業生態持續完善。我國虛擬現實產業總體規模超過3500億元,虛擬現實終端銷量超過2500萬臺,培育100家具有較強創新能力和行業影響力的骨干企業,打造10個具有區域影響力、引領虛擬現實生態發展的集聚區,建成10個產業公共服務平臺。

計劃指出,圍繞近眼顯示、渲染處理、感知交互、網絡傳輸、內容生產、壓縮編碼、安全可信等關鍵細分領域,做優虛擬現實+內生能力,強化虛擬現實與5G、人工智能、大數據、云計算、區塊鏈、數字孿生等新一代信息技術的深度融合,疊加虛擬現實+賦能能力。[2022/11/1 12:04:59]

關于blob:

每個transaction最多掛2個blob;

每個block理想狀態包含8個blob,約為1MB,最多包含16個blob,約為2MB;

Blob不需要像calldata一樣作為historylog被永久存儲;

相比danksharding,節點還是需要對完整的DA進行驗證。

2.Blob-carryingtransaction解讀

給transaction掛上blob

作用

參考Vitalik在提案中給出的圖,Datablob和當前的calldata相似,rollup可以將交易、證明等數據通過blob上傳到layer1來保證dataavailability。

成本

Datablob的設計初衷是支持rollup高通量的交易,相比同等大小的calldata,blob的成本將會降低很多。因此,rollup在維持數據可用性上花費的gas相比之前會顯著降低。

容量

每個blob的大小約為125kB。

3.Blob-carryingtransaction的價值和挑戰

價值

可以把blob看成一種緩存,rollup提交的交易數據從此以緩存的形式存在。降低對存儲硬件的要求,為以太坊提供額外的數據擴容并降低gas成本。

挑戰:對以太坊節點硬件性能的要求

Ethereum當前平均區塊大小只有~90kB,但是一個blob就有~125kB

根據EIP-4844的設計,每個slot正常情況下約為1MB,因此每年增加的數據量為:

國務院辦公廳:推動區塊鏈等技術與醫療服務深度融合:國務院辦公廳發布關于推動公立醫院高質量發展的意見,其中指出推動區塊鏈等新一代信息技術與醫療服務深度融合,建立健全分級分層分流的重大疫情救治體系。推進電子病歷、智慧服務、智慧管理「三位一體」智慧醫院建設和醫院信息標準化建設。大力發展遠程醫療和互聯網診療。推動手術機器人等智能醫療設備和智能輔助診療系統的研發與應用。建立藥品追溯制度,探索公立醫院處方信息與藥品零售消費信息互聯互通。(中國政府網)[2021/6/7 23:17:29]

1MB/block*5block/min*43200min/month*12month/year=?2.47TBperyear

每年增加的數據大小遠超過了以太坊數據總量,這樣的存儲方案顯然是不高效的。

解決方案

從短期擴容效果看,由于每個節點仍然需要儲存全量歷史數據,在實現EIP-4844的同時,對一段時間窗以外的blob進行自動刪除;

從sharding的長期利益看,實現EIP-4444,即節點不需要存儲全量歷史數據,而是只需要參照historyexpiry,存儲特定時間之后的數據;

這兩種解決方案從不同程度上緩解了blob-carryingtransaction在存儲空間上的tradeoff。

4.KZGCommitment

KZGCommitment是EIP-4844中采用的多項式承諾方案

解析KZGcommitment

KZG是作者AniketKate,GregoryM.Zaverucha和IanGoldberg姓氏的縮寫,他們在2010年發表了多項式承諾方案論文“Constant-SizeCommitmentstoPolynomialsandTheirApplications”,并且這個方案在plonk-style的zk-snark協議中有很廣泛的應用。

參考DankradFeist演講中的示意圖,KZGroot類似Merkleroot,區別在于KZGroot承諾一個多項式,即所有position都在這個多項式上。基于proto-danksharding的場景,KZGroot承諾了一堆數據,其中的任何一個數據都可以被驗證屬于這個整體。

這也是為什么KZGcommitment在兼容性上對后面實現DAS更友好。

KZGcommitment的流程如下:

Prover:提供證明,計算data的commitment,prover無法改變給定的多項式,并且用于證明的commitment只對當前這一個多項式有效;

FilDA與HOGT達成深度戰略合作:據官方消息,FilDA與HOGT達成深度戰略合作,雙方將在DeFi生態、社區合作、資源共享等多領域展開合作。

據了解,去中心化借貸平臺FilDA將為HOGT導入線上30000+用戶,支持HOGT生態建設。HOGT也將深度支持FilDA的去中心化借貸業務。

據悉,HOGT上線前30分鐘,TVL已突破1億USDT。[2021/5/16 22:08:14]

Verifier:接收prover發送的commitmentvalue并進行驗證,確保prover提供了有效的證明。

KZGCommitment的優勢

我認為主要出于對成本和安全性的思考,可以歸納但不局限于以下幾點:

成本

KZGcommitment具備快速驗證、復雜度相對更低、簡潔的特點;

不需要提交額外的proof,因此成本更低、更省bandwidth;

數據觸達所需的Pointevaluationprecompile可以獲得更低的成本。

安全

假設出現了failure,也只會影響commitment對應的blob中的數據,而不會其他深遠的影響。

更兼容

縱觀sharding的整體方案,KZGcommitment對DAS方案兼容,避免了重復開發的成本。

5.KZGCeremony(trustedsetup)

KZGCeremony是為KZGCommitment提供trustsetup,目前吸引了超過20,000participants的參與和貢獻,已經成為歷史上最大規模的trustsetup。

最近社區參與熱情高漲的KZGCeremony就是為EIP-4844采用的KZGcommitment提供trustsetup;

KZGCeremony的流程

參考Vitalik的流程圖,任何人都可以作為participants貢獻secret并與之前的結果進行混合產生一個新的result,以此類推,通過套娃的形式獲得最終的SRS,并協助完成KZGcommitment的trustsetup

trustsetup

EIP-4844中采用了一種常見的multi-participanttrustsetup,即powers-of-tau;

遵循1-of-N可信模型,不管多少人參與generatingsetup的過程,只要有一個人不泄漏自己的生成方式,可信初始化就是有效的;

長沙高新區與深圳今日人才將依托區塊鏈等促進人才和產業深度融合:9月3日下午,長沙高新區與深圳今日人才信息科技有限公司(簡稱“今日人才”)舉行簽約儀式,標志著今日人才華中區總部正式落戶長沙高新區。根據簽約協議,雙方將依托區塊鏈、大數據、人工智能等技術促進人才和產業的深度融合,搭建人才與崗位智能匹配的“人才滴滴平臺”,革新傳統人力資源服務模式的瓶頸,為長沙高新區乃至長沙市人力資源服務升級提供技術支撐。(長沙晚報)[2020/9/4]

必要性

KZGcommitment的trustsetup可以簡單理解為:生成一個在每次執行cryptographicprotocol時需要依賴的一個參數,類似于zk-snark需要可信初始化;

Prover在提供證明時,KZGcommitmentC=f(s)g1。其中f是評估函數,s就是KZGtrustedsetup最終獲得的finalsecret;

可以看出finalsecret是生成多項式承諾的核心參數,而作為獲取這個核心參數的可信流程,這次KZGCeremony對于整個sharding的實現非常重要。

6.EIP-4844帶來的變化

Rollup

參考ethresear上給出的示意圖,rollup需要將statedelta、KZGcommitment的versionedhash包含在calldata中進行提交

可以發現不同的是,calldata只包含一些數據量小的,比如statedelta、KZGcommitment,而將包含大量交易數據的transactionbatch放到了blob里。

有效降低成本,放calldata里很貴;

降低對區塊空間的占用

安全性

Dataavailability:Blob存儲在信標鏈上,等同于layer1的安全性;

歷史數據:節點不會只會將blob存儲一段時間,需要layer2rollup做永久數據存儲,因此安全性依賴于rollup。

成本

Proto-Danksharding引入了新的交易類型,低成本數據格式blob的加入無疑會讓rollup的成本進一步降低,取決于實際鏈上應用和實現進展,優化后rollup的成本可能降低x10甚至x50;

同時EIP-4844引入了blobfee;

Gas和blob將會分別有可調節的gasprice和limit;

Blob的收費單元還是gas,gasamount隨traffic變動,以此維持每個block平均掛8個blob的目標

管交所BGOEX與三體鏈TBC達成深度合作:據官方消息,管交所BGOEX與三體鏈TBC正式達成深度合作,共拓三體鏈生態版圖。三體鏈是基于先進的數學模型和經濟思維打造的一個區塊鏈社會生態,致力于構建公平的財富上升通道,突破階級的壁壘將財富歸于大多數人,實現社區共建共贏。后期管交所BGOEX將強勢賦能三體鏈TBC,助力優質項目三體鏈TBC生態建設。[2020/6/1]

Precompile的實現

Blob中的數據本身無法被直接觸達,EVM只能獲取datablob的commitment。因此需要rollup提供precompile來驗證commitment的有效性.

下面分析兩種EIP-4844中提到的precompile算法

Pointevaluationprecompile

證明多個commitments指向同一數據;

主要針對zk-rollup,rollup需要提供2種commitments:1.KZGcommitment;2.zk-rollup本身的commitment;

對于optimisticrollup,大多數已經采用了multi-roundfraudproof的機制,finalroundfraudproof所需的數據量較小。因此,采用pointevaluationprecompile能達到更低的成本

Blobverificationprecompile

證明versionedhash和blob是有效對應的;

optimisticrollup在提交欺詐證明時需要access全量數據,因此先驗證versionedhash和blob合法,再進行fraudproofverification

三、Danksharding:邁向fullsharding的重要一步

Danksharding的命名來自以太坊研究員DankradFeist

1.擴容:進一步擴充Rollup的緩存空間

在proto-danksharding實現后,由于新的交易格式引入了blob,每個區塊可以平均額外獲得1MB的緩存空間。Danksharking實現后,每個區塊額外16MB,最大允許32MB。

2.Data?availability:存儲和驗證策略更高效

相比proto-danksharding要求全節點下載全量數據,Danksharking實現后以太坊節點只需要對blob抽樣。Sampling后的數據會分布在全網節點中,并可以組成完成的datablob。

DAS:高效抽樣檢查

通過糾纏碼幫助全網節點在下載部分數據的情況下更容易發現原始數據的丟失的概率,從而提升安全性

3.安全性:基本不變

由于每個節點不再保存全量歷史數據,從數據可用性、備份和抽樣檢查的角度出發,安全性由至少一個節點保存全量數據變為多個節點存儲部分數據,并最終還原完整數據。

雖然乍一看對單點的依賴安全性遠高于對多點的依賴,但是以太坊網絡中的節點數量夠多,完全可以保證數據備份的需求,因此安全性并不會有很大變化。

4.新的挑戰:對blockbuilder的要求提升

雖然驗證者不需要下載并保留全量歷史數據,對bandwidth和存儲硬件的要求得到了緩解,但是區塊創建者仍然需要上傳包含全量transactiondata的blob數據。

這里簡單介紹一下PBS(proposer/builderseparation),參考Dankrad給出PBS在danksharding方案中的應用圖:

將負責出塊負責人的角色拆分為proposer和builder。最初是為了做anti-MEV設計的提案,在danksharding的設計中為了降低區塊創建時對bandwidth的要求。

四、其他sharding方案:Shardeum的動態分片

Shardeum是EVM兼容的layer1公鏈,與以太坊的staticsharding方案不同,shardeum通過dynamicstatesharding的方案提升底層可擴展性和安全性,同時,天然地保證較高的去中心化程度;

1.Dynamicstatesharding

優勢

Dynamicstatesharding帶來最直觀的優勢在于linearscaling,接入網絡的節點可以非常高效的被sharding算法動態分組,并快速響應,提升區塊鏈網絡的TPS。在dynamicstatesharding的設計中,每個節點會覆蓋不同range的address,并且覆蓋范圍又會有冗余設計以保證高效的sharding和安全性。

場景內實現

拋開生態的復雜度,單從兩種技術實現的角度看,dynamicstatesharding的難度大于staticsharding。可以看出Shardeum的技術團隊在sharding的技術層面有很深的積累,團隊之前在Shardustechnology上的研發也對這條公鏈的底層技術做出了很大貢獻,甚至在項目早期階段很好的展示了dynamicstatesharding所帶來的linearscaling。

2.Shardeum綜合歸納

產品

將節點劃分到不同的group,參考divideandconquer的思路,把計算和存儲的workload進行分流,從而允許更高程度的并行處理。因此,可以容納更多節點加入,進一步提升公鏈的throughput和去中心化程度。

團隊

市場經驗豐富,敘事能力超強,對動態分片研究很深。

技術

針對自己的場景設計了合適的sharding方案(dynamicstatesharding)和共識的設計(ProofofStake+ProofofQuorum),以提升可擴展性為第一目標,保證更高程度的去中心化和安全性。

進度

將在2023-02-02launchbetanet,值得關注。

五、對sharding的思考和展望

Sharding是以太坊擴容的長久之計,也是一個價值巨大、意義深遠的長期方案。實現sharding的過程中,現有所有方案都可能被不斷迭代,包括現在提到的proto-danksharding、danksharding等,值得持續關注;

對sharding大方向的理解很重要,但是每一個實現fullsharding過程中的提案所采納的技術方案同樣值得關注,并且我相信也會涌現很多相關的優秀團隊和項目;

Sharding是對一種擴容技術的統稱,但具體落地的方案并不是只有一種。需要認識到不同的公鏈會有適合自己場景的sharding方案。比如danksharding中的一些設計也只適合以太坊網絡,安全性的tradeoff需要大量的節點來抵消;

Sharding和其他擴容方案的合理結合對于可擴展性的提升1+1>2。目前的Danksharding并不是自成一派的擴容方案,而是和以太坊生態的其他實現相輔相成的。比如Danksharding和rollup一起,為以太坊擴容達成更好的效果。

Reference

https://notes.ethereum.org/@dankrad/kzg_commitments_in_proofs

https://notes.ethereum.org/@dankrad/new_sharding

https://vitalik.ca/general/2022/03/14/trustedsetup.html

https://notes.ethereum.org/@vbuterin/proto_danksharding_faq#Why-use-the-hash-of-the-KZG-instead-of-the-KZG-directly

https://ethresear.ch/t/easy-proof-of-equivalence-between-multiple-polynomial-commitment-schemes-to-the-same-data/8188

https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html

https://notes.ethereum.org/@dankrad/new_sharding

https://eips.ethereum.org/EIPS/eip-4844

https://www.eip4844.com/

https://biquanlibai.notion.site/Data-Availability-caa896aae59d489b98f2448f17b01640

https://docs.google.com/presentation/d/1-pe9TMF1ld185GL-5HSWMAsaZLbEqgfU1sYsHGdD0Vw/edit#slide=id.g1150d91b32e_0_474

https://ethresear.ch/t/a-design-of-decentralized-zk-rollups-based-on-eip-4844/12434

Tags:INGSHAHARDSHARDlingose幣行情RoshamboHard ProtocolGenesis Shards

比特幣行情
DEF:a16z:如何監管 Web3 應用程序?

原文標題:《RegulateWeb3Apps,NotProtocolsPartII:FrameworkforRegulatingWeb3Apps》作者:MilesJennings.

1900/1/1 0:00:00
COB:Cobo 神魚:2023 尋找新的敘事邏輯

撰文:神魚Cobo,聯合創始人兼CEO 關于加息和FTX 首先,2022年最大的宏觀影響因素是加息,這對包括加密貨幣在內的全球資產帶來壓力,加上加密貨幣市場內部出現了類似FTX崩潰這樣的事件.

1900/1/1 0:00:00
ABU:FTX 破產案中唯一獨善其身之人,Alameda 前聯席 CEO Sam 為何急流勇退

原文標題:《MeetSamTrabucco,theAlamedaexecwhooversawthedevelopmentofthecryptohedgefund''sultra-riskytra.

1900/1/1 0:00:00
MOS:開工大吉!過去 7 天,你可能錯過了這些熱點和生態機會

整理:念青,ChainCatcher一、過去7天發生了哪些重要事件1、美國政府發布減輕加密貨幣風險的路線圖當地時間1月27日,美國白宮官網發布《減輕加密貨幣風險的路線圖》.

1900/1/1 0:00:00
TAL:上周加密市場共發生 19 起公開融資事件,環比上周大幅增加,但相比去年同期有所下滑 | 投融資周報

整理:西昂翔,ChainCatcher據ChainCatcher不完全統計,2023年1月9日-1月15日期間,區塊鏈和加密行業共發生19起公開投融資事件,累計融資約7400萬美元.

1900/1/1 0:00:00
ARE:L1 EVM 區塊鏈 Flare 上線,并向用戶空投 42.8 億個 Flare 代幣

Layer1EVM區塊鏈Flare上線FlareNetwork于當地時間周一正式上線并向用戶空投了42.8億個Flare代幣flr,根據2020年12月快照.

1900/1/1 0:00:00
ads