pull down to refresh
77 sats \ 10 replies \ @OT 30 Nov \ on: Analyze JoinMarket Bitcoin CoinJoin transactions using ILP. bitcoin
Why does it matter that the taker is known? The next round is not necessarily the same taker.
Because if you pay someone using a JM tx (which is the goal when acting as a taker) the receiver can easily know your change output, which is not good.
JM provides good forward privacy but in some case really bad backward privacy IMO
And if a taker gains no backward privacy, why would he even use the tool to spend in the first place ? Which lead to incentive problem because if there is no taker there is no Coinjoin anymore.
Maybe it doesn't. But here are some cases where it does:
- Taker immediately spends the equal amount output -> useless coinjoin.
- Taker is doing a payjoin to a taproot address (bc1p...) and all other equal amounts are segwit (bc1q...) due to the limitations in the joinmarket clientserver implementation -> also useless coinjoin.
- Taker spends change out (not the equal amount) thinking that it can't be linked to the input. It probably can be.
And I'm sure there might be other reasons depending on the case. The project is just a tool to do the matching.
reply
reply
Yes, and it also says that the protocol is designed for privacy of the equal outputs, not the change. And that change should not be spent together with equal outputs.
I actually just wanted a way to analyze transactions to gather stats on the fee limits used and optimize maker offers.
The other idea is to find ways to make change outputs ambiguous on purpose so that they gain some privacy as well and economize the coinjoin a bit more.
reply
change should not be spent together with equal outputs.
And normally it will not be, as equal output and change will end up in different mixdepths.
reply
In Jam the change is always separated from the CJ output.
I actually just wanted a way to analyze transactions to gather stats on the fee limits used and optimize maker offers.
Negative offers might be the way.
The other idea is to find ways to make change outputs ambiguous on purpose so that they gain some privacy as well and economize the coinjoin a bit more.
I saw Floppy comment the other day on Joinstr about the change being submarine swapped into the LN channel.
reply
Optimize maker offers in terms of maximizing profits, not in number of rounds.
Change can also be mixed in coinjoins. There's actually a setting for consolidating change as a maker by providing multiple inputs. The alternative is of course the submarine swaps yes, but usually pretty expensive.
reply
reply
Depends on the size, but most times yes.
But I meant as a maker, where a taker pays the extra transaction fees from the additional inputs. So you get the consolidation for free (or even making some profits), you help the taker disguise their inputs, and you get a proper equal output.
reply