Bitcoin veterans know that their transactions are not anonymous. However, new users may need a primer on how they can reclaim their privacy.
Bitcoin transaction basics: Inputs and Outputs
Bitcoin protocol consists of a series of transaction inputs and outputs. Inputs are bitcoin addresses used to send bitcoin, which can only be spent using a private address keys. Outputs are addresses used to send bitcoin. Each transaction moves bitcoin from one or several addresses, or inputs, to one or several addresses, or outputs.
It’s possible for a transaction to have only one input and one output. But that’s rare, meaning the amount of bitcoin sent (output) would have to equal an earlier amount received (input).
Most transactions include many inputs and outputs for one transaction, which are merged by bitcoin software.
These inputs and outputs use change addresses. Change addresses allow users to initiate transactions that return excess bitcoin from one or several inputs to the sender.
The so-called anonymity of bitcoin
Bitcoin addresses are not tied to a person’s identity, making them seem anonymous, because anyone can create an address without sharing personal information.Moreover, senders and receivers are anonymous.
With bitcoin data shared by nodes on a peer-to-peer network without IP-addresses, the nodes’ origins are also anonymous.
Problems with anonymity
Attackers or others may connect to multiple nodes on the Bitcoin network, collecting data with which to determine the origin of a transaction.
Bitcoin’s anonymity is also compromised if a person shares their identity with a bitcoin address through a third-party like a wallet service, online store, or transaction to a named person.
How clustering can reveal bitcoin user identities
Clustering includes several inputs combined into a single transaction. These inputs may be from different addresses, but when they form a cluster it means they are from the same user.
Change addresses for excess bitcoin can also be revealed through clustering. That’s because output that is not attributed to the sender is typically (though not always) attributed to the change address controlled by the sender. Some Bitcoin software also reveals change addresses .
Taint analysis also examines clustering by calculating what percentage of bitcoin came from a specific address or addresses.
Looking at the amount of transactions is another threat to anonymity, as is the analysis of timing, both of which consider transaction patterns.
Using software which hides your IP address, or creating a new address for each transaction, are two ways to secure your privacy with bitcoin transactions. Both options mean that it’s almost impossible to determine a transaction’s origin. A more advanced solution is using mixers — a network shared by several users to send and receive bitcoin. However, because these mixers are centralized, people within the network will know that those addresses are associated with bitcoin transactions. Mixers that require all users to submit the same amount, charge a random fee, or break up the timing of transactions can be more difficult to track.
However, despite its drawbacks with anonymity, bitcoin users have a level of privacy that other traditional payment services cannot match.