header-langage
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
掃碼下載APP
Partnered With:

Vitalik Buterin:為什麼不擔心EIP-1559可變區塊容量

閱讀本文需 7 分鐘
Vitalik Buterin 認為, EIP-1559 對客戶端產生的風險並不會比固定 gas limit 的機制更高。
原文標題:《Vitapk:為什麼我不擔心EIP-1559 中的鬆弛區塊容量》

原文作者:Vitapk Buterin
原文翻譯:ETH 中文站



對EIP-1559 的一種批評是:區塊大小是可變的,在[0,25M] 的範圍內浮動而不再是固定的12.5M gas pmit,這使得客戶端需要處理加倍的負載。這個論點進一步演繹為,如果我們認為客戶端是可以處理這麼高的負載,那麼他們應該可以任何時候都處理這麼高的負荷,這樣我們倒不如放棄EIP-1559 而直接做更有用的事——把區塊大小限制提升一倍。


這個想法背後的核心觀點是,大區塊的首要危害來自經由客戶端的那些最大區塊,而不是平均區塊大小。我認為這個想法是錯的 (因此 EIP-1559 對客戶端產生的風險並不會比固定 gas pmit 的機制更高),以下是我的理由。


重溫:不馬上把 gas pmit 提高到 100M 的理由有哪些?


三個原因:


1. 正常情況下的區塊處理時間會增加


從目前約400 ms 增加到約3.2s,這會帶來許多負面後果:


非常高的叔塊率,導致中心化


除了電力最強的節點外,其他所有節點都難以保持同步


即使是電力最強的節點也需要更大量的資源消耗


短暫斷電(例如你在手提電腦上運行一個節點,你需要把電腦從家裡移動到咖啡廳)後的重新同步前會有更長的延遲



2. 由於DoS 攻擊,最壞情況下區塊處理時間會延長,從現在的20~80 秒延長到可能160~ 640 秒。


3. 儲存成長率會上升


從現在大約50 GB/ 月上升到大約400 GB/ 月,這會導致


同步速度慢很多


儲存需求高很多


更慢的磁碟處理速度,因為大型資料庫的存取速度會慢於小型資料庫


請注意:理由1 與理由3 下的所有內容都只適用於長期正常使用情況,而非受高峰影響。因此,如果要考慮高峰期的影響,關注理由 2 就夠了。


論點1:EIP-2929 已彌補了EIP-1559 的不足


EIP-2929 對儲存存取操作的gas 成本進行了提升,已經把最壞情況DoS 攻擊所需的gas 消耗增加了3 倍。這意味著 EIP-2929 與 EIP-1559 配合起來實際上是比現在在最壞情況下處理區塊所需消耗淨減少了 1.5 倍。


這裡很自然會問一個問題:「如果 EIP-2929 那麼好,為什麼不直接把 gas pmit 調高到 25M 或 37.5M」?這個回答很簡單:理由 2 不是避免 gas 消耗增加的唯一原因。即使 DoS 問題可以完全解決,理由 1 和理由 3 下的問題在可見的未來還會存在。因此,EIP-2929 給的額外鬆弛部分是不可以用以對區塊容量進行大幅提升。


論點2:對於相同程度的DoS 攻擊,短時間攻擊引起的峰值帶來的弊端遠比長時間攻擊帶來的少


如果攻擊者對鏈發動攻擊,用區塊容量最大值(目標容量的2 倍)的垃圾資料填充區塊,每個區塊的gas 價格上漲1.125 倍。這個漲幅是指數上升的:持續產生 5 個滿區塊(大約 65 秒)會讓 gas 價格上升 1.8 倍,而在 5 分鐘之後,gas 價格會上升 15 倍 (10 分鐘後是 225 倍)。為了維持攻擊,攻擊者必須按照這些瘋狂上漲的價格支付所有的交易費。因此,一次現實的攻擊可持續的時間大概是 5 分鐘。


如果客戶端收到這 5 分鐘內產生的區塊(每個需要 20~60 秒的處理時間)會發生什麼事?很明顯,在這段時間鏈的處理速度會變得非常慢。會出現非常多短程分叉。事實上,分叉意味著攻擊者在攻擊後仍然可以以少量哈希算力(例如大約 20%)回滾鏈上交易。這是非常糟糕的情況。


但是,這比攻擊者可以維持一個小時甚至一天的攻擊要好得多。 大多數的交易和其他服務現在等待確認的時間已經超過5 分鐘,只有極其脆弱的服務才會被破壞,因為對它們來說需要5 分鐘發送一筆交易太難了,而回滾或拒絕服務需要持續數小時甚至數天,就像2016 年的上海攻擊事件一樣,會造成非常嚴重的後果。


因此,持續 5 分鐘達到 2500 萬 gas 的峰值比 2500 萬的 gas pmit 風險低得多。


論點3:短期高峰已經出現


工作量證明挖礦場固有的泊松過程(Poisson process) 就意味著區塊在發佈時會存在隨機性。 事實上,光是隨機性每週就會導致一次兩倍鏈容量的峰值,峰值持續五分鐘。


注意:這是由大量相同容量的區塊而不是相同數量的大容量區塊導致的,但據我所知,沒有證據或理由相信單一區塊的處理所消耗的gas 是超線性增長的


因此,某種程度上使用峰值是一個已知數量,生態到目前為止還能忽略其影響。


原文連結


歡迎加入律動 BlockBeats 官方社群:

Telegram 訂閱群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方帳號:https://twitter.com/BlockBeatsAsia

举报 糾錯/舉報
選擇文庫
新增文庫
取消
完成
新增文庫
僅自己可見
公開
保存
糾錯/舉報
提交