As a global, open, decentralized and permissionless network, Bitcoin requires no formal registration and has no requirement for participation.
As long as you own a computer that’s connected to the internet in order to run a full node or operate a mining rig, you can easily become a part of this network. And if you can acquire some satoshis, then you are free to HODL or transact.
In this regard, we say that Bitcoin is pseudonymous: it offers every owner plausible deniability thanks to the lack of a sign-up requirement (you don’t need a national ID, phone number, or e-mail address to interact with the Bitcoin network), but all transactions still take place on a public blockchain that anyone can analyze. Back in the early days, the rather limited understanding of Bitcoin and limited network effect has made it the default currency of dark markets – and the Silk Road is the prime example of an internet business which learned the hard way that Bitcoin isn’t as private or anonymous as some assumed.
However, this empirical discovery isn’t new: Hal Finney’s quest for improving anonymity in Bitcoin began just 10 days after the network’s launch. Since then, more research has been made in the field and we now have more complex cryptographic models which improve privacy. Though some of them can’t be added to Bitcoin without hard forking the network (forcing all participants to update their client), Core developers are still finding smart workarounds.
This article breaks down the four different types of Bitcoin privacy and explains how each one of them can be obtained. If we look at Bitcoin transactions, we can identify privacy requirements for the sender, recipient, amounts, and the network through which transactions are broadcasted. Correspondingly, the next section will explain how every type of privacy can be achieved.
1. Sender Privacy
Whenever you send a Bitcoin transaction, you reveal how many coins you own in the UTXO (unspent transaction output) you used for spending, but also how these coins got to you. Your Bitcoin history can be tracked on the blockchain all the way to the moment when the bitcoins were issued via mining.
This is pretty frightening both in terms of privacy and fungibility: on one hand, it’s terrible for you as a user that every transaction you make reveals how much money you have, and some bitcoins may be tainted due to associations with exchange hacks or dark markets.
The solution to regain the privacy and fungibility of your bitcoins is to do CoinJoins – a process in which coins get mixed in order to acquire a greater anonymity set and plausible deniability. The most popular and user-friendly CoinJoin application is Wasabi Wallet – an all-in-one privacy solution for Bitcoin which grants you Tor network privacy, allows you to use your full node for transactions, and also features the mixing feature.
Wasabi is available for Mac, Windows, and Linux. Therefore, its main inconvenience is the lack of a mobile application. However, its powerful privacy features require all the extra screen size and processing power that a desktop and laptop offer. The mobile alternative (available only on Android) is Samourai, but in order to have the same privacy you need to run a Dojo (a dedicated full node server which synchronizes with your mobile wallet).
Advanced users who want to maximize their sender privacy can run JoinMarket. Unlike Wasabi and Samourai which have a central trustless coordinator who collects fees for each mix, JoinMarket allows you to become the coordinator yourself and potentially make some extra satoshis. It’s the more decentralized solution which requires more expertise in the field. So if you’re just starting out and want to learn, it’s recommended to use Wasabi. (Click here to see how)
2. Recipient Privacy
Whenever you receive bitcoins, it’s important to make sure that you minimize the amount of financial data that you reveal. The best way to achieve this is to generate a new Bitcoin address for each transaction and make sure that you never reuse it.
In theory, it sounds simple (most wallets do this by default) – especially if you run your own node and carefully manage your UTXOs. However, it’s unrealistic in some scenarios: for instance, when a foundation asks for donations by posting a Bitcoin address in the body of an article or in the description of a YouTube video, the recipient privacy is terrible.
One of the most recent and popular solutions is BTCPay Sever, which acts as a bona fide personal payments processor. Setting it up does require some technical understanding, but full node products such as Casa 2 and Nodl One include it as a default feature. Once it’s up and running, a dedicated page on your website will automatically generate a new payment address whenever someone wants to send you bitcoins.
Two other proposed solutions are Peter Todd’s Stealth Transactions (an elegant cryptographic workaround which generates new addresses that recipients don’t even need to see) and Reusable Payment Codes. However, these alternatives didn’t gain much traction and are even harder to use than BTCPay Server.
If you’re not technical, you can simply run your own node and try to generate new addresses for each payment that you’re about to receive.
3. Amounts Privacy
The most heated debate in the field of Bitcoin privacy regards amounts privacy. Unlike Monero, in Bitcoin you can track every amount of money to the block in which was mined. This means that pseudonymity can be preserved by doing CoinJoins and generating new addresses for each transaction, but the amounts are still there for anyone to check.
Unless your previous transaction was a CoinJoin, then you’re going to reveal how many bitcoins you own in the UTXO set of choice and from where you received them. In terms of privacy, this is terrible: imagine going to the supermarket, taking out your wallet and allowing everyone to see how many bills you are holding and whose fingerprints they store. You may use a $50 bill for your groceries, but everyone will know that you have $500 in your wallet and two of the $100 bills have been used by a previous owner to buy drugs.
Blockstream CEO and hashcash inventor Adam Back has also released practical research in the field of Confidential Transactions, but the integration in Bitcoin would require a hard fork (therefore the entire network must move to a new chain, which is impractical and dangerous). Furthermore, integrating any form of universal amount obfuscation will limit the supply transparency: how will users know that the inflation program is being respected by all participants and there is no hidden bug that some exploit to introduce more bitcoins into the system? The situation is definitely delicate, but more research is being done in the field in order to identify workarounds.
For now, Bitcoin has privacy in sidechains (for instance, Liquid enables Confidential Transactions by default) and second layers (the Lightning Network’s routing system currently makes it the simplest and most private way to transact). So if you don’t want to reveal to the entire world the amounts that you’re sending or receiving, and you definitely don’t want them to be stored forever on public record, it’s better to keep your funds on Liquid and/or Lightning and help their burgeoning economy develop.
4. Network Privacy
In Bitcoin, network privacy is the most underestimated and overlooked. It takes place at the wallet to node level and exchanges information regarding IP address and other types of metadata involved in remote communication. However, the solution is very simple: run your own full node (so the data is stored on your computer) and obfuscate everything with Tor routing.
For instance, Wasabi Wallet routes your connection via Tor every time you open it. On mobile, Blockstream Green has Tor integration on both iOS and Android – and this is a very powerful resource to make sure that your IP and location data don’t get collected by unwanted and malicious third parties that specifically target Bitcoin activity (Tor is a general-purpose internet tool which relays the data through 3 geographically-diverse nodes).
By using these applications, you don’t even have to worry about network-level privacy. In conjunction with a full node and possibly a VPN connection, your Bitcoin data is as safe as can be from the moment it’s transmitted to the hard drive where it’s stored.