昨天在日本大阪舉辦的Devcon5大會上,ConsenSys創始人透露稱以太坊2.0的phase1-2階段將大大提前,可能在2020年底就可以推出,而這比原計劃要提前近兩年的時間。
那這究竟是怎么一回事呢?是開發者們實在太給力,以至于團隊能超前完成任務了?
當然不是這個原因,真正的原因是:以太坊2.0原分片方案實施難度太高,為了加快落地,研發團隊對其進行了簡化。
為此,以太坊創始人Vitalik剛發布了還熱乎的“減少分片數量,加快跨分片通信”的提議。
那這個新提議的具體內容有哪些呢?
原文在這里:https://notes.ethereum.org/@vbuterin/HkiULaluS
太懶不看?給你核心要點:
不再有持續分片鏈的概念,相反,每個分片區塊都是直接的交聯。提議人發出提議,交聯委員會負責批準,然后完成任務;
分片數從之前的1024減少到64,分片區塊大小從kB增加到kB,總分片容量為1.3-2.7MB/s,具體取決于slot時間。如果需要的話,分片數量和區塊大小可隨時間的推移而增加,比方說10年后最終達到1024個分片,以及1MB區塊。
L1和L2層進行了諸多簡化:所需的分片邏輯更少,不需要layer-2跨分片加速,因為“本地”跨分片通信是在1個slot時間內發生的,(iii)不需要DEX來促進支付跨分片txfee,(iv)EE可以變得更簡單,(v)無需混合序列化和哈希;
Alchemy:以太坊賬戶抽象提案EIP-4337已在主網上部署:金色財經報道,Web3開發平臺Alchemy在社交媒體上宣布,以太坊賬戶抽象提案EIP-4337已在主網上部署,未來將為我們帶來實現的工具。1.無縫的用戶入職、2.更多的賬戶安全、3.無Gas費交易。
一個全新的web3體驗就在眼前。[2023/3/9 12:50:22]
主要缺點:(i)信標鏈開銷會較大,分片區塊時間會變長,較高的“突發性”帶寬需求,但“平均”帶寬需求會是較低的。
序言/根本原因
當前的以太坊2.0體系結構過于復雜,特別是在費用市場層面,這是由針對eth2基礎層的主要故障所創建的layer-2解決方案引起的:雖然分片內的區塊時間是非常低的,但分片之間的底層通信時間卻是非常高的,這需要1-16個epoch周期,而如果超過1/3的驗證者離線,這個時間甚至會更多。這使得“樂觀”解決方案成為了必要前提:一個分片內的子系統“假裝”提前知道其它分片的狀態根,通過某種中等安全的機制來學習它們,并通過使用這些狀態根處理交易來計算自己的狀態。一段時間后,一個“后衛”進程會遍歷所有的分片,檢查哪些計算使用了有關其他分片狀態的“正確”信息,并丟出所有未使用這些“正確”信息的計算。
而這個過程是有問題的,這是因為,雖然它可有效地模擬很多情況下的超高速通信時間,但是復雜的情況,是由“樂觀的”ETH和“真實的”ETH之間的差距引起的。具體而言,我們無法合理地期望區塊提議者“知道”樂觀ETH,因此,如果分片A上的用戶向分片B上的用戶發送ETH,則在分片B上的用戶擁有協議層ETH之前,會存在一個時間延遲。而要想繞過這一點,要么需要去中心化交易所,要么需要中繼市場。
Lodestar發布v1.4.0版本,成為以太坊質押啟動板上第五個共識客戶端:2月1日消息,開源以太坊共識 (Eth2) 客戶端 Lodestar 發布 v1.4.0 版本,Lodestar 將解除其在以太坊基金會的審核中(under audit and review)狀態,并正式成為以太坊質押啟動板上第五個共識客戶端。隨著 v1.4.0 版本發布,Lodestar 完成加入 Rocketpool、實現輕客戶端協議升級、上線加載密鑰進度指示器等重大升級。[2023/2/1 11:40:25]
此外,目前的交聯機制增加了大量的復雜性,實際上它需要一整套區塊鏈邏輯,包括獎懲計算、分叉選擇規則等,它們需要被納入分片鏈中,并作為Phase1的一部分。
本文檔提出了一個徹底的替代方案,它消除了所有這些問題,從而使以太坊2.0能夠更快地使用,另外還降低了風險。
方案細節
我們把SHARD_COUNT從1024減少到64,并將每個slot的最大分片數從16增加到64。這意味著“最優”工作流現在是在每個信標鏈區塊之間,而之前每個分片會發布一個交聯。
注意一個關鍵的細節:現在有一條路徑,任何分片的slot-N+1區塊都可以知道所有分片的所有slot-N區塊。因此,我們現在有一類的單slot跨分片通信。
數據:當前以太坊信標鏈質押量達到14,445,262枚ETH:金色財經報道,據以太坊官方網站消息,當前以太坊信標鏈質押量達到14,445,262枚ETH,驗證者總量為427,181個。按照當前ETH價格計算,當前以太坊信標鏈質押ETH總價值約合236.2億美元。[2022/9/15 6:56:59]
現狀
新提議
我們改變了證明鏈接的結構:它不再包含“crosslink”,而只包含單個區塊內容的數據根,其內容完全由“提議者”決定。分片區塊還將包括來自提議者的簽名。提議者的計算方法與以前相同,都是基于persistent-committee的算法,而這是為了鼓勵p2p網絡的穩定性。如果沒有可用的提案,交聯委員會成員可投票贊成一個空的“零提案”。
在該狀態下,我們像以前一樣存儲一個maplatest_shard_blocks:shard->(block,slot),不同之處在于存儲的周期變成了epoch,而不是之前的slot。在“樂觀情況下”,我們希望這個map能夠更新每個slot。
將online_validators定義為活躍驗證者的子集。如果2/3的online_validators同意給定分片的同一新區塊,則map會進行更新。
以太坊基金會等團隊推出追蹤“Sign-In with Ethereum”進展的網站login.xyz:10月19日消息,以太坊基金會、以太坊域名系統 ENS、數字身份認證公司 Spruce 共同推出追蹤“Sign-In with Ethereum”進展的網站 login.xyz 。該網站擁有遵循以太坊登錄標準化流程所需的一切,如近期剛提交的關于以太坊登錄標準的 EIP 4361 規范草案,此外還包含“Sign-In with Ethereum”介紹、如何報名接下來的社區電話會議、過往社區電話會議的視頻和筆記、支持該標準的早期項目清單及其它更新。[2021/10/19 20:40:11]
如果當前slot是n,但對于給定分片i,latest_shard_blocks.slot<n-1區塊),我們需要該分片的證明,以提供范圍.slot+1....min(latest_shard_blocks.slot+8,n-1)]內所有slot的數據根。分片區塊仍需指向“先前分片區塊”,并且我們仍要強制一致性,因此該協議要求這樣的多slot證明是一致的。我們希望委員會使用以下“分叉選擇規則”:
對于每個有效+可用的分片區塊B,計算最近消息支持B或B后代的驗證者的總權重,我們稱之為B的“得分”,空分片區塊也可以有得分。
為latest_shard_blocks.slot+1選擇擁有最高得分的分片區塊;
為
latest_shard_blocks.slot+k選擇擁有最高得分的分片區塊;
以太坊L2網絡總鎖倉量達到35億美元,Arbitrum占比74.21%:金色財經報道,L2BEAT數據顯示,截至9月13日,以太坊Layer2上總鎖倉量已達到35億美元。其中鎖倉量最高的為擴容方案Arbitrum,約26億美元,占比74.21%。其次是dYdX,鎖倉量超3.79億美元,占比10.80%;Optimism以2.30億美元的鎖倉量位居第三,占比為6.55%。[2021/9/18 23:35:32]
概述
發布信標區塊N和信標區塊N+1之間的過程如下:
信標區塊N被發布;
對于任何給定的分片i,分片i的提議者提出一個分片區塊。此區塊的執行可看到信標區塊N和舊區塊的根;
映射到分片i的證明者進行證明,其中包括對分片i上的slotN信標區塊和slotN分片區塊的意見;
信標區塊N+1發布,其中包括所有分片的證明,區塊N+1的狀態轉換函數會處理這些證明,并更新所有分片的“最新狀態”;
開銷分析
注意,不需要有參與者不斷積極地下載分片區塊區塊數據,相反,提議者在發布提案時,只需在小于3秒的時間內上傳最高512kB的數據,然后委員會只需在小于3秒的時間內下載最高512kB的數據,即可驗證提案。
請注意,這低于當前每個驗證者的平均負載。但是,“突發性”負載會是更高的:之前為3秒內最高64KB,現在改為3秒內最高512KB。
從證明加載的信標鏈數據更改如下:每個證明大約300字節的固定數據,外加一個位字段,即每個epoch周期400萬bit,或每個slot8192byte。因此,當前方案的最大負載為128*300+8192=46592,盡管平均負載可能更像32*300+8192=17792,甚至可通過壓縮來降低。
而在該提議中,我們會看到兩種負載:
最大負載為128*300+128*200+8192=72192,平均負載也許為80*300+10*200+8192=34192。
還要注意,證明聚合在每個分片中每個slot的開銷為65536*300/64=307200字節。這為運行節點的系統提供了一個需求基礎,因此使區塊數據變得比這小得多也沒有什么價值。
從計算上講,唯一顯著增加的開銷,是更多的配對,而具體數據是從每個區塊最多128增加到最多192,而這將增加大約200ms的區塊處理時間。
分片“基本操作系統”
每個分片都有一個狀態,即映射ExecEnvID->(state_hash,balance)。一個分片區塊被分成一組塊,其中每個塊指定一個執行環境。塊的執行以狀態根和塊的內容作為輸入,并輸出一個元組列表,每個分片最多只能有一個EE_id。我們還從EE余額中減去value的和。
在分片區塊頭中,我們放置了一個“receiptroot”,其中包含一個映射shard->...]。
分片i上的分片區塊,需包含彼此分片的分片j收據的Merkle分支,該分支位于其它分片的“receiptroot”。接受的值被分配給它的EE,并且EE執行可訪問msg_hash。
這允許在分片間的EE之間即時傳輸ETH,每個區塊的開銷為(32*log(64)+48)*64=15360字節。msg_hash可用于減少傳遞跨分片信息所需驗證內容的大小,因此在一個高度活躍的系統中,15360字節通常是必不可少的。
主要的好處:更簡單的費用市場
我們可按下面的方式修改執行環境:每個分片都有一個狀態,其中包含狀態根以及執行環境的余額。執行環境將能夠發送收據,因而將幣直接發送給其它分片上的相同執行環境。這將使用一個Merkle分支處理機制來完成,每個分片EE狀態為其它分片存儲一個nonce,以此作為重放保護。EE也可以直接向區塊提議者支付費用。
而這種方式,除了提供了足夠的功能之外,還消除了對中繼市場的迫切需求,也消除了執行環境承擔樂觀實施跨分片狀態的負擔。
優化證明
為了提高效率,我們還進行了以下優化:如前所述,查閱slotn的證明可完整地包含在slotn+1中。然而,如果這樣的證明包含在后面的slot中,則必須以“簡化形式”包含它,該“簡化形式”僅包含信標區塊,而不包含任何交聯數據。
這種方法不僅減少了數據,而且重要的是,通過強制“舊證明”保存了相同的數據,它減少了驗證證明所需的配對數量:在大多數情況下,來自同一slot的所有舊證明都可通過單個配對進行驗證。如果鏈不分叉,則在最壞情況下,驗證舊證明所需的配對數限制為epoch長度的兩倍。如果鏈確實發生了分叉,那么包含所有證明的能力,將取決于更高百分比的提議者是誠實的條件,并且還需要包含更早的證明。
保留對輕客戶端的支持
每天,我們隨機選擇一個由256個驗證者組成的委員會,這些驗證者可以在每個區塊上簽名,其簽名可包含在區塊n+1中以獲得獎勵。這樣做是為了讓低權利的輕客戶端也能夠工作。
其它可能的擴展
slotn的分片區塊須查詢slotn-1的信標鏈區塊。這將允許每個slot并行而非串聯發生,從而減少slot時間,而其代價是將跨分片通信時間從1個slot時間增加到2個slot時間;
如果區塊提議者希望讓區塊大于64KB,則其首先要生成64KB的數據,然后讓交聯委員會對其進行簽名,然后,他們可以添加另一部分引用第一個簽名的64kB,依此類推。這將鼓勵區塊生產者每隔幾秒發布其區塊的部分完成版本,從而創建預確認;
加快秘密leader選舉的發展;
而對于這一新的分片方案,也有社區成員發出了自己的疑問,比如RaymondDurk寫道:
“如果現在這樣做,那以后分片數量要擴展到1024,它的實現會復雜嗎?”
對此,Vitalik的回復是“并不復雜”。
你的看法是什么呢?
作者:萬向區塊鏈研究組 來源:萬向區塊鏈 編者注:原標題為:從Devcon5大會看以太坊和區塊鏈生態發展本文為萬向區塊鏈研發部研究組團隊參加Devcon5后,對大會內容進行的一些解讀.
1900/1/1 0:00:00一、前言 在區塊鏈領域,有兩句話流傳的很廣,但這兩句話聽起來好像有一點點矛盾:第1句話是:區塊鏈的本質就是發幣。只有發幣才能有效的協調分布式系統當中的各個利益方,才能有效的起到量化激勵作用.
1900/1/1 0:00:00門羅不得不面對ASIC礦機“入侵”其網絡的問題。經過了幾次分叉,門羅的挖礦算法CryptoNight進行了調整,禁用了ASIC功能.
1900/1/1 0:00:00前言:盡管以太坊存在擴展性問題,但基于以太坊之上產生的去中心化金融逐步成長起來。它提供安全的原生貨幣,有ETH的抵押利率、有MakerDAO提供的穩定幣DAI、有Compound的借貸、有基于E.
1900/1/1 0:00:00通過長期的觀察,研究機構區塊鏈透明度研究所已經收集了證據——Tether被故意用來影響密碼市場。在所有的交易活動中,有64%是虛假交易.
1900/1/1 0:00:00日前,開發者RustyRussell首次對外披露了閃電網絡安全漏洞及對應解決方案的技術細節。 以下是技術細節內容: 接受通道的閃電網絡節點必須檢查交易輸出是否確實打開了提議的通道,否則攻擊者可聲.
1900/1/1 0:00:00