This looks interesting. Has anyone had a chance to try it? Thanks in advance for any info.

joinmarket-clientserver

JoinMarket is software to create a special kind of bitcoin transaction called a CoinJoin transaction. Its aim is to improve the confidentiality and privacy of bitcoin transactions.
A CoinJoin transaction requires other people to take part. The right resources (coins) have to be in the right place, at the right time, in the right quantity. This isn't a software or tech problem, it's an economic problem. JoinMarket works by creating a new kind of market that would allocate these resources in the best way.
One group of participants (called market makers) will always be available to take part in CoinJoins at any time. Other participants (called market takers) can create a CoinJoin at any time. The takers pay a fee which incentivizes the makers. A form of smart contract is created, meaning the private keys will never be broadcasted outside of your computer, resulting in virtually zero risk of loss (aside from malware or bugs). As a result of free-market forces the fees will eventually be next to nothing.
Widespread use of JoinMarket improves bitcoin's fungibility and privacy. This implementation of JoinMarket also implements PayJoin.
For a quick introduction to Joinmarket you can watch this demonstration of installation and usage given by Adam Gibson during the Understanding Bitcoin conference on April 6 2019.

Wallet features

  • Segwit addresses (native bech32 ('bc1') by default; p2sh wrapped ('3') optionally).
  • Multiple "mixdepths" or pockets (by default 5) for better coin isolation
  • Ability to spend directly, or with coinjoin; export private keys; BIP84/49 compatible seed (Trezor, Samourai etc.) and mnemonic extension option
  • Fine-grained control over bitcoin transaction fees
  • Basic coin control - can freeze individual utxos to stop them being spent in any transaction
  • Can run sequence of coinjoins in automated form, either auto-generated (see tumbler.py) or self-generated sequence.
  • Can specify exact amount of coinjoin (figures from 0.01 to 30.0 btc and higher are practical), can choose time and number of counterparties
  • Uses fidelity bonds for protection against sybil attacks.
  • Can run passively to receive small payouts for taking part in coinjoins (see doc page)
  • GUI to support Taker role, including tumbler/automated coinjoin sequence.
  • PayJoin - BIP78 to pay users of other wallets (e.g. merchants), as well as between two compatible wallet users (Joinmarket, Wasabi, others). This is a way to boost fungibility/privacy while paying.
  • Protection from forced address reuse attacks.
  • Address labeling

... read more

I used joinmarket to coinjoin my coins, and the best part was, I never paid a cent
I just ran it in "market maker" mode and people paid me to coinjoin with them
I also wrote a little tool here that alerts you via Telegram whenever someone pays you to coinjoin with them, and tells you how much money you made
I doubt it still works but maybe I should check and make sure
reply
0 sats \ 1 reply \ @ek 27 Apr
This sounds interesting, I think I gave up too quick on using JoinMarket when I discovered that Whirlpool was integrated into Sparrow. I might give it another try.
reply
Joinmarket takes a longer time to mix coins if you are a maker but you can just let it passively run on a node to automatically rotate your addresses.
reply
It's great, supposedly very well decentralised and resistant to shutdown.
I have "laundered" many sats through it, although I recommend setting it up with a dedicated web frontend:
("Vanilla" JoinMarket is a lot of command line usage and it's not everyone's cup of tea.)
reply
a little warning to new users, especially if using JAM wallet on start9, umbrel, etc:
joinmarket works differently than Samurai and Wasabi. if you are a maker on transactions, you dont pay anything and can even get paid for providing liquidity. if you are a taker, you pay for the transaction.
Now, in JAM wallet there is a function to sweep funds. this sweep can involve being the taker on SEVERAL transactions that flow through your various accounts on the wallet. if you are inexperienced and use default setting...you could end up paying north of 50k sats per taker transacion. if the sweep involves 15 transactions, then you do the math you might be out 600k sats in fees for something you didnt really understand. so move slow with your usage of this privacy tool if you are new.
reply
32 sats \ 6 replies \ @ek 27 Apr
The author (or just maintainer?) @kristapsk is on SN
reply
I would not call myself the author. It was designed by Chris Belcher and new version was originally written by Adam Gibson. I'm just one of maintainers and active contributor.
reply
@kristapsk, is the transition to taproot addresses planned for Joinmarket?
reply
There have been discussions, but no decision has been made and nobody has proposed even PR to support taproot wallets. Only sending to P2TR is supported right now. https://github.com/JoinMarket-Org/joinmarket-clientserver/discussions/1469
reply
Thanks. As AdamISZ says taproot isn't needed for vanilla coinjoins but it could be beneficial for the privacy of people using both JM and lightning.
reply
Wow, I had no idea! Congratulations and thanks.
👍
reply
Oh sorry, edited my comment quickly but not quick enough for a mention haha
reply
I’ve messed with the Jam on Start9, pretty nice ux.
reply