Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: JeromeL on May 19, 2014, 10:07:04 AM



Title: Mining consecutive blocks
Post by: JeromeL on May 19, 2014, 10:07:04 AM
In order to mitigate the risk of a 51% attack (and selfish mining, etc ...) why can't we implement a rule saying that a "miner" cannot mine 2 (or 3?) consecutive blocks ?

I am aware that "miner", "cannot", "mine" are general terms. Perhaps something like "when a node relays a block, the other nodes check that ip address of that node was not used to relay the previous block, if it did, the block is rejected by the other nodes", would be more specific.

What are your thoughts ? Does that make any sense ?


Title: Re: Mining consecutive blocks
Post by: Rannasha on May 19, 2014, 10:18:51 AM
There is no way to positively identify a miner that doesn't want to be found. If a node receives a new block, it can't tell whether the sender is the miner or just another node that is passing on the block. Furthermore, it is trivial to use more than one IP address and change the address you send from after each block you mine.

While you can conjure up different technical constructions to this issue, the fundamental fact remains that in a decentralized network like Bitcoin participants are not registered in any way and it is trivial to assume a new identity. Any measures that rely on the identity of a miner/node will therefore be ineffective.


Title: Re: Mining consecutive blocks
Post by: DannyHamilton on May 19, 2014, 11:11:49 AM
There is no way to positively identify a miner that doesn't want to be found. If a node receives a new block, it can't tell whether the sender is the miner or just another node that is passing on the block. Furthermore, it is trivial to use more than one IP address and change the address you send from after each block you mine.

While you can conjure up different technical constructions to this issue, the fundamental fact remains that in a decentralized network like Bitcoin participants are not registered in any way and it is trivial to assume a new identity. Any measures that rely on the identity of a miner/node will therefore be ineffective.

Furthermore, using the suggested "node cannot relay consecutive blocks", means that all miners (and mining pools) have a significant incentive NOT to relay any blocks that they receive.  If they relay a block that they receive from someone else, then they are suddenly unable to participate in mining.