以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads

如何看待 Infura 服務崩潰及其造成的影響?_ETH

Author:

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

事件經過

北京時間2020年11月11日下午,以太坊社區知名的節點服務Infura被曝出API服務出錯,并因此導致了多個依賴于Infura來構建的服務的崩潰,或者前端顯示不正確。

就Infura自身而言,可以把它理解為一個公開的以太坊節點,這個節點會接收請求并返回一定的服務,比如幫忙轉發交易、比如檢查某筆交易上鏈了沒有,又或者某個賬戶的狀態如何。實際上,只要自己部署一個以太坊節點,就能提供跟Infura同樣的服務。但它的特殊性在于,Infura的大部分服務都是免費的,因此很多服務都選擇了依賴Infura來向自身播報以太坊區塊鏈的狀態,免去了自己部署節點的麻煩。

也正因此,Infura出錯,理論上波及面會很廣,在事件發散的過程中,甚至還有人揚言“以太坊會分叉”。理由是兩個不同的區塊瀏覽器上,對同一個塊高顯示了兩個不同的區塊。

但很顯然,以太坊根本沒有分叉。從事實上來說,兩個區塊瀏覽器所顯示的后續區塊都是相同的,這表示出塊的礦工沒有以兩個不同的區塊為父塊來繼續挖礦,也沒有彼此拒絕對方的區塊。從理論上來說,只有出塊的節點彼此之間使用了不同的共識規則,且都占據了一定的算力,才有可能形成分叉。

比特幣礦企Vinanz購入100臺S19J Pro礦機,總算力自上市以來增長650%:4月28日消息,在AQSE上市的比特幣礦企Vinanz Ltd(AQSE:BTC)以159000美元(127000英鎊)的總成本收購了100臺新的Antminer S19J Pro ASIC礦機。此次收購標志著Vinanz自4月21日在倫敦上市以來首次擴張礦機規模。

100臺新礦機已經從美國公司Luxor Technology Corporation訂購,預計將在大約三周內交付給加拿大的一個數據中心,此后不久就會投入使用。

Vinanz目前在北美擁有120臺ASIC礦機,總算力為12000 TH/s,自上市以來增長了650%。(Proactive Investors)[2023/4/28 14:33:22]

事實上,人們很快就發現了,這是因為Infura沒有運行最新版本的Geth客戶端,而某些特殊的交易觸發了這個版本的客戶端的bug,使之宕機了。Blockchair也是同理。所以很快就有人出來呼吁大家盡快升級Geth客戶端。

Binance宣布將支持 TRON(TRX)新舊合約互換, 將于2月27日12:00暫停TRX充提:2月17日消息,據官方消息,Binance 將支持 TRON(TRX)新舊合約互換,將于北京時間 2 月 27 日 12:00 暫停 TRX(BEP20)充提,現貨交易、保證金交易、期貨交易、Binance Pay 和 Simple Earn 訂閱在合約互換期間不受影響。

合約互換完成后,TRX(BEP20)存提將重新上線。此外,合約互換后,原有 TRX 將更名為 TRXOLD,通過舊 TRX (BEP20) 智能合約存入 TRXOLD 的用戶將能夠使用轉換功能將舊 TRX (TRXOLD) 轉換為新 TRX。[2023/2/17 12:13:35]

至北京時間11日18時,Blockchair團隊的NikitaZhavoronkov@nikzh發表推特,解釋事件的因果關系:

以太坊開發者某一次對代碼的更改導致了當日以太坊區塊鏈的分裂,分裂自區塊高度11234873開始;沒有更新客戶端的服務商,包括Blockchair和Infura,就因此受害,被留在了一個少數人組成的鏈上從技術上來說,這意味著發生了一次“未公開的硬分叉”修復措施是升級geth客戶端并運行debug.setHead(11234872)他還表示,這件事絕不該被低估,應該被認為是TheDAO事件之后,以太坊區塊鏈上最嚴重的一次事故。確實很奇怪,為什么會有某個錯誤僅僅導致軟件在某個時間以前的歷史版本崩潰而現有版本不崩潰?這豈非意味著,不同版本的geth客戶端的共識規則實際上不一樣,也就是某時某刻發生了一次不能向后兼容的共識規則改變?此外,一個Infura的崩潰就導致了大面積的服務出錯,這是否意味著Infura已經成了一個“單點故障”來源?

BitKeep CEO:已凍結黑客的部分金額并正全力追回用戶剩余損失,將徹底重構升級技術方案:金色財經報道,BitKeep CEO Kevin 針對攻擊事件表示,目前已凍結黑客的部分金額,追回用戶剩余損失的工作也在全力推進中。BitKeep 團隊目前非常穩定,我和其他核心骨干都會全力以赴為用戶追回資產,這是目前最重要的事。此后,我們將徹底重構和升級技術方案,將安全作為整個業務的中心。請丟幣的用戶亦不用擔心,我們一定會給大家一個滿意的交待。

