
原標題:《深入分析Arbitrum 的安全機制》
來源| Hackernoon
作者| DeGate
二級標題
二級標題
植根於以太坊的安全性中
眾所周知Layer 2 解決方案與其他擴容解決方案相比,最大的一個優勢就是其安全性依賴於以太坊主網的安全性。然而,大部分人可能都知道這個道理,但卻不知道為什麼。那麼Arbitrum 如何根植於以太坊的安全性中呢?
我們首先來回顧一下Optimistic Rollup 解決方案的主要特點:
在一個Rollup 解決方案中,交易(作為calldata) 編寫在L1 上,但是其實際計算和合約的存儲在L2 上完成,以實現擴容。
驗證者在L1 上發布一個斷言(assertion),可以理解為將所有交易和結果打包成一個Rollup 區塊,然後發送到L1 的交易中。
數據可用性
數據可用性
數據可用性
緊急退出機制
AnyTrust
緊急退出機制
緊急退出機制
Arbitrum 當前沒有一個特定的緊急退出機制,但是有一系列安全機制來確保用戶可以安全退出。
首先,數據可用性確保用戶存儲在L2 上的資產和數據可以在任意時候從L1 上恢復,並且永遠不會丟失。
其次,任意用戶都能向L1 上的收件箱合約發送一個交易請求來強制退出。
二級標題
二級標題
為什麼挑戰期是七天
Arbitrum 是一個多輪交互的Rollup 解決方案。這個解決方案首先會樂觀地相信驗證者做出的斷言是有效的,而在挑戰期其他驗證者可能會對此提出質疑和挑戰。在大多數情況下,不會有挑戰提出,那麼整個系統就可以更高效且成本更低。
顯然,挑戰期越長,整個系統就越安全,但同時用戶體驗也會更差(因為用戶需要等到挑戰期結束之後才能退出)。那麼我們是如何確定最佳的挑戰時期呢?
Arbitrum 團隊提出這種模型來計算最佳的挑戰時期:
假設一個挑戰時期等於C 區塊的長度,以及攻擊者在L2 上可以獲得的最大值為V。
則攻擊者獲得的預期價值為V exp(-AC)。
註解:exp 為指數函數”e“,A 為某常數A,AC 前的”-“ 符號表示C 與預期收益成反比。
斷言者需要保證其資產遠超過攻擊的資產價值以應對攻擊。我們假設超過10 倍,則斷言者的成本為10V exp(-AC)I。 I 指的是資本利率。
我們假設某退出用戶在挑戰期被鎖定的提款資產為CWV (W 為小數,WV 是L2 上總資產的一部分,每個時間點都會有C 個未結束挑戰的區塊) 和用戶的資產成本為CWVI。
最佳的挑戰期限應該設為斷言者和提款用戶的資產總成本最低的情況下。即取C 的值時,10V exp(-AC)I+CWVI 最小。 V 和I 在兩項中都出現,它不會影響最小值點,可以忽略。我們只需對C 求導,將所得導數設為0,並得到C = ln(10A / W) / A。
現在我們將一些合理的數字插入上述等式中,以獲得一個大概的最佳挑戰期限。
假設一個區塊時間內的連續審查成功率高達99.99%,即A = -ln(0.99) = 0.01。
二級標題
二級標題
如何防禦審查攻擊
在這一部分,我們討論了Arbitrum 如何防禦四種主要的審查攻擊:分叉攻擊(forking attacks)、迴避攻擊(shunning attacks)、幹擾攻擊(jamming attacks) 和快速攻擊(speed demon attacks)。
分叉攻擊(forking attacks):礦工合謀(或受賄) 丟棄包含正常挑戰的區塊,以便接受不包含挑戰的替代鏈。
首先,由於挑戰者的存在,一旦發生分叉攻擊,難免會被某個挑戰者發現。而當大家發現區塊鏈中的挖礦算力壟斷者(這是分叉攻擊的先決條件) 為了盈利而肆無忌憚地違反規則時,區塊鏈本身就被摧毀了。此時,Arbitrum 是否採用挑戰期設計模型還存在爭議。
迴避攻擊(shunning attacks): 礦工們合謀(或受賄) 忽略掉他們生產出的區塊中的普通挑戰。
我們假設壟斷者控制了90% 的挖礦算力,並且期限為50 個區塊。那麼壟斷者需要將50 個連續的區塊打包起來才能完成攻擊。這個概率是0.9 的50 次方,也就是0.5%。而實際挑戰期限遠不止50 個區塊,所以攻擊成功的概率極小。在Arbitrum 的設計中,攻擊者在攻擊失敗時會支付巨額罰款,因此壟斷者發起迴避攻擊是非常不划算的。
幹擾攻擊(jamming attacks) :攻擊者發起”老式的拒絕服務攻擊(DoS)“ 來阻止任何一方發布任何交易(不能發布包含挑戰的交易)。
因為只要有一個正直的挑戰者,攻擊就會失敗,所以攻擊者必須阻止所有有可能的挑戰者。如果有很多這樣的挑戰者,攻擊將很難完成。更糟糕的是,任意利益相關的一方都可能僱傭一個沉默的監察者以作為備用計劃。他們只在主要參與方太晚發布挑戰或者在發布挑戰時遇到了困難時才會介入。攻擊者並不知道網絡中是否有沉默的監察者,或者儘管知道他們存在,也不知道他們是誰,所有在這些監察者有實際行動之前,攻擊者都無法向他們發起DoS 攻擊。
快速攻擊(speed demon attacks):攻擊者生成鏈上斷言的速度十分快,以至於其他方不能在時間截止之前檢查並且挑戰所有斷言。
Arbtirum 採取的應對方法是:限制創建斷言的速率,以確保在任何時候檢查未決斷言和挑戰其中一個斷言所需的總工作量能夠在協議的期限之內完成。具體來說,對Rollup 鏈中的智能合約運作進程施加速度限制,因此即使有人能夠快速生成大量斷言,它最終也必須慢下來。
總之,我們不需要太擔心分叉攻擊。如果出現惡意挖礦算力壟斷的情況,那麼可以說這個區塊鏈已經基本上變得沒有吸引力了。 Arbitrum 可以通過適當的設計或者實踐來防御其他三種審查攻擊。
序列器模式(Sequencer Mode) 的優勢和風險
Sequencer 模式是Arbitrum 的一個可選功能,Offchain Labs 在主網的發布版本上運行唯一的Sequencer 節點。
Sequencer 被賦予有限的權力來控制收件箱中每筆交易的排序,以保證用戶的交易結果能夠立即被確定,無需在以太坊上等待五分鐘至區塊被確認,甚至不需要像在以太坊一樣等待15 秒的出塊時間。
同時,一個表現良好的sequencer 可以有效地防禦搶跑攻擊。
因此,一個由Offchain Labs 運營的中心化的、表現良好的Sequencer 節點,對於項目的早期開發是非常有利的,並為其減少了很多麻煩。但是安全隱患也很明顯(雖然很難想像Offchain Labs 會作惡,但也不排除這樣的可能性)。 Offchain Labs 承諾在技術成熟後立即切換到去中心化的、多個Sequencer 節點的解決方案。
此外,收件箱也將一分為二,一個接受由Sequencer 提交的交易,另一個則接受由常規聚合器或者用戶提交的交易,這也為不信任中心化的Sequencer 的用戶提供了另一種選擇。
本文鏈接:https://www.8btc.com/article/6655971
轉載請註明文章出處