加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads
首頁 > 幣贏 > Info

為何針對DeFi的攻擊會在以太坊2.0合并后更難執行?_以太坊:Miner Arena

Author:

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

最近有人在討論礦工是否可能采用一個還不存在的、修改過的以太坊客戶端,主要為了使礦工可以接受賄賂,對區塊鏈進行短程的重組(創造這種賄賂的主要用例是攻擊DeFi協議)。

在這篇文章里,我們將解釋這個攻擊向量為什么在以太坊2.0合并后更難執行。

什么是分叉選擇規則,為什么重要

分叉選擇規則是一個函數,由客戶端來求值,該函數把區塊集和見過的其他消息作為輸入,然后把「權威鏈」的內容輸出給客戶端。之所以需要分叉選擇規則,是因為可能有多條有效鏈可選(即如果同一個父區塊有兩個競爭子區塊同時發布)。

重組(reorg)?是這樣一種事件——本來屬于權威鏈的區塊變成不再是權威鏈的一部分了,因為有一個競爭區塊把它擊敗了。最終確定性是這樣一種情況——分叉選擇規則強有力地支持某個區塊,以至于該區塊在數學上不可能被重組(或至少是經濟行不通)。

在有些分叉選擇規則里(例如Tendermint),重組是不可能發生的;分叉選擇規則只通過添加任何已經通過BFT(拜占庭容錯共識協議)共識、最終敲定的區塊來擴展現有的鏈。在其他分叉選擇規則里,重組是很常見的。

以太坊的現狀如何

在以太坊這樣的PoW區塊鏈里,我們通常看到的是「最長鏈規則」(或更準確來說,是「最高總挖礦難度規則」)。這意味著,當客戶端看到兩條區塊鏈時,它會選擇總難度(即該鏈里所有區塊的難度總和)最高的那條。

Flare CEO解釋為何Flare主網延期發布:涉及用戶群巨大,快速發布風險過高:Flare(FLR)首席執行官Hugo Philion回答了一些圍繞Flare(FLR)的問題。此前消息,Philion發帖表示在Flare主網運營開始之前,將在“金絲雀網絡”Songbird測試其某方面的功能。這意味著Flare主網發布被推遲到2020年第四季度。Philion強調,他的項目“沒有奢侈到可以”成為一個交易價值微不足道、開發活動少、社區規模小的“幽靈鏈”。據他說,Flare(FLR)的發布是加密領域中最“公開”的發布之一,因為涉及用戶群很大。快速發布的風險太高了,區塊鏈企業家和普通用戶都對他們的Dapp感興趣。因此,該團隊決定啟動一個更復雜的“真實”開發實驗,即Songbird。據悉,Songbird網絡擁有自己的治理和實用代幣SGB,SGB將分發給FLR分發的所有參與者。

Philion還強調,在Flare主網啟動后,他的團隊將不對Songbird和Flare本身的進展負責。所有計劃、協議升級和其他重大變化都將由社區決定。因此,其團隊不應該被視為云區塊鏈計算的供應商。而關于最近完成的1130萬美元戰略融資,Philion聲稱,這筆資金足夠他的工程師進行“多年”開發,所以下一輪融資并不是Flare的首要議程。注:6月初消息,Flare宣布完成1130萬美元的新一輪融資,由Kenetic Capital領投。(U.Today)[2021/7/26 1:15:02]

為了方便舉例,假設區塊難度可以是100或110,想象以下這樣的場景:

直播|李寶寶 > 靠首發DeFi幣崛起,為何BitMax抓住了風口:金色財經 · 直播主辦的《 幣圈 “后浪” 仙女直播周》第12期15:00準時開始,本期“后浪”仙女Bitmax 的李寶寶將在直播間聊聊“靠首發DeFi幣崛起,為何BitMax抓住了風口”,請掃碼移步收聽![2020/8/11]

1、我們從難度為100的區塊1開始同步。

2、區塊2a和3a都以難度100到達,我們把它們嵌入到我們的區塊鏈里,構成總難度為300的分叉。