Kevin表示,BitKeep APK 7.2.9 安裝包被黑客劫持替換,因此部分用戶使用到了已被黑客植入代碼的應用包以致私鑰泄漏。再次呼吁用戶,為了資產安全考慮,如果通過 Android APK 下載和更新 7.2.9 版本,都有一定的概率已經泄露私鑰。請盡快把資產轉移至新生成的錢包地址。[2022/12/28 22:11:28]

緣由

針對上面的兩個問題,Geth客戶端團隊的領導者PéterSzilágyi@peter_szilagyi都有回應。

OCC代理署長:政策制定者忽視了尋找監管其他類型金融技術的最佳方式:金色財經報道,美國貨幣監理署(OCC)代理署長Michael Hsu在接受采訪時稱,政策制定者可能會花費太多時間和精力來考慮加密貨幣,而忽視了尋找監管其他類型金融技術的最佳方式。我強烈的感覺是,如果任其發展,這個過程很可能會加速和擴大,直到出現嚴重問題甚至危機。

眾議院共和黨人在周二發給 OCC 負責人的一封信中批評了 Hsu 的評論,稱銀行與金融科技合作所帶來的技術創新使銀行能夠接觸到服務不足的客戶。

Hsu解釋稱,他對銀行和金融科技公司聯手的擔憂是,當多家公司分擔責任時,監控風險的責任可能會變得混亂。金融科技合作伙伴關系的適當監管方法仍不清楚,因為各機構正在努力處理各種問題,然后確定使用哪些權限。[2022/10/15 14:28:09]

從技術上來說,的確可以說是發生了“未公開的硬分叉”,但這只是因為開發人員修復了一個沉睡了兩年多的bug,而因為擔心公開披露這個bug會導致以太坊遭到攻擊,所以選擇了靜默修復。人們也不該鄙視Infura沒有使用最新的Geth客戶端。從運營者的角度,不緊跟軟件的最新版本是理性的。而依賴于Infura的服務,是自己把這個權利交出去了,而不是別人禁止了你運行節點,所以也沒什么可抱怨的。Peter的回應也引起了不同的反應。一位門羅社區的人表示,在2017年,他們也曾因為同樣的顧慮而選擇了靜默修復bug。當然,也有人認為,選擇靜默修復是對的,但至少應該通知大型基礎設施的提供者,只要聯系了,就能大幅減少這一漏洞所造成的破壞。

數據:當前Solana生態總市值為259.8億美元:金色財經消息,據CoinGecko最新數據顯示,當前Solana生態總市值為259.8億美元(截至發稿時為25,981,043,846美元),24小時交易額為4,965,812,183美元。目前按市值排名前三的項目分別是:Solana(17,097,808,143美元)、STEPN(876,951,779美元)和Serum(392,764,225美元)。[2022/5/14 3:16:20]

北京時間12日凌晨5:34,Peter發布了《Gethv1.9.17客戶端所造成破壞的事后報告》,定位了問題的來源:發布于2019年11月7日的Gethv1.9.7錯誤實現了EIP-211;JohnYoungseokYang在2020年7月15日報告了該問題,于是Geth團隊在7月20日更新的v1.9.17版本中修復了這個問題。該次修復使得Geth客戶端在執行涉及相關規則的交易時能跟其他以太坊客戶端相一致,但卻使v1.9.17版本與歷史版本的Geth發生了不一致。

如Peter所述,這個過程完全不是為了引入某個以太坊社區不知道或者不同意的共識規則,僅僅是因為寫了bug所以必須修復bug。除非你管寫了bug也叫“硬分叉”,否則就沒有理由管修復bug叫“硬分叉”。

其次,到底怎么發布修復,實際上并不簡單。以太坊的硬分叉協調也需要很長時間。如果公開一個帶有嚴重危險性的bug,在各節點升級的過程中難保不會有人嘗試攻擊。作為客戶端開發者,他考慮的更多是以太坊網絡的安全性,而不是某個服務的安全性。而且,他們也并不是對所有的bug都采取同樣的靜默修復措施,很多都是公開修復的。

12日上午7:11,Optimism團隊的JingishiringforOptimism@jinglanW出來披露了更多信息:他們在6個月前復制了Geth客戶端的代碼庫來研究和開發OptimisticVirtualMachine,在該過程中,他們發現了一個神秘的bug,也修復了該bug,但一直無法定位其來源;他們一直以為,這個bug可能跟團隊引入的定制化改進有關,但11號他們開始懷疑錯誤就存在于舊版的geth客戶端中,而不是因為他們引入了一些改進。于是他們看了ethernodes.org顯示的節點分布之后,就決定在主網上測試該bug。因此有了后面的事情。

所以,實際上,是Optimism團隊發現了一個bug,草率地決定在主網上測試該bug還存不存在,再加上Geth團隊此前選擇了靜默修復該bug,才使得某些沒有及時升級的節點出錯了。

該如何理解和看待這件事情呢?

