<p><strong>Disclaimer</strong>: I should probably add this as a comment because it doesn't answer the question, and just gives a one pointer. <em>I can't add comments yet</em></p>

<p>The OpenBitcoinPrivacyProject is constantly working to gather as much information of new types of attacks on privacy.</p>

<p>You can search in their github page how do they test for wallet privacy.</p>

<p><a href="https://github.com/OpenBitcoinPrivacyProject/wallet-ratings/blob/master/report-02/threat%20model.wiki" rel="nofollow">https://github.com/OpenBitcoinPrivacyProject/wallet-ratings/blob/master/report-02/threat%20model.wiki</a></p>

<p>I think this pointer is relevant because one of their tests try to detect just what you are looking for.</p>

<blockquote>
  <p>A blockchain observer can derive the type of wallet used to create a
  transaction by observing idiosyncrasies in the manner in which the
  transaction was composed.</p>
</blockquote>

CC BY-SA 3.0
2016-03-27T17:09:44.550Z
Thanks.  Do you have a link to *how* they check for this?  That just states a requirement, but no details on the findings for specific wallets or how they check whether the requirement holds.  I've searched on their Github page and found nothing about it.  (Incidentally, my question links to that particular wiki page.)
D.W.
CC BY-SA 3.0
2016-03-27T04:43:09.090Z
2016-03-27T04:43:09.090Z
galileopy
<p>Given a handful of transactions from a single individual, are there any techniques to try to infer/deduce what client the individual was using?  In other words, do any commonly used clients leave a "fingerprint" that can be used to recognize which client was used, based on the information in the public blockchain?</p>

<p>For instance, maybe some clients have a recognizable pattern of how they make change, or <a href="http://www.quantabytes.com/articles/a-survey-of-bitcoin-transaction-types" rel="nofollow">which script code they use for transactions</a>, or have <a href="https://github.com/OpenBitcoinPrivacyProject/wallet-ratings/blob/master/report-02/threat%20model.wiki" rel="nofollow">some pattern regarding which of the addresses in the output list are for change</a>, or have some pattern in the transaction amounts or the random numbers used in the transaction?  I'm just brainstorming examples -- don't take these too seriously.</p>

<p>So, are there any fingerprints that are left in the blockchain that might reveal which client I'm using?  Even probabilistic attacks ("there's an 80% chance you're using client C") are relevant.</p>

<privacy>
Fingerprinting Bitcoin client, from public information
D.W.
# Fingerprinting Bitcoin client, from public information

(Asked by: username_0 on 2016-03-24)

Given a handful of transactions from a single individual, are there any techniques to try to infer/deduce what client the individual was using? In other words, do any commonly used clients leave a "fingerprint" that can be used to recognize which client was used, based on the information in the public blockchain?

For instance, maybe some clients have a recognizable pattern of how they make change, or [which script code they use for transactions](http://www.quantabytes.com/articles/a-survey-of-bitcoin-transaction-types), or have [some pattern regarding which of the addresses in the output list are for change](https://github.com/OpenBitcoinPrivacyProject/wallet-ratings/blob/master/report-02/threat%20model.wiki), or have some pattern in the transaction amounts or the random numbers used in the transaction? I'm just brainstorming examples -- don't take these too seriously.

So, are there any fingerprints that are left in the blockchain that might reveal which client I'm using? Even probabilistic attacks ("there's an 80% chance you're using client C") are relevant.

**Tags:** privacy


---

## 1 answers

### Answer by username_1 on 2016-03-27. Score: 1

**Disclaimer**: I should probably add this as a comment because it doesn't answer the question, and just gives a one pointer. *I can't add comments yet*

The OpenBitcoinPrivacyProject is constantly working to gather as much information of new types of attacks on privacy.

You can search in their github page how do they test for wallet privacy.

<https://github.com/OpenBitcoinPrivacyProject/wallet-ratings/blob/master/report-02/threat%20model.wiki>

I think this pointer is relevant because one of their tests try to detect just what you are looking for.

> A blockchain observer can derive the type of wallet used to create a
> transaction by observing idiosyncrasies in the manner in which the
> transaction was composed.

> **Comments:**
> **username_0**: Thanks.  Do you have a link to *how* they check for this?  That just states a requirement, but no details on the findings for specific wallets or how they check whether the requirement holds.  I've searched on their Github page and found nothing about it.  (Incidentally, my question links to that particular wiki page.)  

---

