比特幣價格 比特幣價格
Ctrl+D 比特幣價格
ads
首頁 > Coinw > Info

GAS:化險為夷:以太坊柏林硬分叉之前存在一個嚴重的狀態問題_VEGAS

Author:

Time:1900/1/1 0:00:00

來源|EthereumBlog

作者|?MartinHolstSwende&PeterSzilagyi

MartinHolstSwende及PeterSzilagyi于2021年5月18日發布

原標題:《化險為夷:以太坊的狀態問題》

本篇博文的目的在于正式揭露以太坊平臺在柏林硬分叉之前的一個嚴重且顯而易見的問題。

State狀態

我們先從以太坊和及其“狀態”的背景開始梳理。

以太坊的狀態由patricia-merkletrie組成,一種前綴樹。本文不會深入技術細節,簡單來說隨著狀態增長,樹的分支會越來越密集。每個加入的賬戶都是一片新葉子。在樹根之間和葉子之間,存在大量的“中間”節點。

為了查找某個特定賬戶,或是說這顆巨樹中的一片“葉子”,從樹根再通過中間節點,需要按序解決6-9個哈希才能最終對我們所尋找的數據進行哈希計算。

簡而言之,每執行一次查找賬戶的trie查詢,都要執行8-9個解析操作。每次解析操作都是一次數據庫查詢,而每次數據庫查詢都可能是任意數量的實際磁盤操作。磁盤操作的數量難以預估,但是由于trie密鑰是加密哈希(抗沖突),因此密鑰是“隨機的”,這對任何數據庫來說都是最糟糕的情況。

隨著以太坊的發展,一直以來都有必要提高樹訪問操作的gas費用。2016年10月,在經歷了“上海攻擊”時間之后,以太坊網絡在區塊高度2,463,000?進行了TangerineWhistle?硬分叉,其中包含EIP150,大舉提升了某些操作的gas成本,并引入了大量更改以防御DoS攻擊。

ApeCoin DAO成立元宇宙工作組的新提案AIP-245獲得通過:金色財經報道,據Snapshot數據顯示,ApeCoin DAO成立元宇宙工作組的新提案AIP-245已獲得通過,該提案旨在建立一個元宇宙工作組。ApeCoin元宇宙工作組的任務是服務ApeCoin DAO內的元宇宙相關工作,支持可持續的社區主導的基礎設施,創造運營效率,推動APE文化進入元宇宙,同時發展社區主導的可持續元宇宙基礎設施。根據投票數據顯示,最終的贊成票比例為88.21%,反對票比例為11.79%。[2023/6/13 21:34:10]

另一次對gas費用的提升是在2019年12月的Istanbul升級中,激活了EIP1884。

EIP-1884針對gas費用引入了以下改動:

?SLOAD?從?200?提升至?800?gas

?BALANCE?從?400?提升至?700?gas(并添加了一個更便宜的?SELFBALANCE)

?EXTCODEHASH?從?400?提升至?700?gas

出現的問題

2019年3月,MartinSwende當時在進行一些EVM操作碼性能的測定。之后的EIP-1884就是基于該調查而成的。在EIP-1884被激活的前幾個月,BrokenMetre發布了這篇論文(2019/9)。

兩位以太坊安全研究員,HubertRitzdorf和MatthiasEgli,與論文的作者之一DanielPerez將一個漏洞“武器化”,提交給了以太坊的漏洞賞金(bugbounty)項目。這是在2019年10月4日。

歐盟警告馬斯克,推特可能因內容審核而面臨禁令:12月1日消息,歐盟威脅要對推特實施歐洲禁令,除非馬斯克遵守其嚴格的內容審核規則。據知情人士透露,歐盟負責執行集團數字規則的專員Thierry Breton周三與馬斯克的視頻會議上告訴馬斯克,他必須遵守一份規則清單,包括放棄恢復被禁用戶的“武斷”做法,“積極地”追查虛假信息,并同意在明年之前對該平臺進行“廣泛的獨立審計”。若不遵守這些規則,推特有可能違反歐盟新的《數字服務法》,可能面臨全歐洲范圍內的禁令或高達全球營業額6%的罰款。馬斯克此前曾表示,推特將遵守所有相關法律。[2022/12/1 21:13:59]

