Post
Topic
Board Development & Technical Discussion
Re: invalid transactions
by
jl2012
on 27/05/2014, 04:28:21 UTC
Quote
1. Do transactions ever time out if not accepted into the block chain?

e.g. if I create a transaction today, and it happens to be invalid, is it possible it will unexpectedly get accepted, e.g. with a later release of the bitcoin block chain code that has policy changes, maybe in x years time? (assuming transaction this would have to be accepted by miner *and* the block chain code)

There is no time out. By default nodes will drop invalid transactions. But there is nothing to stop people from storing invalid transactions.

A policy change that accepts a previously invalid transaction is called a "hard fork". It requires the consensus of ALL bitcoin users, including miners and non-miners. It is unlikely to happen. But if it really happens, your previously invalid transaction might be accepted.

Quote
3. Would it be possible to pay for something with a transaction that contains an invalid scriptPubKey, (e.g. the pubKeyHash is invalid - if I understand this correctly would mean this output cannot be used as an input for further transactions), and trick the recipient into accepting this as payment? If not, why not?

It is possible only if the recipient is stupid enough not to verify the transaction.

Quote
Or for another example, maybe one less far fetched, consider a non-standard transaction, that isn't included in the block chain any time soon. Is it possible that a miner could unexpectedly process this transaction at any undetermined point in time in the future of bitcoin? Or will the transaction eventually expire?

There is no expire. However, you may simply spend one of its inputs to make it invalid.