要點提煉
永久性分片鏈的概念將不復存在,相反,每個分片區塊都直接就是一個交聯。提議人發出提案,交聯委員會負責批準,一錘定音。
分片數量從之前的1024減少到64,分片區塊大小從kB增加到kB。分片總容量為1.3-2.7MB/s,具體值取決于時隙。如果需要的話,分片數量和區塊大小可隨時間的推移而增加,比方說10年后最終達到1024個分片,以及1MB區塊。
在L1和L2層實施了諸多簡化方案:所需的分片鏈邏輯更少,因為“原生的”跨分片通信可以在1個時隙內完成,所以無需通過Layer-2為跨分片通信加速,無需通過去中心化交易所來促進跨分片交易費手續的支付,執行環境能夠進一步簡化,無需再混合序列化和哈希;
主要劣勢:信標鏈的開銷更大,分片區塊產生時間更長,對“突增性”帶寬需求更高,但對“平均”帶寬的需求更低。
序言/理念
當前的以太坊2.0架構過于復雜,尤其是在手續費市場層面,有些人就想到要用Layer-2的應變方法來解決Eth2基礎層的主要問題:雖然分片內的區塊時間是非常短的,然而分片間的基礎層通信時間特別長,需要1-16個epoch。這就亟待“樂觀”的解決方案:一個分片內的子系統通過某種次等安全的機制,“假裝”提前知道其它分片的狀態根,并使用這些不確定的狀態根來處理交易,以此來計算自己的狀態。一段時間后,一個“rear-guard”進程遍歷所有分片、檢查哪些計算使用了其他分片狀態的“正確”信息,并拋棄未使用“正確”信息的所有計算。
但這個過程是存在問題的,雖然它在很多情況下都能夠有效地模擬出超高速通信時間,但是“樂觀”ETH和“真實”ETH之間的區別衍生出了其他復雜情況。具體而言,我們不能假設區塊提議者“知道”樂觀的ETH,因此,如果分片A上的用戶向分片B上的用戶發送ETH,則分片B上的用戶要隔一段時間才能收到協議層ETH。如果想避免延遲,要么需要去中心化交易所,要么需要中繼市場。
Voyager兩個多小時前開始處理用戶提款:6月24日消息,據鏈上分析師余燼監測,兩個多小時前,Voyager開始處理用戶提款。自去年7月2日 Voyager停止提幣以來,Voyager用戶終于能拿回自己的資產,但只有35%。[2023/6/24 21:57:42]
此外,目前的交聯機制大大增加了復雜性,實際上它需要一整套區塊鏈邏輯,包括獎懲計算、單獨存儲分片內獎勵的狀態以及分叉選擇規則等,這些都需要被納入分片鏈中作為階段1的組成部分。本文檔提出了一個大膽的替代方案,用以解決所有這些問題,使以太坊2.0能夠更快地投入使用,同時降低風險,其中還有一些折中方案。
方案細節
我們把?SHARD_COUNT?從1024減少到64,并將每個時隙處理的分片數上限從16增加到64。這意味著現在的“最優”工作流是:在每一次信標鏈生成區塊的期間,每個分片都會產生一個交聯一詞,因為并沒有“連接”到分片鏈,直接使用“分片區塊”更合適)。
請注意一個關鍵細節:現在任何分片位于時隙N+1處的區塊都可以通過一條路徑知道所有分片的在時隙N處的區塊。因此,我們現在有了一流的單時隙跨分片通信。
-現狀-
Flow主網已上線無錢包準入混合托管解決方案:金色財經報道,據官方推特,Flow宣布主網已上線無錢包準入混合托管解決方案,目前已被20個項目所采用。[2023/3/23 13:21:45]
-新提案-
在這個提議中我們改變了見證消息所連接對象的結構:在原先的方案中,見證消息中包含著“交聯”,交聯中包含著以某種復雜序列化形式表示的許多分片區塊的“數據根”;但在新提案中,見證消息只包含著一個數據根,該數據根代表著一個區塊內的內容。分片區塊還將包括來自提議者的簽名。為了促進p2p網絡的穩定性,計算提議者的方式依然使用之前基于常設委員會的算法。如果沒有可用提案,交聯委員會成員也可以就“零提案”進行投票。
我們依然在狀態中存儲一個映射?latest_shard_blocks:shard->(block_hash,slot)?,不同的是參數由epoch變為時隙。在理想狀況下,我們希望每個時隙這個映射都能夠得到更新。
將?online_validators?定義為活躍驗證者的子集,活躍驗證者即在過去8個時段中至少有一個epoch包含其見證消息。只有2/3的?online_validators?都對給定分片的同一個新區塊達成共識,上述映射才會進行更新。
假設當前時隙是?n?,但對于給定分片?i,latest_shard_blocks.slot<n-1,我們則需要對該分片的見證消息來提供范圍??內所有時隙的數據根。
分片區塊仍需指向“先前的分片區塊”,我們還是要強制保證一致性,因此該協議就要求多時隙的見證消息來保證一致性。委員會采用以下“分叉選擇規則”:
A股收盤:深證區塊鏈50指數上漲1.72%:金色財經消息,A股收盤,上證指數報3284.92點,收盤上漲0.9%,深證成指報12158.19點,收盤上漲1.31%,深證區塊鏈50指數報3148.16點,收盤上漲1.72%。區塊鏈板塊收盤上漲2.52%,數字貨幣板塊收盤上漲3.44%。[2023/2/1 11:40:37]
對于每個有效且可用的分片區塊B,計算其最新消息支持B或B的后代的驗證者總權重,暫且將該權重稱為分片區塊B的“得分”。即使是空白的分片區塊也可以有得分。
在?latest_shard_blocks.slot+1?處根據最高得分選出相應區塊
在?latest_shard_blocks.slot+k?處選擇區塊時,也根據最高得分來選,但僅考慮其父塊已在?latest_shard_blocks.slot+(k-1)?處被選擇的區塊
概述
從信標區塊N到信標區塊N+1的發布過程如下:
信標區塊N發布;
對于任何給定的分片i,分片i的提議者提議一個分片區塊。該區塊的執行過程可知信標區塊N和先前區塊的根;
被分配到分片i的見證者提交見證消息,包括其對時隙N處的信標區塊和分片i區塊的意見;
信標區塊N+1發布,其中包括對所有分片的見證消息。區塊N+1的狀態轉換函數對這些見證消息進行處理,并且更新所有分片的“最新狀態”。
成本分析
請注意,參與者不需要隨時主動下載分片區塊數據。相反地,提議者發布提議時,只需要在3秒內上傳上限為512kB的數據,隨后委員會驗證提議時,只需要在3秒內下載上限為512kB的數據。
數據:持有超過1萬枚比特幣以上的地址數量創近1個月新低:1月23日消息,Glassnode數據顯示,持有超過1萬枚比特幣以上的地址數量為1199個,刷新一個月低點。[2023/1/23 11:26:49]
請注意,此操作的要求低于目前每個驗證者的長期負載要求,即每個epoch約2MB。然而,這對“突增性”負載的要求更高:之前是3秒內上限64KB,現在3秒內上限會提高到512KB。
見證消息負載的信標鏈數據更改如下。
每條見證消息有224字節的基本開銷,再加上見證者字段需要少則32字節,多則256字節的數據。也就是說,一條見證消息需要256-280字節的開銷。一個區塊最多可以有256條見證消息,平均則是約128條,所以單個區塊的消息開銷在平均條件下是32768字節,最糟糕的情況下是122880字節。
每個分片狀態更新消息需要:區塊體chunk數據根,每128kB的區塊數據就需要一個數據根,所以平均需要48字節,最大需要128字節;分片狀態根,128字節;區塊體長度,8字節;custodybits,少則32字節,多則256字節。因此,平均來看需要216字節,最大需要520字節。單個區塊最多可以有256條分片狀態更新消息,平均是64條。因此平均需要13824字節,最大需要133120字節。
每個證明有大約300字節的固定數據,加上一個位字段,即每個epoch400萬bit,每個時隙8192字節。因此,目前方案的最大負載為128*300+8192=46592,平均情況中的負載可能更接近32*300+8192=17792,即使這樣還可以通過壓縮證明中的冗余信息來降低負載。
出于效率考量,在一個區塊中我們僅包含勝出見證消息中的分片狀態更新數據;對所有其它見證消息中的分片狀態更新數據都僅保存其哈希值作為替代。這樣就可以大幅節省數據開銷。
Proof of Stake NFT已鑄造13891枚,24小時NFT鑄造排榜排名第一:金色財經消息,據歐科云鏈OKLink多鏈瀏覽器數據顯示,V神新書捐贈紀念NFT Proof of Stake已有13,891枚被鑄造,24小時NFT鑄造排榜排名第一。同時24小時NFT鑄造消耗Gas費106.87枚ETH,消耗量排名第三。[2022/9/1 13:02:01]
還要注意的是,見證聚合在每個分片中每個時隙的成本為65536*300/64=307200字節。這對運行節點提出了一個天然的系統需求門檻,因此要再壓縮區塊數據的話也沒有什么意義。
從計算層面來說,唯一大幅增加的花銷是需要更多的配對,每個區塊的上限從128增加到192,而這將使得區塊處理時間延長200ms。
“基礎操作系統”分片
每個分片都有一個狀態,就是一個?ExecEnvID->(state_hash,balance)?的映射。一個分片區塊被分成一組chunk,每個chunk指定一個執行環境。一個chunk的執行依靠狀態根和chunk的內容作為輸入,并輸出??元組的一個列表,每個分片最多擁有一個?EE_id。我們也會從該EE的余額中減去value的總數。
在分片區塊頭里,我們放置了一個“收據根”,里面包含了一個映射:?shard->…]?。
在分片i上的一個分片區塊,應有一個默克爾分支,包含所有其它分片的收據,而這棵默克爾分支就是由其它分片的收據根生成的。收到的價值會被分配到其EE,且EE可以訪問?msg_has?。
這就使得不同的分片可以在EE間實現即時的ETH轉移,此時每個區塊的開銷為(32*log(64)+48)*64=15360字節。msg_hash?可以被用于減少伴隨ETH轉移所傳遞的跨分片信息見證內容的大小,因此在一個高度活躍的系統里,15360字節數據是必不可少的。
主要益處:更簡單的費用市場
我們可以接著修改執行環境系統:每個分片都有一個狀態,該狀態包含狀態根和執行環境的余額。執行環境將能夠發送收據,向其它分片的同一EE直接發送貨幣。這個過程將使用默克爾分支處理機制來完成,每個分片的EE狀態儲存著一個其余每個分片的nonce,用以抵御重放攻擊。EE也可以用來直接向區塊提交者支付費用。
這提供了足夠強大的功能性,使得EE能夠建立在這樣的基礎之上:允許用戶在分片上存幣,并將其用于支付交易手續費;在分片間轉移幣就如在同一分片內進行操作一樣簡便,從而消除了對中繼市場需求的緊迫性,也不需要讓EE來承擔實現optimistic跨分片狀態的負擔。
完全的和壓縮后的見證消息
出于對效率問題的考量,我們還進行了以下的優化。如前所述,指向時隙n的見證消息可完整地包含在時隙n+1中。但是,如果此種見證消息需要被包含在后續的時隙中,則必須以“精簡形式”進行嵌套,僅包含信標區塊,而不包含任何交聯數據。
這不僅起到了裁減數據的效用,更重要的是,通過強制“舊見證消息”保存相同數據,可以減少用于驗證見證消息所需的配對數:在大多數情況下,所有來自相同時隙的舊見證消息都可以經由單一配對驗證。如果鏈不分叉,那么在最壞的情況下,用以驗證舊見證消息所需的配對數會被限制在epoch長度的2倍。如果鏈確實分叉,則要包含所有見證消息的能力就得依賴于一個更高的誠實提議者比例,并且要將更早的證明也包含進去。
保證輕客戶端的參與
每天,我們隨機選擇一個由大約256個驗證者組成的委員會,這個委員會可以在每個區塊上進行簽名,其中簽名被包含的驗證者便可以在區塊n+1中獲得獎勵。這樣做的目的是允許計算能力不高的輕客戶端參與。
題外話:數據可用性根
證明一個128kB數據的可用性的操作是多余的,幾乎沒有價值。與此相反,有意義的是:要求一個區塊能夠提供該區塊接受并組合在一起的所有分片區塊數據的串聯根。然后可以根據此數據創建單個數據可用性根。請注意,創建這些根可能要花費比一個時隙更長的時間,因此,最好用于檢查一個epoch前的數據的可用性。
其他可能方案
時隙n的分片區塊必須引用時隙n-1的信標鏈區塊,而不是時隙n處的信標鏈區塊。此種措施將允許以時隙為單位的循環并行發生,而不是串聯發生,從而減少時隙時間,這樣做的代價是導致跨分片通信時間從1個時隙上升到2個時隙。
如果一個區塊提議者試圖將區塊大小擴大到64KB以上,他需要首先生成64kB的數據,然后讓交聯委員會對其進行簽名,接著,他們可以添加一個引用第一個簽名的64kB數據,以此類推。這將鼓勵區塊創建者每隔幾秒提交他們區塊的部分完成版本,從而創建一種預先確認的機制。
加快秘密領導人選舉的發展。
與其使用“強制嵌入”機制,我們不如尋求一個更簡單的替代方案:每個分片為其余的每個分片維護一個“inboundnonce”和一個“outboundnonce”,一個分片制造的收據將需要手動進行添加,并由接收的分片按順序進行處理。收據生成將受限于每個區塊每個目標分片的少數收據,以確保一個分片能夠處理所有傳入的收據,即使是所有分片同時向它分送收據。
原文鏈接:?
https://notes.ethereum.org/@vbuterin/HkiULaluS?from=groupmessage&isappinstalled=0
作者:?Vitalik
本文由?ECN以太坊中國?社區翻譯,EthFans經授權使用譯本。再出版時,根據原文的改動更新了譯本。
Tags:ETHHARDSHASHARDETH簡介hardwaretokenDollarBalance Sharesharder
我想起的是Messari一篇分析Tezos的文章:Tezos市值增長一倍,但是使用率極低。還是逃不過新鏈的空塊問題.
1900/1/1 0:00:00最近區塊鏈世界發生的太多變化,無論是好的壞的,大洋彼岸的聽證會、我國管理部門的備案和產業發展政策,都繞不開臉書的Libra,2019年6月18日是一個區塊鏈世界的轉折點,臉書白皮書的發布.
1900/1/1 0:00:00文:馬爾科·揚西蒂卡里姆·拉哈尼 譯:劉筱薇 來源:哈佛商業評論 最近,一個重大政策利好的釋放,讓區塊鏈再次成為熱議的話題,各種區塊鏈概念股也應勢上漲.
1900/1/1 0:00:0010月18日,國家互聯網信息辦公室發布了第二批共309個境內區塊鏈信息服務名稱及備案編號。這是自2月15日《區塊鏈信息服務管理規定》正式實施以來,網信辦第二次發布備案編號.
1900/1/1 0:00:00今天內容包括: 1、屯幣賺錢還是把幣放在Defi項目更賺錢?2、Uniswap的創業故事:Uniswap的誕生3、Optimisticvs.ZKRollup:深入研究4、如何成為新的以太坊2.
1900/1/1 0:00:00一、區塊鏈的ToB基因 在騰訊區塊鏈白皮書里,有這么一句話:區塊鏈,天然就有著ToB基因。這句話,挺有意思的,值得細細思考.
1900/1/1 0:00:00