3、區塊3b以難度110到達,并聲稱2a是它的父區塊,構成總難度為310的分叉。分叉選擇規則會發現目前「最重」的鏈是第二個分叉,然后轉為選它。這種情況屬于1個區塊的重組,因為只有區塊3a被改變了。請注意,區塊不是直接被丟棄的,因為新到達的區塊可能會導致分叉選擇轉為選擇第一個分叉。

4、區塊2b和3c都以難度110到達,構成總難度為320的新分叉。這意味著分叉選擇規則現在將使用2b而不是2a,3c而不是3b,區塊2a和3b都曾在上一條權威鏈里。這種屬于2個區塊的重組。

讀者應該能看到邏輯是怎么發展下去的。如果一個新區塊4a到達并聲稱3a是它的父區塊,分叉選擇規則會轉為選第一個分叉,如此類推。

鏈重組的影響

由于延遲,短程的重組經常發生。礦工A和礦工B可能同時找到一個有效區塊,但由于區塊是在p2p網絡里廣播的,部分網絡可能先看到礦工A的區塊,而另一部分先看到礦工B的區塊。如果兩個區塊的難度相同,就會出現平局,客戶端端要么隨機選擇,要么選先看到的那個區塊。通常,當第三個礦工C在礦工A或B構建的區塊上構建了一個區塊時,另一個區塊就會被遺忘。偶爾運氣不好還會導致2-5個區塊重組。比那更長的重組幾乎總是由于極端的網絡故障、客戶端漏洞、或惡意攻擊。

動態 | 智能投顧公司Wealthfront創始人解釋為何其投資服務不包含加密貨幣:智能投顧公司Wealthfront創始人Andy Rachleff稱,公司聚焦于千禧一代投資者,應用程序鏈接到Coinbase,用戶可查看加密貨幣余額,但在Wealthfront的投資服務不包含加密貨幣。

其表示,公司曾發文解釋關于比特幣的立場。公司專注于經時間考驗、學術驗證的投資方法,這就是為何Wealthfront提供基于多元化和再平衡的低成本指數基金投資組合的投資服務。這項研究清楚表明,從長遠來看,人們(甚至專業人士)不擅長超越市場,實際上遠不如市場表現。Robinhood等公司為那些自己動手、試圖挑戰研究結論的人服務。我敢打賭,如果你評估Robinhood客戶表現,那將特別糟糕。因此,我們正努力為客戶做長期來看最好的事情,作為前專業投資者,我學到的一件事是,為了讓某樣東西成為投資,必須有現金流。如果沒有現金流,那就是投機。比如貴金屬是投機,而不是投資。你不會看到老練的投資公司會購買貴金屬。那只是投機。這就是為何加密貨幣不是我們投資服務的一部分。我們告訴人們,“聽著,如果你想用游戲費來做這件事,我們歡迎你這么做,但應該控制在凈資產的10%以下。”(The Block)[2019/12/4]

短程重組并不致命,但對網絡的確仍會帶來一些嚴重的有害后果:

·節點開銷:當一起重組發生時,因為需要轉用新的分叉,可能需要重新執行交易或狀態編輯,節點會有一些內存和磁盤開銷。

·用戶體驗下降:可能重組意味著用戶需要等待更長的時間,才能安全處理需要「被確認」的交易。這方面的一個重要子用例是交易平臺等企業在接受存款前需要等待更長的時間。

動態 | 李啟威連發數十條推文釋疑:為何看起來Litecoin Core在GitHub沒有更新:剛剛萊特幣創始李啟威連發數十條推文,介紹了萊特幣的代碼更新情況和開發進展。他表示在8年來,只有少于開發人員致力于Litecoin Core。Adrian Gallagher目前正在領導Litecoin Core的開發,并且已經進行了幾年,大家可能不太了解Adrian,因為他不在推特上,但他很棒,他正在悄悄地做Litecoin Core開發的幕后工作。

最近有很多人質疑萊特幣在2019年沒有更新任何代碼,從GitHub上看似乎這樣,但這里有兩個原因:第一個是萊特幣的更新要比比特幣滯后幾個月,我們發布了幾個月前在比特幣中發布的代碼,這些代碼是在2018年編寫的。GitHub的有趣之處在于,它使提交的時間保持不變,不管是誰寫的,還是什么時候提交到代碼庫的。因此,比特幣開發者因在萊特幣代碼庫中的工作而受到好評。這就會讓人看起來,盡管在2019年5月開發并發布了最新的Litecoin Core,但在GitHub你會發現大多數提交都是在2018年完成的。第二個原因是我們沒有在主要項目的主分支上工作,將非發布代碼簽入主分支通常不是好的開發實踐。事實上,Adrian一直在他的個人分支上積極地開發Litecoin核心版本0.18.1。

