CoinJoin Simulator — studies

This site collects two studies of CoinJoin privacy run on top of the coinjoin-simulator + joinmarket-ng codebases.

JoinMarket maker clustering & taker anonymity-set reduction (May 2026)

A passive on-chain adversary clusters JoinMarket maker wallets through protocol-mandated mixdepth-rotating change outputs, at precision = 1.0 by construction. On the full mainnet corpus (10,581 JM CoinJoins, 10,534 ILP-decoded), the v7.3 clusterer (change-chain + fee-fingerprint equal-chain + non-CJ CIOH + fidelity-bond funding-tx CIOH) recovers 20,454 certified wallet components. Each certified maker shrinks the taker's per-CJ anonymity set.

7.61 → 6.86Mean taker anonymity set (published → v7.3 residual)
51.5%CJs where at least one maker is certified
20,454v7.3 maker clusters (9,182 non-trivial)
0Same-CJ precision violations (out of 10,534 CJs)

→ full study

Probing attack & countermeasures (May 2026)

A simulator-only study quantifying how a malicious service-provider builds a live UTXO database of JoinMarket makers by probing, the conditions under which this enables maker identification in honest CoinJoins, and which mitigations limit the leakage.

64.0%Baseline: all-maker input coverage (40% attacker share, 5,000 rounds)
31.1%Recommended policy (same conditions)
84.7%Baseline at 10 probes/day
0.0050 BTC/dayAttacker cost at 10 probes/day (recommended policy)

→ full study