Hi alicexbt

What do you mean by "replacement transaction"? Replacing or swapping outputs with a counterparty's?

I guess I'm struggling to understand exactly what you are attempting to achieve here with regards to privacy and if this additional protocol complexity is worth it. Recall a 2 (or n) party coinjoin would get you an output where it isn't clear to blockchain observers which output you control and a coinswap [0] would have you taking the coin history of your counterparty. What does this scheme offer with regards to privacy that those don't? This seems to have more complexity too though I maybe misunderstanding something.

Thanks
Michael

[0]: https://bitcoinops.org/en/topics/coinswap/

--
Michael Folkson
Email: michaelfolkson at
protonmail.com
Keybase: michaelfolkson
PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3


------- Original Message -------
On Friday, August 5th, 2022 at 15:44, alicexbt via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> wrote:

Hi Bitcoin Developers,


Does it make sense to trade replacement transactions for privacy? I have shared basic details to implement this and would love to read opinions about it or ways to improve it:


=============================
alice
=============================

tx1: input a (0.01) -> output b1 (0.008)
                             -> change c1 (0.001)

tx2: input a (0.01) -> output e2 (0.007)
                             -> output f2 (0.001)

=============================
bob
=============================

tx1: input d (0.011) -> output e1 (0.007)
                              -> change f1 (0.003)

tx2: input d (0.011) -> output b2 (0.008)
                               -> output c2 (0.001)
                                 

=============================
carol
=============================

- creates an API to manage trades that will use 2 of 3 multisig
- alice and bob create orders for replacement
- either they could be matched automatically using some algorithm or bob manually accepts the offer
- 2 of 3 multisig is created with Alice, Bob and Carol keys
- bob locks 0.01 BTC in it and shares outputs e2,f2 with alice
- alice signs tx2 and shares tx with bob
- alice locks 0.011 BTC in it and shares outputs b2,c2 with bob
- bob signs tx2 and shares with alice
- both replacement txs can be broadcasted
- funds are released from 2 of 3 multisig with a tx having 3 outputs (one to pay fee which goes to carol)


positives:

- privacy

negatives:

- extra fees
- will take some time although everything will be managed by wallet with API provided by carol
- need to lock bitcoin with same amount as used in tx1
- amounts could still be used to link txs in some cases
- carol and other peer knows the details


/dev/fd0


Sent with Proton Mail secure email.