Discussion:
[bitcoin-dev] Transaction aging to relieve user concerns.
Dan Bryant via bitcoin-dev
2017-12-28 19:55:01 UTC
Permalink
I was considering starting a BIP, but wanted to ask the thread if anything
like this was already done or in the works. My proposal is to expand the
TXN format to include chain-height (block number) in the TXN. This would
allow nodes / miners to age the TXN and choose (optionally) not to
rebroadcast it after a certain age threshold. Currently (as I understand
it), nodes and miners keep effectively a "seen-list" of TXNs and age them
based upon when they were last seen. This is very effective as it reduces
TXN size and frees the TXN from having to declare its age. The downside to
this is that those TXNs could be broadcast forever, assuming (big assume)
that the UTXO never got spent.

The goal here is not to enhance the protocol... if anything this would
increase TXN cost as it would add a few bytes to it. The goal here is to
make it easier for users to know with better certainty when an TXN is going
to age out. Obviously RBF is a better solution, but there may be some
instances when a user wants to effectively cancel a TXN.

Possible abuse vectors might include:

* Bad party broadcasting a low fee TXN at the edge of the age-out threshold
and trying to get goods, realizing the TXN will age out at the very next
block.

If this proposal might be something that core would entertain in a BIP
proposal I'll start drafting something. If there are suggestions about
where to place the block number to have minimal impact and ensure backward
compatibility, that would be great to. If this is simply silly and should
not be entertained, no harm there either.
Mark Friedenbach via bitcoin-dev
2017-12-28 20:49:38 UTC
Permalink
However users can’t know with any certainty whether transactions will “age out” as indicated, since this is only relay policy. Exceeding the specified timeout doesn’t prevent a miner from including it in the chain, and therefore doesn’t really provide any actionable information.
The goal here is to make it easier for users to know with better certainty when an TXN is going to age out
Loading...