openoms / joininbox

A terminal based graphical menu for JoinMarket
MIT License
153 stars 20 forks source link

Simulate "postmix" tools - Fake coinjoins and send with multiple hops #63

Open openoms opened 3 years ago

openoms commented 3 years ago

The JoinMarket sendpayment.py is already capable of paying an arbitrary amount with a coinjoin with multiple participants to any address (SEND option).

Can simulate the SW Stonewall function with: https://github.com/kristapsk/bitcoin-scripts fake-coinjoin.sh

and the Ricochet (multiple hops) with: https://github.com/kristapsk/bitcoin-scripts ricochet-send.sh

kristapsk commented 2 years ago

I guess currently biggest problem with my scripts is that they are written for Core wallet, but here this functionality is needed for JM wallet, where Core wallet is watchonly and so can't sign. One solution that just came in my mind is to write HWI compatible wrapper for JM and then add it to Bitcoin Core config as external signer. Additional care then should be taken also to not accidentlly mix UTXOs from different JM mixdepths, as Core and my scripts does not know anything about them.

I have in a longterm TODO list (in my head) some abstraction layer, so that these scripts could be used with Electrum, Wasabi and other wallets too (see https://github.com/kristapsk/bitcoin-scripts/issues/7#issuecomment-979466807), but that is more complicated solution as the one above.