建議大家閱讀這份他們提交的完整文檔,寫得很詳盡。

同日,在一個專門用于討論跨客戶端安全性的頻道中,來自Geth、Parity和Aleth的開發者都得知了這份文檔。

這個漏洞的本質在于觸發隨機的trie查詢。以下是一個簡單的示例:

在其報告中,研究員們通過eth_call對同步了主網的節點執行了這個payload,以下是他們執行過程中的數據,耗費了一千萬gas:

?消耗一千萬gas的EXTCODEHASH(400gas)

Parity:?~90s

美聯儲:數字資產、CBDC不會對美元的國際地位構成威脅:7月5日消息,美聯儲發布關于美元國際角色首次會議的紀要顯示,美元國際角色的現狀基本保持不變。在討論數字資產、中央銀行數字貨幣(CBDC)是否可以改變美元的優勢或加強其各種作用時,與會嘉賓普遍認為,技術本身并不會導致全球貨幣生態系統發生劇烈變化,因為法治、穩定性、網絡效應和市場深度等其他因素對主導貨幣的優勢至關重要。美聯儲現階段認為,當前的數字資產格局更傾向于以散戶投資者為投機目的,而機構投資者則因缺乏監管框架而受到限制。CBDC的發展也傾向于集中在國內零售領域,因此不會對美元的國際地位構成威脅,跨境CBDC的范圍仍然非常有限。(金十)[2022/7/5 1:52:55]

Geth:?~70s

?消耗一千萬gas的EXTCODEHASH(700gas)

Parity:?~50s

Geth:?~38s

顯而易見,EIP-1884的更改確實在降低該攻擊的影響上起到了幫助,但還遠遠不夠。

當時已經臨近在大阪的開發者大會。在開發者大會上,這個問題的信息分享給了主網的客戶端開發者。我們也和Hubert、Mathias以及GregMarkou(來自Chainsafe,當時也在進行一些ETC的工作)見面了。ETC的開發者也收到了這份報告。

隨著2019年臨近尾聲,我們知道這個問題比之前預期的要嚴重,惡意交易可能將區塊時間提升到分鐘范圍。更糟的是,開發者社區對EIP-1884感到不滿,因為EIP-1884破壞了一些合約流程,而且用戶和礦工都非常希望提高區塊的gaslimit。

廣州成功落地首筆數字人民幣線上消費貸款業務:金色財經報道,近日,在中國人民銀行廣州分行的大力支持下,中國郵政儲蓄銀行聯合中郵消費金融有限公司在廣州落地數字人民幣消費貸款場景,成功發放了首筆“郵你貸”個人消費貸款,拓展全流程線上化數字人民幣貸款的創新實踐。(中國新聞網)[2022/7/3 1:47:47]

此外,僅兩個月后的2019年12月,ParityEthereum宣布停止運維,而OpenEthereum接管了代碼庫的維護工作。

隨后搭建了一個新的客戶端協調頻道,Geth、Nethermind、OpenEthereum和Besu的開發者在此繼續進行協作。

解決方案

我們意識到要解決這個問題,必須要雙管齊下。一種方法是通過以太坊協議以某種方式在協議層解決該問題。最好不要破壞合約,并且避免波及“良好”行為,但仍要設法防止攻擊。

第二種方式是通過軟件工程來解決,修改客戶端中的數據模型和結構。

協議層的工作

關于如何處理這些類型的攻擊的第一個版本在這里。2020年2月,正式發布為EIP2583。其理念是,每當一次Trie查找導致未命中時,施加一次罰款。

但是,Peter找到了應對方法,即“shieldedrelay”攻擊,可以有效地限制這種懲罰的上限(約為800)。

對未命中查詢進行懲罰的問題在于,首先需要進行查找,以確定是否施加懲罰。但是如果剩余的gas不足以支付罰款,已執行了未付費的消耗。即使確實會導致拋出異常,也可以將這些狀態讀取包裝到嵌套調用中,允許外部呼叫者繼續重復攻擊而無需支付(全部)罰款。

