1

The Ethereum whitepaper states:

The motivation behind GHOST is that blockchains with fast confirmation times currently suffer from reduced security due to a high stale rate - because blocks take a certain time to propagate through the network, if miner A mines a block and then miner B happens to mine another block before miner A's block propagates to B, miner B's block will end up wasted and will not contribute to network security.

What is meant by confirmation time? Is that the amount of time it takes for a block to be confirmed by other nodes, or the amount of time it takes to mine a block i.e. difficulty?

Secondly, I'm confused about why faster confirmation times lead to a higher stale rate - wouldn't you encounter the same problem with slower confirmation times as well?

1

What is meant by confirmation time? Is that the amount of time it takes for a block to be confirmed by other nodes, or the amount of time it takes to mine a block i.e. difficulty?

The nomenclature is slightly non-intuitive, but it's the latter. "A confirmation" is considered the event whereby a further block is mined on top of the previous one, which takes a certain amount of time (i.e. the block time). We could call the time taken for a mined block to be distributed/accepted by the rest of the network the propagation time (at least for this explanation).

(And yes, for a given network hash rate, the average time to mine a block is indeed proportional to the current difficulty, which is a measure of how easy it is to mine a block.)

Secondly, I'm confused about why faster confirmation times lead to a higher stale rate

The snippet you provide explains it quite well.

The time to mine a block is essentially the average time, around which will lie a distribution. The closer this average block time is to the propagation time, the more stale blocks your chain will have. As the snippet states, if there's overlap between the time it takes to mine a further new block while still propagating the last one, then you end up with stale blocks.

With slower confirmation times, there's a decrease in the chances of the two events overlapping.

  • Thank you for the in-depth explanation. In regards to your second point: how do stale blocks explicitly reduce security? Who cares about wasted blocks. As far as I'm concerned, the only thing that should matter for blockchain security is the fact new, valid blocks are reliably being added, not how long they take to mine or how many are wasted. – sahibeast Aug 25 '17 at 21:13
  • Those blocks that fail to be added to the chain contain transactions. The owners of those transactions will care, as will the miner who expended the effort to solve the proof of work, only to have his block rejected because someone propagated their solution more quickly. The hashing power in those rejected blocks can be salvaged by using the GHOST protocol (where hashing power == security, as does chain weight, which is where the "H" in GHOST comes in ["H"eaviest]). – Richard Horrocks Aug 25 '17 at 21:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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