特別感謝 Justin Drake、Dankrad Feist、Alex Obadia、Hasu 和其他人對這篇文章不同版本的反饋和評論。
當前,(信標鏈) 以太坊區塊需要 64-95 個 slot (約 15 分鐘) 來實現最終敲定。在去中心化/敲定時間/開銷權衡曲線上,選擇這樣一個中等時長、在任意維度都不差的權衡是合理的:15 分鐘不算太長,與當前的交易所的確認時間相當,且這允許用戶在常規計算機上運行節點,即使有大量質押了 32 ETH (而不是早期要求的 1500 ETH) 的驗證者也能如此。然而,有很多關于將敲定時間減少到單個 slot 的很好論據。本文是一個處于研究狀態的帖子,評估了一些用于實現此目的可能策略。
當前,大約有 285,000 個驗證者,這些賬戶已經存入了 32 ETH,因此可以參與以太坊 staking (質押)。驗證者數量并不與實際參與質押的用戶 (質押者) 數量完全對應:一些富有的質押者可能控制著數百個驗證者。32 ETH 的最低質押要求限制了可能的驗證者賬戶數量,確保了以太坊鏈仍然擁有計算能力來處理這些賬戶。
每個 slot (12 秒) 會有一個新區塊被添加到鏈中。在每個 slot 中,還有數千個 (由驗證者提交的) 證明 (attestations),用于對 (信標鏈) 鏈頭進行投票。有一個稱為 LMD GHOST 的分叉選擇規則,該規則會將這些證明作為輸入,來確定鏈的頭部。這種由數千個證明進行的并行投票,使得以太坊要比傳統的最長鏈系統更加強健:除非發生一次主動攻擊 (active attack) 或者一個重大的網絡故障,不然即便是單個 slot 也幾乎永遠不會被逆轉 (恢復)。
這些證明還有第二個目的:它們在一個稱為 Casper FFG 的大規模共識算法中扮演著選票 (votes) 的角色。每個 epoch (每 32 slots 稱為一個 epoch,約 6.4 分鐘),所有活躍的驗證者都有機會進行一次證明。兩輪之后,如果一切順利,前一個 epoch (以及其中的所有區塊) 將被敲定 (finalized)。一旦某個區塊被敲定了,逆轉該區塊將至少需要所有驗證者中的 1/3 驗證者數量銷毀它們的存款 (質押金):攻擊成本超過了 300 萬 ETH。
Vitalik發文《收入-邪惡曲線:用另一種方式來思考公共產品資金的優先性》:10月28日消息,Vitalik發文《收入-邪惡曲線:用另一種方式來思考公共產品資金的優先性》,文中嘗試提供一種不同的方法來分析私人和公共之間的“混合”商品:收入-邪惡曲線。這是一種整體“社區”中的“混合經濟”環境與商業市場以及中心化資助者的補貼相結合的假設。對于如何在當今的加密社區、國家和許多其他現實世界環境中為公共產品提供資金有一定啟發。[2022/10/28 11:51:36]
持續地審查驗證者或交易同樣成本高昂,盡管抵抗審查攻擊需要額外的協議干預。如果 51% 的驗證者開始審查 (驗證者或交易),受害者和用戶可以協調發起一個少數軟分叉 (minority soft fork),他們在彼此的區塊上構建,并忽略該攻擊者。在這個少數軟分叉上,該攻擊者的存款將因為其受到了怠工懲罰 (inactivity leak) 而損失數百萬 ETH,幾周后,這條鏈將恢復敲定。
嘗試改變現狀并將敲定時間縮短在單個 Slot 完成,這里面有幾個關鍵原因:
用戶體驗。大多數用戶不愿意等待 15 分鐘的敲定時間。今天,即便是交易所也時常在僅 12-20 次確認 (約3-5分鐘) 就將用戶的存款視為“敲定了”(finalized),盡管 (與真正的 PoS 敲定相比) 這種提供 12-20 次的 PoW 確認的安全性較低。單個 slot 的敲定將滿足用戶越來越習慣的速度的同時,提供一個非常高的安全性。
抗 MEV 重組。在單個 slot 敲定將使得即使是大多數驗證者也不可能為了提取 MEV (礦工可提取價值) 而對區塊鏈進行重組。合并中的 LMD GHOST (分叉選擇規則) 已經讓這種情況的發生變得非常困難了,而在單個 Slot 敲定讓這種保證更加強大,并創造了一個強大的、壓倒性的抑制因素,甚至可以阻止惡意的絕大多數驗證者串謀和攻擊。可以參閱這篇文章,了解關于這個論點的更詳細的闡述:
Gemini信托采用Itiviti的NYFIX平臺為用戶提供加密交易服務:全球金融機構技術和服務提供商Itiviti宣布,Gemini信托公司現允許加密貨幣持有者通過其NYFIX平臺與交易對手進行交易。[2020/3/20]
https://www.paradigm.xyz/2021/07/ethereum-reorgs-after-the-merge/
有機會減少協議復雜性和 bugs。Casper FFG 敲定和 LMD GHOST 分叉選擇規則之間的“接口”是使得協議非常復雜的一個來源,導致許多攻擊需要相當復雜的補丁來修復,且還有更多的弱項定期在被發現。在單個 slot 敲定提供了一個在單個 slot 確認機制和該分叉選擇規則之間創建一個更清晰的關系的機會 (只有當離線的驗證者比例少于或等于 1/3 時才能運行)。協議復雜性的其他來源 (比如將驗證者打亂分配至固定規模的委員會中) 也可能減少。
想法1:通過「超級委員會」來實現單個 Slot 敲定
不是所有驗證者都參與每一輪 Casper FFG 共識,而是只有一個由幾千名驗證者組成的中型超級委員會 (a medium-sized super-committee) 參與,從而允許每一輪共識都在單個 Slot 中發生。相關的技術思想首先在這篇 etheresear.ch 帖子中進行了介紹:
https://ethresear.ch/t/a-model-for-cumulative-committee-based-finality/10259
該帖子對這個想法進行了更加詳細的介紹,但其核心原則如下:
并不是在每個 epoch 運行 BFT (拜占庭容錯) 共識,而是在每個 slot 運行。這意味著一旦某筆交易被打包進某個區塊中,那么在一個 slot 之后,逆轉這筆交易的成本將是數千 ETH。
我們不依賴于全部的活躍驗證者來敲定單個 slot。相反,我們依賴于一個隨機挑選的、由幾千名驗證者組成的「超級委員會」(super-committee) 來敲定單個 slot。
動態 | EOS的Activity指數為 3848 萬 排名第1:據IMEOS報道,根據blocktivity.info的數據顯示,截止北京時間18年12月25日11點00分 ,區塊鏈活躍度指數排名前五名分別為:EOS,WAX,BitShares,Steem,Bitcoin。其中EOS的Activity指數為38,489,477,排名第1。Activity指數為最近24小時內在區塊鏈上執行的操作數量。[2018/12/25]
只有當某個委員會不執行確認的職責的情況下 (這需要超過 1/4 的驗證者離線或者是惡意驗證者才會發生),LMD GHOST 分叉選擇規則才會被使用。如果這種情況發生了,那么該分叉選擇規則會決定哪個區塊才是鏈頭,且該委員會將會受到怠工懲罰 (inactivity leak),直到其再次開始執行確認職責。
?上圖:如果某個委員會未能執行確認職責,那么區塊鏈將使用分叉選擇規則來決定哪個區塊是鏈頭,并對該委員會的驗證者進行怠工懲罰,直到這些驗證者的余額被削減到某一個程度,即剩余的驗證者中有超過 2/3 的驗證者余額處于在線,且該委員會再次執行確認。
轉向使用「超級委員會」的次級效益
從全局驗證者轉向超級委員會還有一些刺激效益:
運行驗證者節點的計算負載變得更加穩定。運行驗證者節點的計算要求不再需要與驗證者總數成正比,迫使驗證者擁有強大的機器以應對驗證者數量的大幅增加,而是使得運行驗證者節點的計算負載變得更加穩定,這樣驗證者就確切地知道他們需要什么計算需求。
大多數時候,驗證者可以立即取款。當下不屬于某個委員會的驗證者將能夠立即取款 (除非有非常多驗證者正在取款,存在一個區塊隊列)。但即便是屬于委員會的驗證者也能夠非常快速地取款 (1-5分鐘),因為委員會能夠在基于單個 Slot 敲定的基礎上進行快速輪換。只有在真正異常的情況下 (無論是意外的大規模取款還是正在進行的主動攻擊),驗證者才會被要求留下來并繼續保護區塊鏈,直到一切恢復正常。
聲音 | Vitalik Buterin:許多DApp的用戶界面都很差:Vitalik Buterin在倫敦帝國理工學院(Imperial College London)發表演講時,承認,到目前為止,許多DApp的用戶界面都很差,很難找到用戶。他在探索以太坊是否能通過擴容來支持它們。[2018/12/4]
就驗證者數量而言,超級委員會的規模應該“大到足以成為一個安全的委員會”。但委員會也必須在其 ETH 總量 (即委員會中所有驗證者的總質押量) 方面足夠大。被罰沒和被怠工懲罰的 ETH 數量需要大于從攻擊中實際可以獲得的收益,而且它需要足夠大,以阻止或使強大的攻擊者破產,因為攻擊者有巨大的外部動機來破壞這條鏈。
這個需要多少 ETH 的問題不可避免是一個直覺問題。你可以問下面這些問題來引導你的直覺:
假設以太坊鏈受到 51% 的攻擊,社區需要花幾天時間協調一個鏈下治理事件來恢復,但有 X % 的 ETH 會被銷毀。這個 X 需要多大才能對以太坊生態系統帶來凈效益?
假設一個主要的交易所被盜走了數百萬 ETH,然后該攻擊者將收益進行質押并獲得了超過 51% 的驗證者數量。那么在該驗證者偷來的所有資金被銷毀 (罰沒) 之前,他能夠對區塊鏈發起多少次 51% 攻擊?
假設一個 51% 攻擊者開始在很短的時間內重復重組區塊鏈以捕獲所有的 MEV。我們希望攻擊者的每秒成本達到什么水平?
據 Justin Drake 估計,如今對比特幣發起覆巢式攻擊 (spawn-camp attack) 的成本 (也即在比特幣社區改變 PoW 算法之前,反復對比特幣進行 51% 攻擊的成本) 約為 100 億美元,相當于其市值的 1%。一次性 51% 攻擊以太坊的成本應該比該成本高出多少倍?
以太坊創始人Vitalik Buterin聲明將不再發表關于比特幣的言論:14日中午,以太坊創始人Vitalik Buterin發布推特稱,將徹底停止評論比特幣問題并把重點轉向以太坊技術。[2017/11/14]
上圖:針對“你認為攻擊以太坊的最低成本是多少?”的以太坊研究人員內部調查結果。
如果我們只關注不依賴延遲的 51% 攻擊,那么 100 萬 ETH 的攻擊成本將意味著一個「超級委員會」的規模是 200 萬 ETH (大約 65,536 名驗證者),如果我們還將涉及到復雜的惡意驗證者和網絡操控結合起來的 34% 攻擊,那么超級委員會的規模應是 300 萬 ETH (大約 97,152 名驗證者)。但如果我們想要以太坊鏈的負載保持在今天的水平 (每個 slot 約 9000 名驗證者,也即大約 288,000 ETH),這對應的攻擊成本為 96,000 到 144,000 ?ETH。這兩個數字之間仍有很大的差距。
因此,除非以太坊社區能夠相信攻擊以太坊的成本更低是可以接受的 (記住:攻擊者仍然需要控制 50% 以上的所有被質押的 ETH,這只是他們將失去的數量),否則僅依靠這條路徑似乎很難。
想法2:努力讓盡可能多的證明者 (attesters) 發揮作用
假設我們確實想要一條在每個 slot 都有大量驗證者參與的區塊鏈 (比如,每個 slot 有 131,072 名驗證者,也即相當于保守的是 400 萬 ETH)。那么這個基礎上的性能數字將是怎樣的呢?
事實證明,擁有大量驗證者來證明每個 Slot 的鏈上成本并沒有看上去那么高:
存儲驗證者記錄所需的狀態空間將與今天完全相同 (每個驗證者大約 150 字節)。
驗證一個簽名將需要將 131,072 個公鑰的隨機子集加在一起。每個橢圓曲線的添加可以在大約 1 微秒內完成,所以這可以在大約 130 毫秒內完成。每個 slot 需要執行兩次 (如果一個區塊包含冗余證明,則可能需要執行更多次)。
如果我們假設在 slot N 活躍的某個驗證者通常在 slot N+1 也保持活躍,那么鏈上添加成本可以進一步優化;這意味著對于每個 slot,我們只需要計算新舊聚合公鑰之間的變量 (delta),在良好的條件下,聚合公鑰可能由幾千或者甚至幾百個驗證者公鑰組成。即使在最壞的情況下,也應該總是能夠進行至少 2 倍的優化 (即~65毫秒)。
仍然存在的最大問題是簽名聚合。單個 Slot 中生成和發送簽名的驗證者有 131,072 名,這些簽名需要快速地組合成一個大型聚合簽名。
今天,簽名聚合是在 p2p 子網中完成的。每個包含了 256 名驗證者的委員會都有其自身子網絡的簽名聚合。有 16 個隨機選擇的特權聚合器,它們可以進行簽名聚合并將它們提交到主子網 (main subnet)。然后,區塊提議者然后從每個委員會中取最佳的簽名聚合,并將它們加在一起,形成一個大的簽名聚合。如下圖所示:
這給每個小組委員會帶來了負載,其中驗證者需要單獨驗證簽名,特別是在發生攻擊,使得網絡充斥著無效簽名的情況下,且在全局子網中,如果有n個委員會,提議者必須驗證16 * n個簽名。
聚合很可能是未來兩年內顯著優化的目標。目前,實際應用中最大的瓶頸是每個子網的負載,特別是對于需要在多個子網中的節點而言。
通過兩種有前景的簡單方法可以獲得顯著的改進:
增加子網數量,以允許更多的證明 (attestations) 總數,而不增加每個子網的負載。主子網的負載會增加,但 dank-sharding 可以彌補這一點,dank-sharding 允許一個 slot 中的所有驗證者對相同的數據進行簽名,從而提高效率,使這些簽名更容易被批量驗證。
更改網絡規則,這樣即使有許多驗證者的節點也只需要參與一個子網,從而為增加每個子網的負載和子網計數提供了空間。只有當某個驗證者是某個子網中的聚合器時,該驗證者才需要嚴格訂閱該子網;一個僅僅發布到子網的驗證者只需要找到一個訂閱到該子網的另一個誠實驗證者,而不需要自己訂閱它。
支持更多驗證者的一種可能的更激進的策略是,將簽名聚合轉變為一個更專門化的角色 (類似于 PBS (提議者/構建者分離) 方案中的區塊構建者),在這個角色中,我們希望專業的參與者能夠持久地存在于每個子網 (甚至所有子網) 中,并能夠很好地收集簽名。這些參與者可以是有償的,也可以是自愿的角色 (因為對于已經質押了許多驗證者的用戶來說,這個額外成本非常低)。
針對這種情況的一個簡單的協議是允許驗證者簽名一條?ProposedAggregate?消息,其中包含 (i)一個聚合簽名,(ii) 參與者的位字段 (假設有 131,072 名驗證者,那么只有 16 kB),以及 (iii) 聚合器對這兩個對象的簽名。
提議者將偵聽?ProposedAggregate?消息息,并驗證那條有著最高參與人數的簽名。如果該簽名有效,則提議者將打包該簽名;如果無效,則提議者將因為驗證該簽名而損失大約 130 秒,然后繼續驗證下一個有著第二高參與人數的聚合 (如果需要,還可能會繼續驗證參與人數第三高的聚合,等等),所有無效?ProposedAggregate?消息的聚合器將可能受到罰沒 (slashing)?懲罰。
轉向單個 Slot 確認是一個需要多年時間的路線圖;即使很快就會開始大量的開發工作,它也將是以太坊在完成 PoS、分片和 Verkle 樹的推出之后,這將是以太坊之后的重大變化之一。總的來說,實現的路徑大致如下:
加緊優化證明聚合的工作。無論如何,這都是一個重要的問題,因為驗證者的數量預計會增加。我們需要在這個問題上更專注的研究和開發努力。
就常規參數達成一致:我們的目標是「超級委員會」有多大規模 (或者超級委員會的規模是否將是所有活躍驗證者的集合,并且我們實現了某種不同的機制來控制可以有多少活躍驗證者)?我們可以接受什么樣的開銷水平?我們將使用什么技術來減少開銷?
為了實現單個 Slot 敲定,需要對一個理想的共識和分叉選擇機制進行研究、達成共識和明確下來。這將結合 BFT 共識機制 (Casper FFG 或其他更傳統的機制) 和分叉選擇規則,其中分叉選擇規則只在 ≥1/3 的驗證者離線的情況下才有意義。
就實現路徑達成一致并執行。這可能是需要多步驟實現的,其中一步引入超級委員會機制,然后下一步添加全新的共識和聚合機制。
在單個 slot 實現敲定的最終好處將是非常顯著的,技術可以隨著時間的推移而改進,以實現本文沒有描述的其他好處 (比如,使用增加的最大驗證者計數來減少最小 ETH 質押量)。因此,這篇文章中所描述的技術挑戰值得我們盡快開始更深入、更專注的研究和開發。
本文為王飛躍(中國科學院自動化研究所研究員)撰寫的元宇宙系列之前世篇。初生、現狀、平行、展望篇將陸續登載,敬請期待.
1900/1/1 0:00:00希望這是我們最后一次圍繞 web3 進行如此籠統的、無用的辯論。我感謝紐約大學斯特恩商學院Scott Galloway(@profgalloway)教授 列出了所有反對(派) Web3 的觀點,
1900/1/1 0:00:00這是 20 世紀兩位貨幣經濟學偉人之間的一場傳奇辯論。爭論的焦點是“挑戰者貨幣”是否會取代政府支持的標準貨幣,成為全球最受歡迎的支付媒介.
1900/1/1 0:00:00元宇宙或許存在爭議,可是,任何新生的事物,不都是在爭議中前行嗎?讓我們敞開想象,擁抱未來!經濟學分類本身就是一門學問,其歷史淵源、觀點脈絡、風云人物極多.
1900/1/1 0:00:00去年 11 月,一個名為 Spice DAO 的線上團體購買了一本「導演圣經」,Alejandro Jodorowsky 的《沙丘》副本.
1900/1/1 0:00:00本文由公號"老雅痞"(laoyapicom)授權轉載從CryptoPunk、BAYC、Loot等,到最近爆火的Phanta Bear.
1900/1/1 0:00:00