Common-input-ownership heuristic: Difference between revisions

From Bitcoin Wiki
Jump to navigation Jump to search
Belcher (talk | contribs)
Create page
 
Belcher (talk | contribs)
m Add see also section
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
The common-input-ownership heuristic (also called the ''multi-input heuristic'' or ''Nakamoto/Meiklejohn heuristic'') is a heuristic or assumption that all inputs to a [[transaction]] are owned by the same entity.  
The common-input-ownership heuristic (also called the ''multi-input heuristic'', ''Nakamoto/Meiklejohn heuristic'' or ''co-spending heuristic'') is a heuristic or assumption that all inputs to a [[transaction]] are owned by the same entity.  


Transactions with multiple inputs usually arise if the user's wallet does not have a single UTXO large enough to fulfil the user's payment amount. Wallets will then usually choose to spend more than one input in their [[transaction]]. In this situation the common-input-ownership heuristic is true; all inputs belonged to the same wallet. [[Address]]es which are spent in transactions with multiple inputs are sometimes called ''co-spent addresses''.
Transactions with multiple inputs usually arise if the user's wallet does not have a single UTXO large enough to fulfil the user's payment amount. Wallets will then usually choose to spend more than one input in their [[transaction]]. In this situation the common-input-ownership heuristic is true; all inputs belonged to the same wallet. [[Address]]es which are spent in transactions with multiple inputs are sometimes called ''co-spent addresses''.
Line 12: Line 12:


This [[transaction]] would be an indiciation that [[address]]es B and C are owned by the same person who owns [[address]] A, assuming that the common-input-ownership heuristic is true.
This [[transaction]] would be an indiciation that [[address]]es B and C are owned by the same person who owns [[address]] A, assuming that the common-input-ownership heuristic is true.
== See also ==
* [[CoinJoin]]
* [[PayJoin]]


==References==
==References==

Latest revision as of 22:52, 20 February 2019

The common-input-ownership heuristic (also called the multi-input heuristic, Nakamoto/Meiklejohn heuristic or co-spending heuristic) is a heuristic or assumption that all inputs to a transaction are owned by the same entity.

Transactions with multiple inputs usually arise if the user's wallet does not have a single UTXO large enough to fulfil the user's payment amount. Wallets will then usually choose to spend more than one input in their transaction. In this situation the common-input-ownership heuristic is true; all inputs belonged to the same wallet. Addresses which are spent in transactions with multiple inputs are sometimes called co-spent addresses.

The assumption is first mentioned in the original bitcoin whitepaper which says that the heuristic is always true. This is one of the few errors in the paper. It is possible for multiple entities to cooperate to create and sign a single transaction which spends inputs owned by multiple people. This is known as CoinJoin and one of its main purposes is to break this heuristic.

For example, consider this transaction with inputs A, B and C; and outputs X and Y.

A (1 btc) --> X (4 btc)
B (2 btc)     Y (2 btc)
C (3 btc)

This transaction would be an indiciation that addresses B and C are owned by the same person who owns address A, assuming that the common-input-ownership heuristic is true.

See also

References