Difficulty

乙太坊難度公式

  • September 8, 2020

這是乙太坊目前的難度公式嗎?

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 在分叉中被啟動。

引用自:https://ethereum.stackexchange.com/questions/87291