Mining
如果攻擊者可以 DoS 某些節點,那麼 51% 攻擊會更容易嗎?
我想知道是否可以通過遠端使礦工節點崩潰來簡化 51% 的攻擊。考慮以下場景:
- 惡意礦池 A 控制著 16% 的挖礦算力,並能夠遠端使其他挖礦節點崩潰或將其與網路斷開連接。
- 礦池 A 現在決定讓 70% 的其他挖礦節點崩潰,使其擁有網路中 50% 以上的剩餘算力。
- 礦池 A 現在可以發起 51% 攻擊了嗎?如果是這樣,什麼時候會調整難度以解決大量減少的算力?
這裡我不清楚的是大幅降低的算力、調整後的難度和 51% 攻擊之間的關係。
礦池 A 現在控制著 51% 的剩餘算力,但仍然需要基於更大的網路來探勘困難的區塊。因此,雖然 51% 攻擊最終可能會奏效,但網路將首先在某個時間範圍內被阻塞。我不清楚這個時間框架有多長?
礦池 A 現在可以發起 51% 攻擊了嗎?如果是這樣,什麼時候會調整難度以解決大量減少的算力?
難度將在下一個區塊進行調整,這與比特幣不同,它每 2016 個區塊調整一次。(或者至少以前是這樣。不確定是否仍然如此。)
但是,他們必須在目前難度下找到目前區塊的 PoW。如果他們讓 70% 的網路崩潰,那麼你就有 30% 的算力在 100% 的難度下工作,這個係數 3.33 太高了。您會期望目前區塊的區塊時間會高出相同的因素。(我認為。這假設難度和出塊時間之間存線上性關係……)
礦池 A 現在控制著 51% 的剩餘算力,但仍然需要基於更大的網路來探勘困難的區塊。
僅適用於目前塊。之後,難度調整算法會相應地進行調整。(參見
makeDifficultyCalculator()
。consensus.go
)因此,雖然 51% 攻擊最終可能會奏效,但網路將首先在某個時間範圍內被阻塞。我不清楚這個時間框架有多長?
目前平均出塊時間 => ~13.5 秒
使用上述因子 3.33 => 13.5 * 3.33 = ~45 秒