作者:金馬
本文首發於幣乎,原文題目:什麼是以太坊“難度炸彈”?以太坊在2020 年1 月1 日硬分叉再次推遲“難度炸彈”
什麼是“難度炸彈”(Difficulty Bomb)?
我們都知道現在的ETH 是POW 共識進行挖礦,那麼在挖礦過程中,就會有難度的調整,正常情況下,如果出塊太慢(超過20 秒),就會降低難度,如果出塊太快(小於10 秒),就會增加難度,讓挖礦的時間差不多在15 秒左右,這樣可以讓出塊速度比較穩定。
但是除了正常的難度調整, ETH 在2015 年就引入了一個新的調整挖礦難度的機制,這個機制就是“難度炸彈” (Difficulty Bomb ),這個機制優先級高於正常的難度調整,所以如果“難度炸彈”(Difficulty Bomb)啟動後,就會出現挖礦難度持續增加,這個增加是一個指數級的增長,開始的增加會比較小,但是後期難度增加越來越快,最終ETH 出塊時間越來越長,礦工收益越來越低。
為什麼要設置“難度炸彈”(Difficulty Bomb)?
“難度炸彈”(Difficulty Bomb)在開始設置的時候,主要是為了通過一個算法自動增加POW 挖礦的難度,來保證ETH 從POW 可以順利遷移到POS,通過算法來增加難度,比較容易讓礦工接受,以及可以平滑的從POW 過度到POS。
為什麼“難度炸彈”(Difficulty Bomb)一直在推遲?
計劃趕不上變化,以太坊從POW 轉入到POS 的過程中,預期時間和實際時間相差太多,幾次延期都是因為轉入POS 無望,只能把這個“難度炸彈”(Difficulty Bomb)延期,等到轉入POS 有計劃的時候,再開啟。
為什麼不取消“難度炸彈”(Difficulty Bomb)?
你一定想問,既然這個“難度炸彈”(Difficulty Bomb)看起來沒多少作用,而且ETH 2.0 現在完全沒有確定的時間,為什麼不把“難度炸彈”(Difficulty Bomb)直接去掉呢?
其實ETH 社區一直都有大量的討論,堅持不取消“難度炸彈”(Difficulty Bomb)的同學,主要的原因有兩個:
第一,仍然是之前的原因,可以在ETH 2.0 確定上線時間後,可以打開“難度炸彈”(Difficulty Bomb),讓礦工可以順利切換到POS 網絡。這個理由現在看來挺扯淡的,等ETH 2.0 確定上線時間的時候,再進行一個難度調整,也不遲。
第二,現在有“難度炸彈”(Difficulty Bomb)的存在,因為幾次硬分叉過程中,都有“難度炸彈”(Difficulty Bomb)的延遲的硬分叉,那麼曠工為了降低挖礦難度,他們是有強烈升級ETH 客戶端的意願的。那麼,因為“難度炸彈”(Difficulty Bomb)的存在,讓更多曠工快速升級ETH 客戶端,好像也是一個不錯的理由?
