[Bitcoin-development] First-Seen-Safe Replace-by-Fee

Tom Harding tomh at thinlink.com
Tue May 26 23:42:23 UTC 2015


On 5/26/2015 4:11 PM, Gregory Maxwell wrote:
> On Tue, May 26, 2015 at 11:00 PM, Tom Harding <tomh at thinlink.com> wrote:
>> The bitcoin transaction is part of a real-world "deal" with unknown
>> connections to the other parts
> I'm having a hard time parsing this.  You might as well say that its
> part of a weeblix for how informative it is, since you've not defined
> it.

For example, you are paying for concert tickets.  The deal is concert 
tickets for bitcoin.  Or you're buying a company with 3 other investors.


>> not the case if paying parties are kicked out of the deal, and possibly
>> don't learn about it right away.
> The signatures of a transaction can always be changed any any time,
> including by the miner, as they're not signed.

Miners can't update the signature on input #0 after removing input #1.


>
>> A subset of parties to an Armory simulfunding transaction (an actual
>> multi-input use case) could replace one signer's input after they broadcast
>> it.
> They can already do this.

Replacement is about how difficult it is to change the tx after it is 
broadcast and seen by observers.


>> Maybe the
>> receiver cares where he is paid from or is basing a subsequent decision on
>> it.  Maybe a new output is being added, whose presence makes the transaction
>> less likely to be confirmed quickly, with that speed affecting the business.
> The RBF behavior always moves in the direction of more prefered or
> otherwise the node would not switch to the replacement. Petertodd
> should perhaps make that more clear.
>
> But your "maybe"s are what I was asking you to clarify. You said it
> wasn't hard to imagine; so I was asking for specific clarification.

Pick any one "maybe".  They're only maybes because it's not realistic 
for them all to happen at once.


>
>> With Kalle's Proof of Payment proposed standard, one payer in a two-input
>> transaction could decide to boot the other, and claim the concert tickets
>> all for himself.  The fact that he pays is not the only consideration in the
>> real world -- what if these are the last 2 tickets?
> They can already do that.

Not without replacement, after broadcast, unless they successfully pay 
twice.


>
>> I'd argue that changing how an input is signed doesn't change the deal.  For
>> example if a different 2 of 3 multisig participants sign, those 3 people
>> gave up that level of control when they created the multisig.
> Then why do you not argue that changing the input set does not change
> the weeblix?
>
> Why is one case of writing out a participant different that the other
> case of writing out a participant?

In the multisig input case, each signer already accepted the possibility 
of being written out.  Peter Todd's proposal is in the spirit of not 
willfully making unconfirmed txes less reliable.  I'm suggesting that 
multi-input signers should be included in the set of people for whom 
they don't get less reliable.


>
>> Replacement is new - we have a choice what kind of warnings we need to give
>> to signers of multi-input transactions.  IMHO we should avoid needing a
>> stronger warning than is already needed for 0-conf.
> How could a _stronger_ warning be required?

We'd have to warn signers to multi-input txes instead of just warning 
receivers.





More information about the bitcoin-dev mailing list