Thursday, November 7, 2024

mempool – Why does not the protocol permit unconfirmed transactions to run out at a given peak?

This query was answered by Satoshi. My try to paraphrase: Suppose a transaction T specified an expiration peak, X, and was mined in block X. Then its outputs had been spent, probably many instances over via a number of generations (the unique transaction had, for instance, great-great-grandchildren). Now a reorg happens and there is a new model of the block at peak X that does not embrace T.

Most (now unconfirmed) transactions are merely re-mined within the new department, probably at completely different block heights than earlier than. However T cannot be re-mined, since it’s now invalid (it has expired), as are all of its descendants. As Satoshi places it,

This would not be honest to later house owners of the cash who weren’t concerned within the time restricted transaction.

It is true that any reorg could cause previously-mined transactions to by no means be mined. However such double-spending would possible require malicious intent — a 51% assault by miners, somewhat than, say, an innocuous short-term community partition.

It could be unhealthy if this state of affairs (a previously-mined transaction is un-mined after which expires) may occur routinely as a result of it might make funds much less sure and would give cost receivers an incentive to confirm the provenance of the cash they’re being paid with, lest they be from a recent-expiring transaction. That is much like the motivation for the 100 block coinbase maturation consensus rule.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles