What is wallet fingerprinting?
- Author
- CRYPTO PORT Editorial
- Published
- Updated
- Reading time
- 4 min
In short
Each wallet builds transactions with its own quirks, and those quirks identify the software behind them. This is wallet fingerprinting. Knowing the software helps narrow down which output is the change and which funds belong together, which is why it matters in any privacy discussion.
Key points
- Construction habits reveal which software produced a transaction
- Output ordering and fee granularity are common tells
- Identifying the software helps pinpoint the change output
- Unusual settings stand out more, not less
Definition
Inferring which wallet software or configuration produced a transaction from implementation-specific traits in its structure. Once the software is guessed, its default behaviour supports further inferences.
The tells are in the details: how inputs and outputs are ordered, the granularity of fee rates, whether the current block height is written into the locktime, which address formats appear in outputs, what signature format is used. None of this is fixed by the protocol, so implementations diverge.
Those divergences are useful to an analyst. If a given wallet always places the change in the second output, then for any transaction bearing its fingerprint the change output is identified. Knowing the change means knowing an address that belongs to the sender, and the chain of inference continues.
Users cannot really erase this property. There is even a paradox: unusual settings and hand-rolled procedures tend to be more distinctive, not less. The practical stance is to assume fingerprints exist and to decide accordingly what information you are comfortable publishing.
Watch out for
- · Unusual settings can make you easier to single out, not harder
- · Mixing several wallets leaves a distinctive pattern of its own
- · A fingerprint is an inference, never proof of who someone is