2

This question already has an answer here:

I was just thinking, why nodes pick the first block they see when there is an honest split, instead of picking, for example, the one with the "best hash" (number further away from the difficulty cut)?

Deterministic criteria like that would allow the entire network to quickly know which block wins, and everybody would then build on top of that block. Much less hashpower would be wasted on the dead branch.

Unless there's some risk/problem in it I'm not seeing...

marked as duplicate by chytrik, RedGrittyBrick, Pieter Wuille, KappaDev, Raghav Sood Nov 23 '18 at 10:19

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 2
    I'm voting to close this as a duplicate: though the question I marked it duplicate as has a more specific question, the answer still applies more generally: If there is some deterministic property that makes one valid block 'better' than another valid block at the same height, then the game theory will be broken. Miners must always be incentivized to mine at the chain tip. In order to achieve this, every valid block hash must be no better (or worse) than any other valid block hash at the same height. – chytrik Nov 18 '18 at 22:39
  • Well, the difficulty to keep mining on the previous height is now a bit larger than to just add the other block. The opportunity of gain from fraud would have to overcome that. Considering that rogue miners can already offer double-spending services if they want to live the criminal life (and they don't), I'm still inclined to say the trade off of not wasting hashpower on a dead chain seems positive.... – caveden Nov 18 '18 at 22:56
  • Difficulty does not increase with every block, it is no more 'difficult' to mine a block at height X+1, then at height X (ignoring the occasional difficulty increase, of course). With the current rules (first seen), it is much more risky to attempt off a double spend. Having a deterministic ordering for blocks of the same height would allow miners to pull off double-spends with less uncertainty. Whether or not a miner wants to be a 'criminal' is irrelevant; it is the game-theoretical costs of attack that keep the system's participants acting in a way that maintains network consensus. – chytrik Nov 18 '18 at 23:04
  • I just realized that this could be a problem when the difficulty changes. The new difficulty could make it actually harder to mine on top of the new block than to try to displace it. – caveden Nov 18 '18 at 23:13
  • No, because under the current rules, you would not be able to displace a block mined at height X, unless you could mine both blocks at height X', and height X'+1. Since the rest of the network would already know the block at height X, they will already be mining at height X+1. Unless you have the majority of hashpower, you will lose this race to the X+1 height, on average. If you could displace the block at height X more easily, then confidence in the network's security would be reduced. – chytrik Nov 18 '18 at 23:25
4

for example, the one with the "best hash" (number further away from the difficulty cut)?

Deterministic criteria like that would allow the entire network to quickly know which block wins, and everybody would then build on top of that block. Much less hashpower would be wasted on the dead branch.

If you see that you are very likely going to win on account of the deterministic criteria, whatever it is, then you can withhold announcing your block while you attempt to form a successor and announce your prior win if you see a competing block show up. This would give you an advantage over other miners who behave honestly (and even if everyone does it, it would continue to give larger miners an advantage over smaller ones).

Not the answer you're looking for? Browse other questions tagged or ask your own question.