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 '14 at 5:26

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. – Matthew Mitchell Apr 10 '14 at 13:53
  • 2
    You say that now ;) – thank_you Dec 12 '17 at 18:50

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