以上是Litecoin Core開發多年來的運作方式,我們去年甚至遇到了用戶相同的擔憂,有人去年看了我們的主分支工作并聲稱Litecoin在2018年停止了開發。我打賭即使在這個解釋之后,我們也會在2020年讓人感到困惑。

另外,李啟威還表示Litecoin Foundation的目的有兩個方面:致力于LTC的推廣和開發。“在過去的幾個月里,我認為一直認為推廣比開發更重要,但從長遠來看,這兩者同樣重要。我會努力與社區進行更好的溝通,并提供更頻繁的消息同步。”[2019/8/11]

·交易背景的不確定性:當一個用戶發送一筆交易時,他們會更不確定該筆交易會在什么背景下執行(例如,最新的N個區塊會被回滾嗎)。顯然,這會使DeFi交易更容易出現意外的失敗、比預期更糟的交易結果、或有害的MEV提取。

動態 | 澳本聰回應江卓爾“為何不了解Base58 編碼”:我想通過 Base58 來誤導聽眾:江卓爾和澳本聰在昨日辯論上,江卓爾問澳本聰名:為什么在銷毀(burn)地址中使用 X 而不是 0。中本聰發明了用于這些地址的 Base58 編碼模式,中本聰有意地排除了看起來相似的數字和字母,比如零和字母 O。為什么您會不了解中本聰發明的Base58 編碼?

澳本聰(CSW)回應稱,這是我的代碼。我想通過 Base58 來誤導聽眾,想讓人們以為我不了解比特幣。實際上 Base58 和交易無關,它只是錢包的實現方式,checksum 是錢包層面的東西,它是錢包交易時用來驗證的東西,它并不存在比特幣網絡上。[2019/7/24]

·更容易受到51%攻擊:在以最長鏈作為分叉選擇規則的系統里,如果區塊鏈從選擇B1轉為B2進行重組,那么B1的難度不再為鏈提供安全性。攻擊者不再需要擊敗所有誠實礦工,他們只需擊敗沒被重組的那部分誠實礦工。如果重組進行得頻繁,這會使得攻擊變容易很多。

可能出現的最壞情況

在最壞的情況里,頻繁的重組會使區塊鏈的結算保證完全失效,并阻止它繼續進行。正常來說,對于出塊者來說,「激勵相容」的策略應該是延長最長的鏈。但如果某個區塊執行后的狀態異常有利可圖呢(例如,交易費很高,或只有直接在該區塊后構建新區塊才能提取MEV)呢。這個問題在過去討論「沒有區塊獎勵的比特幣」和自私挖礦問題上探討過,而在今天「以太坊生態里DeFi相關的MEV"問題上也探討過。

這些情況都存在很強的動機試圖通過與其他區塊競爭」竊取「費用,而不是延長權威鏈。在下面的例子里,區塊1的執行后狀態非常有利可圖,且區塊2a已經被挖了。然而,不是一個,而是三個出塊者已經選了在區塊1上繼續挖,而不是區塊2a(以獲得區塊1后顯露出的MEV),這可以擴展到任意數量的出塊者。

很明顯,這樣的模式為惡意51%攻擊打開了一扇大門。我們把礦工參與這種重組挖礦策略的情況稱為」短視理性「,因為決定這樣做在短期內可能是理性的。但是,他們都或顯式地(質押者)、或隱式地(礦工)看漲ETH(因為交易費和區塊獎勵都是以ETH計價的),這意味著這種減少用戶對以太坊信任的攻擊是與他們的最佳利益有沖突的,因此在長期來說是不理性的。

合并后的PoS以太坊