就事情的本因來看,這是因為客戶端團隊選擇了靜默修復一個沉睡了許久的bug。雖然很多人認為geth團隊可以通過聯系基礎設施提供者來降低破壞,但我在這里還是認為,我們應該給客戶端開發人員更多的信任和尊重。我相信Geth客戶端團隊這么做是有理由的,他們知道絕大部分節點都在使用自己的軟件,也考慮了bug的沉睡時間,因此選擇了靜默修復。從事后諸葛亮的角度,當然提前通知了大的基礎設施提供者會更好,破壞會更少。但是,這樣吹毛求疵合理嗎?為什么依賴于Infura的服務不假設Infura可能崩潰?

我承認我在這里不太公正,但更公正的話,也有很多人已經說過了。我在此只想表達我對geth客戶端團隊的敬意。我愿意把印象分給他們,因為他們在過去提供了許許多多的工作量證明。他們值得大家的尊敬。

在靜默修復措施的執行上,當然存在提高的空間,也應該跟包括門羅和比特幣社區學習經驗。但如果只想著譴責geth團隊,乃至以陰謀論來揣度他們,那才是更大的不公正。

關于“Infura是否成為了單點故障的來源”,也分簡單的回答和復雜的回答。簡單的回答是,不是,因為就像Peter所說,從來沒有人禁止你部署節點,只是很多提供商自己選擇了外包。Infura不是設計層面上必須經過的一個單點。只是因為各種各樣的原因,它成了可能是最大的節點服務提供商。

但復雜的回答是,以太坊節點的資源消耗比較大,確實是一個被低估的問題。以太坊協議的運行需要各節點完全執行區塊中包含的交易,而執行交易必須從狀態數據中取出數據、并且完成后也要將結果寫入,這個過程會涉及大量的硬盤隨機讀寫。而且,隨著狀態數據體量的擴大,讀寫的效率要求也會提高。前些年熱議的“狀態膨脹”問題,在當前的以太坊上還沒有解決。運行節點的門檻高,節點的數量自然就少。從善意的角度看,如果以太坊節點的運行門檻降低,我相信會有更多人自建節點,而不是選擇依賴于Infura。

但這個問題的解決,同樣依賴于以太坊客戶端開發者和研究人員的智慧。無狀態性,可以說是解決狀態膨脹問題的終極方案。而在終極方案變得可行之前,我們仍然需要客戶端開發者,為我們貢獻更高效率的客戶端。

所以,確實發生了一件事,也確實暴露出了一些問題、指出了我們學習和進步的方向。但解決這些問題,離不開我們對社區中不同團體的理解和尊重。遠離陰謀論,遠離惡意和自作聰明的嘲諷,弄清楚問題的根源,思考其實質和改進方案。我們做的事情,才決定了我們是誰。

Tags:ETH以太坊GETINFGETH價格以太坊官網錢包下載教程OnegetcoinInfinity Cake

以太坊最新價格
好牛酉已資l配資公司上證50大跌1.74%白酒股暴跌5.33_BTC

上證50大跌1.74%!白酒股暴跌5.33%!外資砸盤49億!原因終于找到了!下周A股會向下補缺口嗎?給股民的一些提醒:1、A股今天弱勢調整,不過市場情緒也不算差,上漲家數1837家.

1900/1/1 0:00:00
鏈上ChainUP攜手開源礦池戰略支持并出席獵云財經11月24日深圳BEYOND區塊鏈峰會_區塊鏈

據官方消息,鏈上ChainUP攜手開源礦池將加入獵云財經舉辦的BEYOND-2020區塊鏈產業大會暨年度頒獎盛典。據了解,本次峰會將于11月24日在深圳灣萬麗酒店隆重召開.

1900/1/1 0:00:00
11.14BTC.ETH行情分析策略_STG

市場沒有永遠的多頭也沒有永遠的空頭,上漲下跌震蕩總在不停的替換著向右運行著,不管是看漲也好看跌也罷,別忘了自己心中那根不可逾越的線,關鍵的阻力和支撐都是趨勢和方向轉折的關鍵因素.

1900/1/1 0:00:00
ECB行長:歐盟將于2021年1月就數字歐元做出決定_區塊鏈

點擊上方“藍色字”可關注我們!暴走時評:歐洲央行行長ChristineLagarde在11月12日舉行的在線政策討論會上表示,歐盟將在明年1月確定是否發行CBDC.

1900/1/1 0:00:00
AMA:Nerve如何構建數字資產跨鏈互通之橋?_Nerve

來源:Biyong社群 11月12日,NerveNetwork發起人Berzeck作客Biyong社區,向大家進行了《NerveNetwork如何構建數字資產跨鏈互通之橋?》的主題演講.

1900/1/1 0:00:00
11.14ETH行情分析以及操作建議_BRI

大家好我是幣圈行情策略師,專注幣圈主流貨幣走勢分析,不高談闊論,只認真寫自己的見解。寧老師語錄:交易的痛苦,一部分在于沒有認知交易紀律,一部分在于想要抓住每一波行情.

1900/1/1 0:00:00
ads