pull down to refresh

I recently came across the term UTXO and realized I didn't fully understand how it works. I know it has something to do with how Bitcoin transactions are tracked, but I'm curious about the privacy side of it. Can the way we receive and spend our UTXOs reveal more about our Bitcoin activity than we realize?

Pretend a new Bitcoiner, and you generate your very first address so your friend can send you coins. He sends you 1 BTC. The information you share with him is your address, which tells him several things:

  • Have you spent the coins yet? Or are you hodling?
  • How long did you hold for?
  • Which address(es) did you pay (the payment outputs)
  • What wallet you use (maybe, depending on the tx fingerprints)
  • Other incoming transactions you've received (common input ownership heuristic)
  • Other transactions you might make in the future (by tracking "toxic" change output to store coins you didn't spend all at once)
  • ...probably more that I can't think of immediately
And how does CoinJoin help with this?
  • Coinjoin allows you to "spend" your coins immediately when you receive them from your friend, but instead of buying things, you just move the coins to a new address that your friend can't watch
  • Coinjoin allows you to pay without revealing the new recipient's address to the friend you originally got your coins from
  • Coinjoins unify the fingerprints of all participants
  • Coinjoins contain hundreds of inputs from different participants, defeating the common input surveillance tactic
  • Coinjoins can eliminate toxic change by splitting into equal sized outputs that are cloned by other participants
  • Coinjoins can also let you send anonymous payments to multiple recipients in the same on chain transaction

Great question!

Thanks so much for this analysis, I really do appreciate.

reply