日本電影制片廠Noma宣布將制作三部基于加密貨幣世界的故事片:金色財經報道,日本電影制片廠 Noma 宣布將制作三部基于加密貨幣世界的故事片。第一部電影名為《修辭之星》,已經在制作中,將于 2024 年上映。?Noma 的創始人兼該系列的制片人Taichi Ito表示,三部曲旨在通過創造性的故事講述來傳授有關加密行業的知識。此外,Ito自豪地分享了他們的團隊正在與BTC?專家和屢獲殊榮的聲音設計師 Sefi Carmel 合作。他還表示相信,《修辭之星》將“改變”觀眾了解加密貨幣的方式。

該系列電影還由總部位于東京的區塊鏈公司 Gracone 的首席執行官藤本麻伊和日本出版商 CoinPost 的高管 Ryo Nakatsuji 制作。同時,曾在《精靈寶可夢》、《妖精的尾巴》和《殺鬼》等熱門動漫作品中工作的日本動畫師 Haruna Gohzu將在影片的動畫中擔任主角。

為電影設計聲音的 Sefi Carmel 提到,該團隊希望創建一個系列,以“創造性和可訪問”的方式將世界加密專家的見解傳達給大眾。他說,他很榮幸加入該團隊,并為世界轉向“依賴于區塊鏈、加密貨幣、NFT 等的虛擬未來”而感到興奮。(Cointelegraph)[2022/6/22 4:43:57]

因為這個原因,這個EIP被放棄了,我們也在尋找更好的替代方案。

?AlexeyAkhunov提出了?Oil?的概念,gas的第二來源,但和gas在本質上不一樣,因為它對執行層不可見,并可能導致事務全局回滾。

?Martin在2020年5月也撰寫了一個類似的提案(GasAndKarma)

在對這些不同機制進行迭代的同時,VitalikButerin提議直接提高gas成本,并且保留訪問列表。2020年8月,Martin和Vitalik開始完善EIP-2929及配套的EIP-2930。

EIP-2929有效地解決了許多之前的問題。

?與無條件提升gas成本的EIP-1884相比,EIP-2929只提升了未訪問部分的gas成本。這導致凈成本提升了不足一個百分點。

?加上EIP-2930,不會對任何合約流程造成破壞

?并且能夠在不造成破壞的前提下進一步調整gas成本

2021年4月15日,這兩個EIP都在Berlin升級中被激活了。

開發工作

Peter在2019年10月提出的解決方案是“動態狀態快照”(dynamicstatesnapshots)。

快照是用于以平面格式存儲以太坊狀態的輔助數據結構,在Geth節點的實時操作期間,可以完全在線構建。快照的好處在于充當狀態訪問的加速結構:

?無需通過O(logN)次磁盤讀取(x?LevelDB開銷)來訪問一個賬戶或存儲插槽,快照可以提供直接的O(1)訪問時間(x?LevelDB開銷)。

?快照支持每項條目以O(1)復雜度迭代賬戶和存儲,這使遠程節點能夠以比以前便宜得多的方式檢索順序狀態數據。

?快照還啟用了更多奇特的用例,例如離線修剪狀態Trie或遷移到其他數據格式。

快照的缺點在于原始帳戶和存儲數據實際上是重復的。對于主網來說這意味著將占用額外的25GBSSD空間。

動態快照的概念從2019年中就已經發軔,起初的目的主要是推動快照同步的實現。當時Geth團隊在忙于許多“大項目”。

?離線狀態修剪

?動態快照+快照同步

?通過分片化狀態實現LES(LightEthereumSubprotocol)狀態分發

然而,最終決定將快照的優先級排到最前,將其他項目暫時擱置。這為后來的snap/1同步算法奠定了基礎,并于2020年3月合并。

隨著“動態快照”功能的發布,我們有了一些喘息的空間。如果以太坊網絡受到攻擊,那將是痛苦的,是的,但是至少有可能通知用戶啟用快照。完整生成快照將花費大量時間,并且當時尚無法同步快照,但是網絡至少可以繼續運行。

總結

2021年的三月到四月,snap/1協議在geth客戶端中實現了,使得通過新的基于快照的算法進行同步成為可能。雖然仍不是默認的同步模式,但這是很重要的一個步驟,使快照不僅可用作攻擊防護措施,并且對于用戶來說也是一項重要優化。

在協議方面,柏林升級于2021年4月完成。

