🎭 CoinJoin Privacy Simulator

Understand Bitcoin Transaction Privacy Through Interactive Mixing

1Why Privacy?
2The Problem
3CoinJoin Solution
4Practice
5Summary

Why Does Bitcoin Privacy Matter?

Bitcoin's blockchain is permanently public. Every transaction is visible forever. Without privacy techniques, anyone can:

  • Track your spending habits
  • See your total balance
  • Link your identity to transactions
  • Monitor who you transact with

🏪 Merchant Privacy

You pay a coffee shop 50,000 sats. The barista sees you have 2 BTC in your wallet. Security risk!

💼 Business Privacy

Your company pays a supplier. They can now see all your business finances and profit margins.

🎁 Personal Privacy

You send Bitcoin to a friend. They can trace back where you received it and how much you have.

⚠️ The Transparency Problem

Unlike cash (private by default), Bitcoin is public by default. Privacy requires deliberate action.

How Blockchain Analysis Works

Chain analysis companies can track your Bitcoin through heuristics - patterns that reveal transaction links.

Interactive: Watch Your Bitcoin Get Tracked

Day 1: You Buy Bitcoin
Exchange → bc1q...abc (YOU) 0.1 BTC

✓ Analysts now know this address belongs to you

Day 5: You Buy Coffee
bc1q...abc (YOU) → Coffee Shop 0.0005 BTC
Change → bc1q...xyz (YOU) 0.0995 BTC

✓ Coffee shop knows you have ~0.1 BTC
✓ Change address linked to you

Day 10: You Pay Rent
bc1q...xyz (YOU) → Landlord 0.05 BTC

✓ Landlord can trace back to exchange
✓ Landlord knows you bought coffee
✓ Your entire transaction history exposed

Common Heuristics:

  • Change Detection: Smallest output is usually change
  • Address Reuse: Same address = same person
  • Common Input Ownership: Inputs in same TX owned by same person
  • Round Number Payments: Non-round = change address

How CoinJoin Breaks The Chain

CoinJoin is a privacy technique where multiple users combine their transactions into one, making it impossible to determine which input paid which output.

Before CoinJoin: Clear Links

Alice: 1 BTC
Bob: 1 BTC
Carol: 1 BTC
→ → →
Alice's Address: 1 BTC
Bob's Address: 1 BTC
Carol's Address: 1 BTC

❌ Separate transactions = Clear ownership trail

After CoinJoin: Broken Links

Alice: 1 BTC
Bob: 1 BTC
Carol: 1 BTC
🌀 CoinJoin

One Combined Transaction

Unknown: 1 BTC
Unknown: 1 BTC
Unknown: 1 BTC

✅ Combined transaction = Unknown which input → which output

Anonymity Set

In a CoinJoin with 5 participants, each output could belong to any of the 5 participants. This creates an anonymity set of 5.

More participants = Better privacy

Practice: Join a CoinJoin Round

Experience how CoinJoin works by participating in a simulated mixing round.

Pool Configuration

💡 Key Insights

Equal Amounts Required

All participants must send the same amount (e.g., 0.1 BTC). This makes outputs indistinguishable.

Coordinator Role

A coordinator organizes the round but cannot steal funds (participants sign individually).

Multiple Rounds Better

Mixing through multiple CoinJoin rounds exponentially increases anonymity set.

🎓 CoinJoin Privacy: Summary & Best Practices

🔍

Bitcoin Isn't Private by Default

All transactions are public forever. Chain analysis can track your spending history.

🌀

CoinJoin Breaks Links

By combining transactions, CoinJoin makes it impossible to determine which input paid which output.

👥

Anonymity Set Matters

More participants = better privacy. A 10-person CoinJoin gives 10x better privacy than solo.

🔄

Multiple Rounds Recommended

Mixing through 5 rounds with 10 participants each = massive anonymity set growth.

🛠️ CoinJoin Tools & Services

Wasabi Wallet

Desktop Wallet

Built-in CoinJoin with large anonymity sets. Tor integration for network privacy.

wasabiwallet.io →

Samourai Wallet

Mobile (Android)

Whirlpool mixing with post-mix tools. Strong privacy focus with Tor support.

samouraiwallet.com →

Sparrow Wallet

Desktop

Supports Whirlpool mixing with excellent UTXO management and coin control.

sparrowwallet.com →

JoinMarket

Advanced/Technical

Decentralized CoinJoin marketplace. Can earn fees as a market maker.

github.com/JoinMarket-Org →

🏆 Best Practices

✅ Do This

  • Mix before spending, not after
  • Use multiple mixing rounds
  • Don't consolidate mixed UTXOs with unmixed
  • Use Tor for network privacy
  • Practice with small amounts first
  • Understand UTXO management

❌ Don't Do This

  • Mix once and assume perfect privacy
  • Reuse addresses after mixing
  • Merge mixed and unmixed coins
  • Use centralized mixers (custodial risk)
  • Ignore post-mix spending practices

⚠️ Important Privacy Considerations

  • Timing Attacks: How you spend after mixing matters as much as the mix itself
  • Address Reuse: Ruins all privacy gains instantly
  • Amount Correlation: Unique amounts can be tracked across mixes
  • Network Privacy: Use Tor to prevent IP address linkage
  • Legal Considerations: CoinJoin is legal but understand local regulations