Difficulty
乙太坊難度公式
這是乙太坊目前的難度公式嗎?
block_diff = parent_diff + parent_diff // 2048 * max(1 - (block_timestamp - parent_timestamp) // 10, -99) + int(2**((block.number // 100000 ) - 2))
100000的目前值是多少
謝謝
這是自宅基地開發階段以來的正確公式。
100000 在這裡是一個常數,根據Ethereum Homestead 難度調整算法是如何工作的?:
+ int(2**((block.number // 100000) - 2))
指
難度炸彈部分,每 100,000 個區塊以指數方式增加難度。
編輯
自 EIP-2384 以來,這個公式似乎不再正確:https ://eips.ethereum.org/EIPS/eip-2384 。
它指定以下內容:
出於 calc_difficulty 的目的,只需將在指數冰河時代組件中使用的 block.number 替換為公式:
fake_block_number = max(0, block.number - 9_000_000) if block.number >= MUIR_GLACIER_FORK_BLKNUM else block.number
這將使冰河時代延遲 5200 萬秒(約 611 天),因此該鏈將在 2021 年 7 月左右恢復到 20 秒的區塊時間。重要的是要注意,這會將冰河時代的 4,000,000 個區塊從約 8,800,000 個區塊推向此EIP 在分叉中被啟動。