在NakamotoPoW共識算法里,區塊在分叉選擇里是被」連續「敲定的。首先,當一個區塊被挖,此時一個競爭區塊有可能可以對其進行重組。如果一個區塊成功被打包進權威鏈,(平均)13秒后會有其他礦工在該區塊上構建第二個區塊。此時,一條鏈要重組的話需要有兩個競爭區塊。隨著構建了越來越多的區塊,對鏈進行重組的難度會持續上升,但速度很慢。

以太坊信標鏈實現的是一個名為Gasper的權益證明協議,其分叉選擇規則稱為LMD-GHOST。不同于NakamotoPoW,在Gasper里,參與出塊的有兩個角色:

·提議者:負責提議區塊的一名驗證者

·證明者:由一組驗證者構成,他們對應該成為權威鏈鏈頭的區塊進行投票。證明者的投票被稱為」證明(attestation)",這是他們給區塊的「權重」。控制了證明者意味著控制了分叉選擇規則。

每12秒就有一個slot,這代表著提議一個區塊的一次機會。在每個slot里會有一個混洗算法偽隨機地選出一個委員會,這個委員會由所有驗證者數的大約1/32組成,其中每個委員會里的一名驗證者會作為提議者,其余的驗證者作為證明者。證明者同時對他們認為應該被打包到權威鏈的區塊進行投票。因為委員會是通過偽隨機采樣組成的,攻擊者是沒有辦法把他們的驗證者都集中到一個單一slot里的。

當前,信標鏈有大約19.6萬名驗證者,意味著每個slot里的委員會人數大約是6125。因此,即使是一個區塊的重組也是極其困難的,因為一個只控制了一些驗證者的攻擊者是無法擊敗數千名誠實的多數驗證者的。

為了更好理解為什么是這樣,讓我們看看以下這個例子:有2個slot和24名驗證者,其中9名是惡意的。驗證者被分成2個委員會,經過隨機混洗,對手不太可能可以控制他們被分配到的委員會人數的50%,更不能實現重組。

更正式地說,擁有p%質押量的惡意行為者控制N名驗證者大小委員會的50%以上的概率遵循二項式分布(其中k=N/2):

算出多個質押值的概率后,我們得出下表:

現在我們了解到,攻擊者如果想直接進行重組的話需要控制總驗證者數的50%。

如果控制證明者的25-49%(參閱此論文、或這里的概要),控制者還是可能發起一些更小型的攻擊的。但是,對這些攻擊已經有修復方法了,它們可以被悄悄執行,從而達到接近50%的無條件安全性。

最后,長程重組是不可能了,因為所有比過去兩個epoch更深的區塊都會被認為「最終確定了」,也就是說,對它們進行回滾是不可能的了。如果一個攻擊者造成兩個沖突區塊被最終確定了(例如,控制了67%的質押量),系統需要倒回去,通過社會性干預來恢復。

采用重組策略的博弈論

現在我們了解了在不同的分叉選擇規則下重組是如何發生的,不妨通過一個簡單的博弈論例子來了解,對于礦工或驗證者來說,什么時候運行軟件來執行重組以獲利是有意義的。

我們可以用收益矩陣非正式地描述每個場景,其中「叛變」意味著「下載并使用執行重組的軟件」。收益是「短視的」,沒有考慮長期后果。

NakamotoPoW

在最長鏈PoW里,即使是驗證者集里的一小部分人,也有可能實現短程重組。執行后狀態是異常有利可圖的區塊總會偶爾出現,即使是1-10%的成功幾率也值得嘗試,與該區塊現有的子區塊進行競爭。

礦工可以形成一個中型礦池,等待找到未來連續2-3個區塊的機會,或把部分他們的收入發送到一個任何人都可以認領的合約,以賄賂其他礦工也運行相同的軟件,以構建他們的區塊鏈,幫助它擊敗現有的權威鏈。

因此,有些礦工可能會嘗試運行重組客戶端。

Gasper

在Gasper里,重組1-64個slot是可能的,但需要攻擊者控制整個驗證者集的大部分(由于他們不能把他們的押金集中在某個特定的slot,所以他們的質押量需要足夠大才能在他們想要攻擊的slot里被隨機選中)。采用重組挖礦軟件用處不大,除非有非常大量其他驗證者也同時采用。

因此,如果51%的驗證者都稍微有點利他主義精神或懶惰,那么沒有人會運行重組挖礦軟件這件事基本可以確定。

