The protocol rules state that

For each input, if the referenced output transaction is coinbase (i.e. only 1 input, with hash=0, n=-1), it must have at least COINBASE_MATURITY (100) confirmations; else reject this transaction

Why should coinbase transactions with less than 100 confirmations be unspendable? What is the point of the rule?

  • The answer to this question is the second answer in the above linked question.
    – John T
    Feb 23, 2014 at 5:26

1 Answer 1


The reason for this is that if a fork were to occur, some blocks will be orphaned and not have any coins which can be rebroadcast. If a block containing a transaction you send me gets orphaned, I can still get my coins, but if the block you are sending me coins from gets orphaned, I can not rebroadcast since the coinbase no longer exists on the valid chain.

  • But the chances of such a massive fork is basically zero. Apr 10, 2014 at 13:53
  • 2
    You say that now ;)
    – thank_you
    Dec 12, 2017 at 18:50

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