3

I understand the logic behind coinbase maturity. One thing that I cannot find an answer for is why it's defined 100 and not 50? Is it just probability reason to decrease that orphan blocks will be created?

What happen if I will decrease my coinbase maturity to 50? It will affect different parameters of the bitcoin network (block creation time, target timespan, targer spacing, etc.)?

Murch
  • 75,206
  • 34
  • 186
  • 622
liorko
  • 239
  • 2
  • 7

3 Answers3

10

It is 100, because that's what Bitcoin's creator set it to. It's part of the system's consensus rules now, and cannot easily be changed. It also doesn't really hurt.

In retrospect, it is likely too high. The purpose of the maturity is making sure that when a deep reorganization takes places, no transactions that directly or indirectly spend coinbase outputs exist, as those will be invalidated. Given the fact that reorganizations that are more than a few blocks are extremely rare, 100 is likely overkill. Then again, it's a good thing the value is higher than what is ever needed, and again, it doesn't really hurt anyone.

What happen if I will decrease my coinbase maturity to 50? It will affect different parameters of the bitcoin network (block creation time, target timespan, targer spacing, etc.)?

The network will simply reject your transaction, or at the very least the transaction will not confirm until the coinbase outputs it is spending are 100 old.

The Bitcoin Core wallet used to actually enforce a coinbase maturity of 120 before permitting spending. Note that this was a local wallet policy, distinct from the consensus rule that requires 100. This policy was removed, as 100 turned out to be more than enough.

Pieter Wuille
  • 105,497
  • 9
  • 194
  • 308
7

Obviously the choice was somewhat arbitrary as well as largely unexplained. This is true of several other constants chosen by Satoshi Nakamoto.

According to What is the length of largest known reorganization in bitcoin?

the value overflow incident in August 2010 [...] caused a re-org of 53 blocks

So having the maturity be 100 blocks rather than 50, or less, may have some benefit every now and again?.

RedGrittyBrick
  • 26,841
  • 3
  • 25
  • 51
0

why it's defined 100 and not 50?

50 will not be safe in my opinion considering blocks are mined quickly sometimes so 50 can be mined in few hours. 100 blocks takes almost a day which is good enough time to realise forks, attacks etc. and respond accordingly.

In fact this number should be increased to 200 or more. What is the correct number for maturity is difficult to decide and it's just another constant which people have agreed upon.

Related question: What is the block maturation time?