NEW YORK (InsideBitcoins) — Although certain media outlets and government regulators often talk about the anonymous nature of bitcoin, most bitcoin transactions can currently be tracked with relative ease. The Open Bitcoin Privacy Project is one of the few voices pushing for more privacy in bitcoin wallets by default, but many users and developers do not take the issue of traceable bitcoin transactions seriously at this point in time. To protect one’s financial privacy in bitcoin, a user must understand how to take the proper precautions and use a variety of mixing services that are less than perfect.
Bitcoin mixing services
For now, most bitcoin users are relegated to the use of Tor-powered services, such as Bitcoin Fog, which allow them to mix their bitcoins with other participants. Bitcoin Fog is a centralized service, which means users must trust that the operators will not decide to pack their bags and steal everyone’s bitcoins at some point in the future. Because bitcoin transactions can be easily tracked on the public blockchain, some users resort to these sorts of services to protect their financial privacy.
In addition to centralized solutions like Bitcoin Fog, there are also more technical approaches to mixing bitcoin transactions. CoinJoin is one of the most well-known approaches to stealthier transactions, and the idea came from one of the bitcoin protocol’s core developers, Gregory Maxwell. The basic concept is that the inputs and outputs for multiple bitcoin transactions are combined to create a new, single transaction. It then becomes difficult to figure out where a particular bitcoin address sent their coins. CoinJoin does require a trusted server to bring together users who wish to mix their bitcoins together; however, the CoinJoin server is unable to steal the bitcoins. An alpha version of this sort of mixing technology has been implemented in Dark Wallet.
And then there’s CoinShuffle. CoinShuffle is a proposal from Tim Ruffing, Pedro Moreno-Sanchez, and Aniket Kate of Saarland University in Germany. They key advantage of CoinShuffle over CoinJoin is that it does not require the use of a server when mixing transactions. This means that no third parties will be able to link together the transactions after they have been “shuffled.”
The way CoinShuffle works is that the participants in the shuffling process must first share three pieces of information: a public encryption key, an input address, and the amount of bitcoins he or she wants to send. Each user then encrypts their output address (where they wish to send the bitcoins) before sending it off to the next participant. Eventually, all output addresses are hidden from the participants through encryption. The output addresses are then shuffled before being exposed to everyone in plain text once again. Participants in the shuffle can then review the newly created CoinShuffle transaction before signing it and broadcasting it to the bitcoin network. This is an extreme simplification of how the process works, and a more complete explanation by Bryan Vu can be seen in the video below:
Both Dark Wallet and Bitcoin Authenticator — a wallet from the OBPP’s Chris Pacia — plan to implement CoinShuffle in their respective wallets at some point in the future. According to Dark Wallet Chief Scientist Peter Todd, CoinJoin and CoinShuffle both have their pros and cons.
You can follow @kyletorpey on Twitter.