以下是在我們的AWS監控環境中制定的一些基準:

?柏林升級之前,無快照,25M?gas:?14.3s

?柏林升級之前,有快照,25M?gas:?1.5s

?柏林升級之后,無快照,25M?gas:?~3.1s

?柏林升級之后,有快照,25M?gas:?~0.3s

大致的數據顯示柏林升級能夠將攻擊的效率降低5倍,快照能夠將其降低10倍,總計將影響降低了50倍。

我們估計目前在主網(15Mgas),對于未使用快照的geth節點來說,有可能創建執行時間在2.5-3秒的區塊。對于非快照節點來說,隨著狀態增長這個數字會持續惡化。

如果通過gas退還來增加區塊內的有效gas使用量,則可能會進一步加劇為(最大)2倍。隨著EIP1559的實施,區塊的gaslimit的彈性會更大,并且在臨時爆發中會再增加2倍。

至于實施這種攻擊的可行性,攻擊者購買一整個區塊的成本約為幾個ETH(100Gwei時15Mgas為1.5ETH)。

為什么現在公布?

這個風險其實一直以來都是一個“公開的秘密”,已經不止一次被意外公開披露,并且在核心開發者會議中多次被提及,但并未涉及細節。

現在既然已經實施了柏林升級,geth的節點也在默認情況下使用快照同步,因此我們估計現在的威脅性已經非常低了,現在是時候對幕后工作進行全面公開了。

重要的是,讓社區有機會了解一些變更背后的原因,而這些變更會對用戶體驗造成負面影響,例如gas成本增加和限制gas返還。

本文由MartinHolstSwende和PeterSzilagyi在2021-04-23寫就。并于2021-04-26與基于以太坊的項目進行分享,2021-05-18公開發布。

點擊“閱讀原文”獲取文章內部鏈接!

原文鏈接:https://blog.ethereum.org/2021/05/18/eth_state_problems/

Tags:GASETH以太坊GETVEGASbeth幣和erh以太坊幣今日價格行情非小號bitGet交易所

Coinw
NFT:從波多野結衣到陳小春 NFT跨界不斷_BOX

原文標題《?跨界不斷NFT邁新階》加密資產市場深度回調期間,NFT的出圈消息連續轟炸。5月17日,陳小春相關NFT作品在iBox平臺限量發行,很快被一搶而空.

1900/1/1 0:00:00
數字貨幣:解碼 | 全球化視角下央行數字貨幣的設計思維和發展方向_bdc幣目前價格

原標題:《解碼央行數字貨幣|李國權、閆黎:全球化視角下央行數字貨幣的設計思維和發展方向》 來源:清華金融評論 文/新加坡新躍社科大學金融科技與區塊鏈教授李國權.

1900/1/1 0:00:00
ROL:開放式Rollup VS 零知識Rollup_以太坊

“這是最好的時代,也是最壞的時代。”就像狄更斯重溫革命性巨變的歐洲一樣,今天的以太坊也是如此。以太坊上面的生態,尤其是DeFi,充滿了生機和創新,但網絡活動的指數級增長引發了擁堵危機.

1900/1/1 0:00:00
NFT:金色DeFi日報 | 主流DeFi協議24小時清算量超1億美金_PASTA Vault (NFTX)

DeFi數據 1.DeFi總市值:987.44億美元 市值前十幣種排名數據來源DeFiboxDeFi總市值數據來源:Coingecko2.過去24小時去中心化交易所的交易量:151.

1900/1/1 0:00:00
比特幣:牛市要結束了嗎?比特幣跌破41000美元、以太坊跌破3200美元_最新比特幣價格美元

來源:新浪財經 以太坊跌至3200美元/枚下方,刷新日低,日內跌超5%。比特幣跌破41000美元/枚,日內跌4.7%.

1900/1/1 0:00:00
比特幣:中國礦池依然占據世界前三,螞蟻礦機S9遠未到關機價_SUPERPOO

5月21日,在國務院副總理、金融委主任劉鶴主持召開的國務院金融穩定發展委員會第五十一次會議上,明確提出要堅決防控金融風險,強化平臺企業金融活動監管,打擊比特幣挖礦和交易行為.

1900/1/1 0:00:00
ads