Bitcoin is often described as an anonymous currency because it is possible to send and receive bitcoins without giving any personally identifying information. However, achieving reasonable anonymity with Bitcoin can be quite complicated and perfect anonymity may be impossible.
Bitcoin is pseudonymous. Sending and receiving bitcoins is like writing under a pseudonym. If an author’s pseudonym is ever linked to their identity, everything they ever wrote under that pseudonym will now be linked to them. In Bitcoin, your pseudonym is the address to which you receive Bitcoin. Every transaction involving that address is stored forever in the blockchain. If your address is ever linked to your identity, every transaction will be linked to you.
In the original Satoshi whitepaper, it was recommended that Bitcoin users use a new address for each transaction to avoid the transactions being linked to a common owner. This would be the equivalent of writing many books under different pseudonyms. Although this remains a best practice, it is not enough to guarantee full anonymity due to multi-input transactions.
A multi-input transaction occurs when you receive payments to your wallet to different addresses, but then you send a payment out of your wallet which pulls bitcoins from multiple addresses. The outgoing transaction will include multiple addresses as inputs, proving that they are in the same wallet and belong to the same entity. If your identity is ever linked to any of these addresses, none of the addresses will maintain their anonymity. For example, in the transaction displayed below, some of the bitcoins came from address 12TBGSTqd1how9cpYKWTm4VUYw3QDDWMoB and some came from the address 19t1HyYqe254NxiTAGLrAR4gPJAZCkSXJY. This means that those two addresses are in the same wallet and belong to the same user.
One way to increase your anonymity is to use multiple wallets. This is like maintaining multiple separate identities. The easiest way to maintain multiple wallets is to use MultiBit. MultiBit is a simple and lightweight software wallet for Windows, MacOS, and Linux that allows you to manage multiple wallets from one program.
A mixing service is an entity that offers to trade out your bitcoins for ones with a different history. To do this, they essential take your bitcoins and put them in a big pot with bitcoins from many other users. They then send back out the bitcoins randomly to make it impossible to tell which inputs connect to which outputs. While this is effective in theory, to do this with complete anonymity generally requires you to trust an anonymous third party to give you back your bitcoins and not keep records of the transactions that flow through them. There is nothing to keep a mixing service from running away with the coins.
Web hosted wallets can be used as an effective way of masking the original owner of bitcoins. Many web-based wallet services will lump the bitcoins in their service together, thus often giving you different bitcoins when you withdraw. This only works if this is an active service with other active withdrawals and if you do not make up a significant portion (less than 10%) of the service’s Bitcoin balance. Most web wallets also maintain records of incoming and outgoing coins, so any anonymity gained is fully dependent upon the service provider.
In this article, we attempted to outline why Bitcoin is not inherently anonymous as well as lay out a few ways to increase your anonymity when using Bitcoin. We are preparing a more advanced guide that explains anonymity methods that are both more complicated and more secure. Sign up for our mailing list or subscribe to our feeds (RSS2/Atom) to know about it before anyone else.