2 ms·
> Although most mining pools produce relatively inconspicuous-looking blocks, F2Pool blatantly disregards the rules and uses false timestamps for its blocks. Sp
by mjburgess 4y ago
> Although most mining pools produce relatively inconspicuous-looking blocks, F2Pool blatantly disregards the rules and uses false timestamps for its blocks. Specifically, whenever a block should have a timestamp difference from its parent which is divisible by 9 (precisely the time at which mining difficulty decreases), F2Pool hangs at the preceding second a while longer, thereby increasing mining difficulty and profits. Thus, in the past two years, F2Pool didn’t have even a single block with a timestamp which is divisible by 9.
from the medium post
- __s 4y agoWhat's the implication if everyone does this? Does it eventually converge on a working consensus?
- quickthrower2 4y agoHaving read bits of the paper and the article I don't get why divisibility by 9 matters. Can anyone ELI-9 this?
- horsawlarway 4y agoI haven't done the math, but I believe it's because of two points: 1 - The "difficulty" of mining a block is based on how long it's been since the last block was mined, with a drop off in difficulty at 9 seconds 2 - If two blocks "tie", the the block that was more difficult to mine is the winner, and takes the rewards. --- So essentially, it's a way of breaking ties in their favor - reliably - by cheating a smidge on the timestamps they send for their blocks.
- tromp 4y agoIt matters according to equation (48) on page 7 in the Ethereum design specification [1]. This section specifies how to adjust the difficulty target for each new block. The optimization (I hesitate to call it an attack) identified in the paper could have been rendered ineffective if rounding down (for division by 2048 and by 9) was delayed until after the multiplication in equation (45), resulting in a much smoother adjustment. The so-called "yellow paper" sadly lacks a motivation of all the seemingly arbitrary numbers involved. [1] https://ethereum.github.io/yellowpaper/paper.pdf https://ethereum.github.io/yellowpaper/paper.pdf