Tendermint

在Tendermint里,事情會更加簡單:重組是完全不可能的,任何違反單個slot最終敲定規則的實現都需要超過三分之一的驗證者被罰沒。與Gasper的情況相似,這也意味著沒有人會運行重組挖礦軟件這件事基本可以確定。

從上面我們可以看出,盡管在三種情況里采用"reorggeth"都是可能的,基于并行證明這個理念的分叉選擇規則比Nakamoto分叉選擇規則帶來更穩定的誠實平衡。

總結

在以太坊的語境里,最有效的預防措施是進一步加快合并的工作,特別是趕快發展出能實現可接受的「緊急合并」的能力,以把以太坊轉化為PoS機制。倉促合并會帶來很高風險,還會毀壞基礎設施,但如果很多礦工開始對鏈進行重組攻擊的話,還是需要一個可信的承諾來抵御這樣的行為。

接近合并的時候就是風險最大的時候,因為礦工仍然主導著這個系統,但他們的時間不多了。然而,有兩個因素會緩解這個風險:

·以太坊礦工經常同時是(i)其他區塊鏈的礦工,和/或(ii)以太坊社區具有其他能力的成員,因此作出良好行為的動機會繼續存在。

·隨著合并臨近,實現緊急合并的成本和風險都在降低。在預計合并日期的前幾個月進行緊急合并是非常具有破壞性的。在預計合并日期的前兩周進行緊急合并則能為驗證者操作員已經下載好的客戶端提供參數設置。

合并后,重組驗證將成為一個更小的問題,因為單個驗證者或小群體證明者無法獨自重組一個區塊。成功的重組攻擊需要解決讓大部分驗證者都同時參與進來的協作難題。但是,還是存在一些小風險的。如果想要進一步提高安全性,那么以太坊可以要么進一步調整分叉選擇規則,將重組攻擊的要求提到到50%的理論最大值;要么轉為直接單個slot實現最終敲定的共識。

Tags:以太坊ARELARFlare以太坊幣美元最新行情走勢圖Miner ArenaGlo Dollarflare幣中文

幣贏
監管 DeFi?FATF 最新合規精神 你需要了解下_VAS:玩區塊鏈的都是什么人

對于加密企業/團隊來說,監管的收緊可能會導致嚴厲處罰,包括罰款、限制等。為避免這種情況,必須及時做出調整,遵守FATF的規定.

1900/1/1 0:00:00
最有前途的以太坊替代品是什么?(二)_區塊鏈:比特幣

此前,我們分析了一些可能超過以太坊成為智能合約平臺之王的高市值智能合約區塊鏈。今天,我們將繼續討論和分析一些市值排名在40-100之間的智能合約平臺.

1900/1/1 0:00:00
NFT部分生態梳理:從Flow鏈到Axie你了解多少?_NFT:OpenAI ERC

NFT意為非同質化通證/非同質化代幣,是一種不可分割、獨一無二的加密數字憑證。對于ETH、BTC等常見的加密貨幣而言,相同數量的代幣之間沒有區別,你的一個BTC和我的一個BTC作用和價值完全相同.

1900/1/1 0:00:00
金色觀察丨一文讀懂薩爾瓦多擬推的國家穩定幣“Colón-Dollar”_比特幣:加密貨幣市場行情

金色財經區塊鏈7月18日訊?根據薩爾瓦多當地新聞媒體ElFaro報道稱,該國政府正計劃讓其公民使用美元穩定幣和比特幣.

1900/1/1 0:00:00
DAO依托代碼的數字化民主能否顛覆現存的管理模式_DAO:maker幣什么意思

2016年5月初,以太坊社區的一些成員宣布成立TheDAO,也稱為GenesisDAO。它是一種完全由“代碼”運行的管理體制.

1900/1/1 0:00:00
MEV 與 EIP-1559_MEV:以太坊交易軟件

在倫敦硬分叉納入的EIP-1559將帶來以太坊費用機制的重大調整,旨在讓用戶更容易估算費用,并通過燒毀部分交易費來鞏固ETH作為網絡基礎貨幣的地位.

1900/1/1 0:00:00
ads