<blockquote>
  <p>Are there any others that are particularly effective?</p>
</blockquote>

<p>Yes, if you know what wallet was used and if its transactions have distinguishing features. For example, multisig wallets usually use p2sh change, but the recipient rarely uses p2sh, which allows to determine the correct change output with high probability.</p>

<p><a href="https://nickler.ninja/papers/thesis.pdf" rel="noreferrer">Data-Driven De-Anonymization in Bitcoin</a> introduces two new general heuristics:</p>

<p>CONSUMER HEURISTIC. Consumer wallets only create transactions with two outputs. Therefore, if an output is spent by a transaction with 3 outputs it is not change.</p>

<p>OPTIMAL CHANGE HEURISTIC. The assumption is that wallet software does not spend outputs unnecessarily. Therefore the change value is smaller than any of the spent outputs.
Because if the change was larger than one output then this output would be left out and the change would be reduced by the output’s value.</p>

<p>The thesis also evaluates the effectiveness of the heuristics using data captured from Android Bitcoin Wallet with the Bloom filter address leak in late 2014.
It turns out that Multi-Input heuristic is by far the most effective: if applied to one address, in total 68.59% used addresses of the wallet are revealed.</p>

<p>By the way, the Heuristic 2 you mention was first described by Androulaki et al. in <a href="http://www.syssec.ethz.ch/content/dam/ethz/special-interest/infk/inst-infsec/system-security-group-dam/research/publications/pub2012/596.pdf" rel="noreferrer">Evaluating User Privacy In Bitcoin</a>.</p>

<blockquote>
  <p>Is it possible to bootstrap my clustering, for instance, maybe if some people have already associated a certain cluster with Kraken or Satoshi Dice, is this information available?</p>
</blockquote>

<p>Blockchain.info has a database of tags (<a href="https://blockchain.info/tags" rel="noreferrer">https://blockchain.info/tags</a>).</p>

CC BY-SA 3.0
2016-11-03T07:49:58.557Z
nice answer, also mixers try to match inputs having similar value , which rarely happens in case of ordinary transactions
dark knight
CC BY-SA 3.0
2016-11-02T23:45:12.187Z
2016-11-02T23:45:12.187Z
nickler
<p>The <a href="https://cseweb.ucsd.edu/~smeiklejohn/files/imc13.pdf" rel="noreferrer">Fistful of Bitcoins</a> paper by Meiklejohn et al has some nice heuristics. i.e. </p>

<p>HEURISTIC 1. If two (or more) addresses are inputs to the same transaction, they are controlled by the same user; i.e., for any transaction t, all pk ∈ inputs(t) are controlled by the same user.</p>

<p>HEURISTIC 2. The one-time change address is controlled by
the same user as the input addresses; i.e., for any transaction t, the
controller of inputs(t) also controls the one-time change address
pk ∈ outputs(t) (if such an address exists).</p>

<p>Are there any others that are particularly effective? </p>

<p>Is it possible to bootstrap my clustering, for instance, maybe if some people have already associated a certain cluster with Kraken or Satoshi Dice, is this information available? </p>

<traceability><academic-research>
clustering addresses, what's the most effective way?
smatthewenglish
# clustering addresses, what's the most effective way?

(Asked by: username_0 on 2016-11-02)

The [Fistful of Bitcoins](https://cseweb.ucsd.edu/~smeiklejohn/files/imc13.pdf) paper by Meiklejohn et al has some nice heuristics. i.e.

HEURISTIC 1. If two (or more) addresses are inputs to the same transaction, they are controlled by the same user; i.e., for any transaction t, all pk ∈ inputs(t) are controlled by the same user.

HEURISTIC 2. The one-time change address is controlled by
the same user as the input addresses; i.e., for any transaction t, the
controller of inputs(t) also controls the one-time change address
pk ∈ outputs(t) (if such an address exists).

Are there any others that are particularly effective?

Is it possible to bootstrap my clustering, for instance, maybe if some people have already associated a certain cluster with Kraken or Satoshi Dice, is this information available?

**Tags:** traceability, academic-research


---

## 1 answers

### Answer by username_1 on 2016-11-02. Score: 9 | Accepted answer

> Are there any others that are particularly effective?

Yes, if you know what wallet was used and if its transactions have distinguishing features. For example, multisig wallets usually use p2sh change, but the recipient rarely uses p2sh, which allows to determine the correct change output with high probability.

[Data-Driven De-Anonymization in Bitcoin](https://username_1.ninja/papers/thesis.pdf) introduces two new general heuristics:

CONSUMER HEURISTIC. Consumer wallets only create transactions with two outputs. Therefore, if an output is spent by a transaction with 3 outputs it is not change.

OPTIMAL CHANGE HEURISTIC. The assumption is that wallet software does not spend outputs unnecessarily. Therefore the change value is smaller than any of the spent outputs.
Because if the change was larger than one output then this output would be left out and the change would be reduced by the output’s value.

The thesis also evaluates the effectiveness of the heuristics using data captured from Android Bitcoin Wallet with the Bloom filter address leak in late 2014.
It turns out that Multi-Input heuristic is by far the most effective: if applied to one address, in total 68.59% used addresses of the wallet are revealed.

By the way, the Heuristic 2 you mention was first described by Androulaki et al. in [Evaluating User Privacy In Bitcoin](http://www.syssec.ethz.ch/content/dam/ethz/special-interest/infk/inst-infsec/system-security-group-dam/research/publications/pub2012/596.pdf).

> Is it possible to bootstrap my clustering, for instance, maybe if some people have already associated a certain cluster with Kraken or Satoshi Dice, is this information available?

Blockchain.info has a database of tags (<https://blockchain.info/tags>).

> **Comments:**
> **username_2**: nice answer, also mixers try to match inputs having similar value , which rarely happens in case of ordinary transactions  

---

