昨天在日本大阪舉辦的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)無需混合序列化和哈希;
以太坊2.0網絡現有超6萬個有效驗證者:Beaconcha.in數據顯示,當前以太坊2.0網絡僅上線六個星期,現已有60,265個有效驗證者,還有16,080個在等待隊列。[2021/1/14 16:09:48]
主要缺點:(i)信標鏈開銷會較大,分片區塊時間會變長,較高的“突發性”帶寬需求,但“平均”帶寬需求會是較低的。
序言/根本原因
當前的以太坊2.0體系結構過于復雜,特別是在費用市場層面,這是由針對eth2基礎層的主要故障所創建的layer-2解決方案引起的:雖然分片內的區塊時間是非常低的,但分片之間的底層通信時間卻是非常高的,這需要1-16個epoch周期,而如果超過1/3的驗證者離線,這個時間甚至會更多。這使得“樂觀”解決方案成為了必要前提:一個分片內的子系統“假裝”提前知道其它分片的狀態根,通過某種中等安全的機制來學習它們,并通過使用這些狀態根處理交易來計算自己的狀態。一段時間后,一個“后衛”進程會遍歷所有的分片,檢查哪些計算使用了有關其他分片狀態的“正確”信息,并丟出所有未使用這些“正確”信息的計算。
而這個過程是有問題的,這是因為,雖然它可有效地模擬很多情況下的超高速通信時間,但是復雜的情況,是由“樂觀的”ETH和“真實的”ETH之間的差距引起的。具體而言,我們無法合理地期望區塊提議者“知道”樂觀ETH,因此,如果分片A上的用戶向分片B上的用戶發送ETH,則在分片B上的用戶擁有協議層ETH之前,會存在一個時間延遲。而要想繞過這一點,要么需要去中心化交易所,要么需要中繼市場。
數據:以太坊網絡每日新智能合約數量達309份創新高:10月19日消息,數據顯示,以太坊網絡每日新智能合約數量已達到309份,創下新高。與此同時,這種每日新增超百份智能合約的現象維持了超過一個月,而非創造峰值后就消失。而這個現象的導火索可能是DeFi。(Trustnodes)[2020/10/19]
此外,目前的交聯機制增加了大量的復雜性,實際上它需要一整套區塊鏈邏輯,包括獎懲計算、分叉選擇規則等,它們需要被納入分片鏈中,并作為Phase1的一部分。
本文檔提出了一個徹底的替代方案,它消除了所有這些問題,從而使以太坊2.0能夠更快地使用,另外還降低了風險。
方案細節
我們把SHARD_COUNT從1024減少到64,并將每個slot的最大分片數從16增加到64。這意味著“最優”工作流現在是在每個信標鏈區塊之間,而之前每個分片會發布一個交聯。
注意一個關鍵的細節:現在有一條路徑,任何分片的slot-N+1區塊都可以知道所有分片的所有slot-N區塊。因此,我們現在有一類的單slot跨分片通信。
現狀
聲音 | 美國CFTC主席:ETH 2.0使用PoS機制后可能使以太坊成為證券類代幣:金色財經報道,美國商品期貨交易委員會(CFTC)主席Heath Tarbert近日表示,挖礦是一種更去中心化的方式獲得加密貨幣,但以太坊屬于何種性質的代幣將可能發生改變。由于ETH 2.0將使用權益證明,持有者可以從網絡中持續獲得收益。而權益類代幣在某些因素下,可能不能通過Howey測驗(測試是否是證券的測驗),這樣就會被視為證券。此前,CFTC主席Heath Tarbert表示,ETH不是證券,而是一種商品,因此屬于CFTC的管轄范圍。(bitcoinexchangeguide)[2019/11/14]
新提議
我們改變了證明鏈接的結構:它不再包含“crosslink”,而只包含單個區塊內容的數據根,其內容完全由“提議者”決定。分片區塊還將包括來自提議者的簽名。提議者的計算方法與以前相同,都是基于persistent-committee的算法,而這是為了鼓勵p2p網絡的穩定性。如果沒有可用的提案,交聯委員會成員可投票贊成一個空的“零提案”。
在該狀態下,我們像以前一樣存儲一個maplatest_shard_blocks:shard->(block,slot),不同之處在于存儲的周期變成了epoch,而不是之前的slot。在“樂觀情況下”,我們希望這個map能夠更新每個slot。
將online_validators定義為活躍驗證者的子集。如果2/3的online_validators同意給定分片的同一新區塊,則map會進行更新。
分析 | 加密貨幣市場研究員Alex Kruger:以太坊反彈因之前超跌,加密貨幣仍未改變弱勢局面:據Digitaljournal報道,近期以太坊的大幅反彈,外界普遍認為是由于之前的超跌,對此,經濟學家和加密貨幣研究員Alex Kruger預計,至少在短期內,以太的上行反彈將持續下去,這也與BTC的拉升有關,不過長期看來,ETH和其他加密貨幣的價格可能進一步下跌。
?
?[2018/9/17]
如果當前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選擇擁有最高得分的分片區塊;
概述
發布信標區塊N和信標區塊N+1之間的過程如下:
信標區塊N被發布;
對于任何給定的分片i,分片i的提議者提出一個分片區塊。此區塊的執行可看到信標區塊N和舊區塊的根;
聲音 | 有人或故意堵塞以太坊網絡:據nulltx報道,近日,Reddit用戶發現,有人可能故意堵塞以太坊網絡。存在一些并沒有任何意義的問題合同,甚至不應該被使用,這導致以太坊區塊鏈膨脹,并且與此合同相關的加密貨幣產生了大量交易,似乎由同一實體控制。雖然并不確定其是否存在,但這些賬戶都在積極地向以太坊網絡發送垃圾信息。據15日消息,以太坊開發人員稱,EOS通過濫發通證故意擁堵以太坊網絡以提高交易費。BM否認了這一說法,并稱這種操作段位太低。[2018/7/17]
映射到分片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的回復是“并不復雜”。
你的看法是什么呢?
Tags:SLOTLOT以太坊ETHSleepy Sloth FinancePILOT幣以太坊幣今日價格行情ethical詞根
來源:stakefish原文標題:建設以太坊2.0,我們總結了5條經驗作者:由stake.fish編譯自其運營經理JK在Devcon5大會的演講.
1900/1/1 0:00:0010月12日至13日,“2019CCF區塊鏈技術大會”在成都正式開幕。本次大會由中國計算機學會主辦,并邀請了近百位來自高校、產業界、金融機構、政府以及國內外區塊鏈領域的知名專家,包括中國工程院院.
1900/1/1 0:00:00來源:渦輪資本導讀 1、隱私保護代表了在分布式網絡中保護交易和參與者的能力。但目前各類數字通證交易僅僅只是具備了化名性,而不具備匿名性。因而需要采取一定的措施來實現匿名性,保障用戶的隱私.
1900/1/1 0:00:00我們在Libra還有一個更大的項目,或者至少是更奇特的項目,那就是嘗試建立一種新的數字貨幣,它可以在全球范圍內運作,而且將是穩定的。這是一個偉大的想法,是一種新型的系統,尤其是要由大公司來實施.
1900/1/1 0:00:00博傻理論不知道源自何處,也沒有一個明確的定義,這可能是因為投資狂熱的概念從貿易和商業開始就存在了.
1900/1/1 0:00:00瑞波首席技術官DavidSchwartz今日在一篇文章中概述了改進XRP賬本以及整個生態的方法,他建議創造一種用XRP作為抵押的穩定幣.
1900/1/1 0:00:00