本文將總結現有圍繞著以太坊2.0Phase2的研究成果,重點關注中繼網絡以及手續費機制。每種提案都有其不同的權衡取舍,而且被不同的平臺所采用,因此做一次合理且全面的匯總,能讓新入門的研究者更快上手。
背景
在深入討論中繼網絡之前,我們先回顧一下以太坊的主要瓶頸之一:狀態。
在以太坊中,狀態指的是賬戶余額、合約代碼、合約存儲內容的集合。不論什么時候執行交易,都要對狀態進行讀寫操作。早些時候,人們曾對以太坊計算模型原生的不可擴展性提出過質疑;但時至今日,反而是狀態的讀寫成為執行交易的成本瓶頸,磁盤的I/O性能成了運行以太坊全節點的制約因素。
請注意,為了能夠按照富狀態范式執行任何的交易,全節點必須保證所有狀態始終放在可訪問的位置。如果應用在單一區塊鏈的場景,或許這還能勉強接受,但是一旦面臨分片、面臨分片上委員會的重組,這種要求是非常不合理的。設想一下,每當驗證者被指定到一條分片鏈,他就得同步該分片上的所有狀態;則這種系統就等價于單一區塊鏈,只是此時的區塊大小等于分片區塊大小*分片數量。
這就是為什么我們需要無狀態客戶端。
分片及無狀態客戶端
在無狀態客戶端范式中,驗證者只需要存儲一個經過壓縮的區塊鏈狀態表,大幅降低了執行交易的負擔。一般來說累加器的大小是常量,不過也有可能是對數大小。
以太坊開發者呼吁DApp開發者從Goerli測試網改用Sepolia測試網:11月8日消息,以太坊開發者lightclients呼吁DApp開發者不要再使用Goerli測試網,改用Sepolia測試網。因為Goerli測試網的ETH供應問題難以解決。[2022/11/8 12:30:38]
無狀態客戶端的本質是,每筆交易都附帶當前累加器的見證數據,見證數據中包含了所有執行該交易所需的信息。在以太坊中,使用稀疏Merkle樹作為累加器,一筆交易所涉及的所有狀態元素都可以被包含進默克爾樹分支中。
在其他應用上,無狀態客戶端可以縮短以太坊節點的初次同步時間,這就是BeamSync的原理。
備注:有一些密碼學累加器比Merkle累加器性能更好,但是這種累加器需要受信任初始化,或是使用未驗證的前沿密碼技術,所以安全部署到生產系統上還需要點時間。
但無狀態客戶端也有自己的挑戰:一旦使用Merkle累加器,每當結束一次完整的執行后,見證就過期了。如果模型要求每筆交易都包含單獨的見證,然后順序執行這些交易,則排在后頭的交易的見證數據就會過期,必須能夠隨著前面每一筆交易結束而更新自己的見證。幸虧更新這些Merkle累加器的見證涉及零哈希開銷方法——如果見證數據可以作為附加物添加到“一大包”交易上的話,就不需要更新屬于每筆交易的單獨見證,或是說可以整合為多重證明。
假如所有用戶都維護著全節點,并實時更新見證的狀態,那么無狀態客戶端系統是能夠馬上被采用的。可惜在分片環境下,這意味著要求所有用戶維護自己所在分片上的所有狀態;這樣做不僅不切實際,而且就如我們上面提到的,這就相當于只是建立一條區塊體量更大的單一區塊鏈。
數據:明年3月25日到期的以太坊看漲期權今日成交量飆升至27870張:8月6日消息,Deribit數據顯示,截至北京時間12:00,明年3月25日到期的以太坊看漲期權今日成交量飆升至27870張,名義價值逾7700萬美元,其中成交數量最多的看漲期權行權價為5萬美元和4萬美元,分別成交了12764張和12509張。[2021/8/6 1:38:46]
為了解決問題,這里引入了中繼者的概念。中繼者負責提供用戶所需的見證,并以此向用戶收取服務費。和用戶不一樣,中繼者可以將服務聚焦在單一分片上;但中繼者無法預知用戶什么時候需要狀態,因此必須保證見證的及時更新,也就是實時存儲狀態,以供用戶獲取。
中繼者的引入也會引來一大堆復雜的問題,也是以太坊2.0的全面部署所面臨的最重要的開放問題之一。第一點,如果不能很好地平衡中繼者和區塊提議者所得到的利益,驗證者就會被激勵成為中繼者,則相關服務的獲取成本可能會讓一般使用者望而卻步。第二點,要讓中繼者能夠從用戶和驗證者處收取費用),同時不至于引入太大的開銷,顯然不是件簡單的事;換言之,驗證無狀態交易很容易,但是提供必要的見證很困難。
中繼網路及費用市場提案
以太坊2.0Phase2的設計空間很大,也出現了很多對執行模式的提議。每種提議都各自表述了如何通過付費,結合中繼網路的機制,將交易更好地在用戶和區塊提議者之間進行傳遞。本章節會盡可能簡潔而全面地總結不同的協議,并著重分析它們在中繼網路及手續費機制上的異同。
以太坊開發者提出EIP-3455提案,允許發送者召回代幣:4月1日消息,以太坊開發者William Morriss和Baptiste Vauthey提交EIP-3455提案,該提案引入新的操作代碼,允許任意的發送者地址召回發出的代幣。目前,以太坊網絡時常出現發送者將代幣打入代幣地址而不是接收者地址的情況,EIP-3455提案為恢復這些代幣提供了解決方案。[2021/4/1 19:37:20]
校勘者提案
這是Phase2階段的早期提議,將分片鏈的建塊分為三個部分:提議者、校勘者、執行者。一些提議者負責收集交易,打包成區塊,一些提議者負責提交collation到鏈上,最終,執行者根據被提議的collation給出一個新的狀態根。
該提案從未得到完全的研究;因此,也沒有對手續費支付機制的研究。除去別的因素,這項提案被棄用還因為,它的激勵機制鼓勵用戶同時成為提議者、校勘者、執行者,以得到利益最大化
Phase1andDone
CaseyDetrio在其開創先河的博文通過以太坊1.x上的合約來支付費用;不過這個可行性令人懷疑,因為這會使得以太坊2.0的可用性強烈依賴以太坊1.x。
Phase2Proposal1
緊接著Detrio的研究,VitalikButerin對Phase2階段提出了具體的新提案:phase2proposal1。在此提案中,執行腳本存放在信標鏈上,以太幣可以被存入執行腳本,而且絕對不會脫離信標鏈;每個分片的狀態和執行都是完全獨立的。
火幣上線BSV以太坊代幣HBSV,現已開放充提:火幣官網消息顯示,火幣全球站已于10月24日推出BSV的以太坊代幣——HBSV,并開啟HBSV充提業務。
BSV 是比特幣現金(BCH)的分叉幣,目標是踐行中本聰白皮書最初愿景及發展路線。CoinMarketCap數據顯示,截止2020年10月24日,BSV市值已高達31億美元。
HBSV項目通過向以太坊DeFi注入高流動性、受用戶喜愛的BSV,連接中心化市場和DeFi市場,降低用戶進入DeFi的成本,提供更有效率的數字資產服務。
據了解,火幣全球站推出的HBSV嚴格遵守1 : 1的擔保資產,即每發行1個HBSV,其資產所在地址都會有1BSV的資產保障,確保用戶可以隨時使用HBSV與BSV進行1 : 1的兌換。所有的HBSV兌換詳情都會在火幣H系列資產官網公開,任何人都可以發起對HBSV資產的審計。[2020/10/24]
請注意,它們的名字可能會有誤導性——執行腳本乃是定義執行交易的虛擬機的規則,而非我們今天在以太坊看到的智能合約。執行腳本必須以客戶端可解析、計量、編碼的方式定義數據模型及操作碼。
為了支付費用,每個執行腳本本質上都是個layer-2系統,驗證者無法“得知”其內部的付費機制。這不是設計缺陷,而是故意為之的;如果要求分片驗證者去解析和計算不同的費用機制,這無疑會導致實施難度及經濟機制復雜性大幅增加,引入更多可能被攻擊的弱點,甚至變得完全不可用。很大程度上,反對“經濟抽象化”的理由也可以用于反對這種依腳本定義手續費種類的執行模式。
因為驗證者無法直接從執行腳本中收取費用,他們必須通過其他方式拿到服務費。這里通過一個特殊的執行腳本完成;任何人都可以發送包含以下邏輯的交易:“如果在某分片中的某時隙打包了這個使用了某執行腳本的數據,則我要向記錄這個數據塊的人支付這筆費用”;這里的操作都是由中繼者完成:中繼者負責收集用戶的交易,根據非-enshrined普通執行腳本指定的規則收取費用,然后再向分片中的區塊提議者根據enshrined執行腳本支付打包交易的費用。
USDC Treasury在以太坊網絡增發超554萬枚USDC:金色財經報道,Whale Alert數據顯示,北京時間9月19日2:53,USDC Treasury在以太坊網絡上增發5,541,322.5枚USDC。增發哈希為:0x44b318d2dd89b2e175008bd45b9ee4560d62065bc2636778a4182f91d1b9a5b1。[2020/9/19]
WilliamVillanueva的博客AJourneyThroughPhase2ofEthereum2.0對到這里為止的Phase2提案給出了完美的總結。
Phase2Proposal2
受到Detrio前期工作的啟發,V神再次提出Phase2Proposal2,針對對提案1進行簡化,移除了分片鏈上狀態,改用信標鏈追蹤隨分片各異、隨執行環境各異的狀態根。
這種設計的好處是,不同的執行環境能選擇自己的累加器,而不像之前的提案,必須尊奉一種累加器形式。
現在,一般交易流程如下:用戶創建交易并將其發送給中繼者,中繼者隨用戶需要添加見證以獲得用戶支付的費用。接著中繼者將多個交易進行打包,一起發送給區塊提議者,并通過協議內置的機制向他們支付費用,讓提議者將該交易堆打包到下一個區塊中。與提案1一樣,這里的“協議內置的機制”是指一個更高等的EE,所有驗證者都能識別的EE。
對于驗證者來說,此方案一定程度上減輕了他們的負擔,但是由于以上操作仍需要一些分片狀態,而該提案又沒有設計用戶與中繼者的協議內費用支付機制,所以還沒有解決中繼網絡的全部問題。首先,使用協議外手段進行支付會削弱用戶的隱私保護;其次,我們不清楚要如何創建一個完全脫鏈的系統來保證用戶和中繼者一手交錢一手交貨;第三,使用協議外手段進行支付的潛在高風險,以及成為中繼者的高算力要求,可能會導致中心化問題——在最糟的情況下,用戶和以太坊2.0網絡之間可能只剩下幾個“把關的”中繼者。
回歸交易緩存池模式
Vitalik在新的提案中提到,讓中繼者有條件地向區塊提議者付費,需要繁重的雙重承諾方法來保證支付的原子性,因此,不如用一個手續費市場EE來解決所有問題。在該提案中,EE將具有自己的余額。EE執行一批交易后會輸出一個收據,負責支付費用的高等EE會根據這個數據,將以太幣從該EE賬戶轉給區塊提議者。因此,支付費用的高等EE能夠“回看”之前的收據并處理轉賬。而充值EE賬戶可能就是中繼者的責任了。
這個提案的好處是,不需要通過什么復雜的方法來協調中繼者和區塊提議者之間的支付往來,但沒有指明用戶該怎么和中繼者進行交互,只是建議使用支付通道。
基于最初的提案,Villanueva建議回歸交易緩存池模式。在這種情況下,中繼者只需作為狀態提供者,僅提供見證而不需要打包交易;區塊提議者維護一個緩存池,合并所需的見證數據來打包交易。有鑒于每個EE可以選擇不同的累加器,因此EE必須事先聲明一個固定的合并見證的方法,讓區塊提議者可以整合兩個及以上的見證,例如將多個Merkle分支整合成一個Merkle多重證明。
因為狀態提供者只需要提供見證,目前已有的很多角色都可以勝任這個任務:如,輕客戶端服務器。可以使用更方便的工具和更低的成本來激勵更多輕客戶端服務器提供見證,這對于高可靠性大有幫助。不過對于用戶來說,不得不使用高摩擦力的支付渠道付費給狀態提供者,仍然很令人頭疼。
Phase2另類架構
就在不久之前,V神提出了Phase2另類架構,打算完全去掉分片的狀態。關鍵之處在于,在信標鏈中加入了完整的、有狀態的、可表達的狀態轉換引擎。這個引擎作為“調度員”,持續追蹤EE的狀態根。調度員設計也讓多分片事務執行成為可能:按照既定的順序檢查分片和時隙,以確保正確執行了跨分片到同一個EE的多個交易。
這個提案的費用支付機制與前一個提案相比沒有什么變化,不過因為調度員具有足夠的能力來處理EE余額管理和收據消費,因此不再需要特定的支付費用EE存在。
分片鏈簡化提案
在DevCon5大會上,V神發布了關于以太坊2.0架構的重大重構消息,這是啟發自Near協議的分片塊——夜影的設計。在新的提案中,不要求每個分片鏈都運行相互獨立的分叉選擇規則,而是交錯著以更快的速度生成區塊和交聯;分片中的區塊緊隨著信標鏈的區塊一起生成,而且所每個分片都與每個信標鏈區塊交叉連接。該體系結構增加了分片交叉鏈接的數量,為應對交聯數量的增加,分片的數量從1024減少到64個;與此同時每個分片的吞吐量也有所增加,使整個系統的吞吐量保持原來水平。
上述思維模式的根本變化,使得費用市場變得更更加簡單:由于分片數量大大減少,跨分片通信更為簡化,用戶大可直接在每一個分片上都存有Ether,直接給區塊提議者支付。
消弭了大半的費用市場問題,現在只剩下中繼網絡的挑戰還依然存在。
提醒
以上關于以太坊2.0的中繼網路/費用市場的討論,并非完全詳盡的:
對于用戶、中繼者、區塊提議者來說,大家都需要適當的付費激勵及服務。用戶可以通過付費得到所需的見證,中繼者收取費用提供見證,而區塊提議者收費打包交易。關于中繼者向區塊提議者付費的方式,可以在協議內聲明;但是用戶希望一邊要取得見證數據,一邊要保證交易被打包,其付費的方式就沒有那么單純了。對于用戶來說,好的支付方法應該是低阻力的,方便其轉換不同的中繼者。但是依賴外部區塊鏈的支付通道,存在預先支付押金及對外部鏈活性的要求;理想的情況還是能在協議內解決用戶支付的問題。續上一點,應該讓中繼者難以審查用戶。可惜的是,見證取自于內嵌的訪問列表,因此沒有辦法阻止中繼者設置黑名單。驗證者不必“理解”每個EE內部的支付方式,因為這會極為復雜,對部署及建立有效的市場帶來巨大的阻力。用戶不是非維護全節點不可。我們希望這個提案對于輕客戶端非常友好。最后一點同樣很關鍵:抵御DoS攻擊非常重要。按照見證的合并/刷新方式,很有可能會有向驗證者發起的DoS攻擊。務必要當心有人利用這種漏洞。
總結
回顧過去的一整年,圍繞著中繼網絡及費用市場的研究進行了多次迭代,致力于給用戶和輕節點帶來良好的使用體驗的同時,降低驗證者負擔,盡可能保證免準入性。展望未來,我們希望看到更多關于Phase2的提案,進一步改進和完善以太坊2.0的各個層面!
比特幣采礦軟件制造商BitfuryGroup根據其應用專用集成電路芯片BitfuryClarke推出了新一代BTC采礦硬件,根據9月19日發布的公告.
1900/1/1 0:00:00昨日早晨比特幣一度觸及29,200美元,重回2022年6月水平,引起社群熱議。不過此行情維持了不到一小時,又再度回落.
1900/1/1 0:00:0012月30日晚,「預見2020·吳曉波年終秀」在廈門舉行。會上,財經作家吳曉波表示,中國趕上了工業革命的末班車,同時我們還非常幸運地趕上了互聯網革命的頭班車.
1900/1/1 0:00:00目前DeFi市場還在繼續火爆,除了韭菜忙來忙去的研究項目,作為項目方本身,也會緊緊的盯著“流動性挖礦”這個新概念,來開發自己的產品.
1900/1/1 0:00:00日前通過的《北京市人民代表大會常務委員會關于修改〈北京市生活垃圾管理條例〉的決定》將自2020年5月1日起施行.
1900/1/1 0:00:00上游財經—重慶商報記者吳光亮14日晚間,比特幣中國宣布將于9月30日停止所有交易業務,聲稱系根據9月4日七部委下發的文件精神做出的決定。比特幣中國這一公告被認為系國內開始清退虛擬幣平臺的動作.
1900/1/1 0:00:00