Protect Your Financial Privacy with Bitcoin: A Comprehensive Guide

This comprehensive manual will explain how you can use Bitcoin to protect your financial privacy.

After reading this guide, be sure to check out the step-by-step guide: How to Make Anonymous Payments with Bitcoin.

Jump to…

  • Why it is important to keep your funds private
  • How Bitcoin empowers anonymity
  • How you can be de-anonymized using Bitcoin
  • How to be transparent
  • How to protect yourself from being de-anonymized
  • How to obfuscate transfers between identities
  • Guide: How to make anonymous payments with Bitcoin

Why it is important to keep your funds private

This guide is also available in pdf format.

As a financial system, Bitcoin functions completely differently from the established banking network. Bitcoin allows you to store funds yourself, without the need for a third party, and places the burden of keeping those funds safe and accessible on you.

While opening an account at a traditional bank or other financial institution requires significant cost and effort, creating a Bitcoin account is quick and easy to do on your home computer. This speedy process makes it possible to create millions of separate accounts if you wish.

Two aspects in particular — privacy and identity — work very differently with Bitcoin than in the old financial system.

Pseudonyms protect your identity in Bitcoin

A bank account, PayPal account, or credit card is always tied to a real identity, which makes it difficult for many people to open them. Bitcoin allows you to use any persona or online identity you wish.

Being able to use the internet anonymously or pseudonymously is the only way for many people to truly be themselves. Hundreds of millions of people around the globe are not accepted in their societies for reasons they cannot control.

Pseudonyms are used by women speaking up for their rights, by atheists born into religious societies, and by people critical of their governments to spread their thoughts, empower their causes, and encourage those around them to do the same.

These courageous men and women put their safety and well-being on the line to defend who they are and what they believe in. Technology empowers them to become leaders of social change more effectively than they ever could have been. Technology also connects like-minded individuals so they can form the communities they strive for.

Maintaining an identity with a large following might require paid services such as blogs, logo design, stock photos, VPNs, or translations. Without the ability to pay for these services anonymously, you would be forced to reveal your true identity in order to maintain your pseudonym — a situation that clearly makes no sense, and one with potentially dangerous ramifications.

How Bitcoin empowers anonymity

Bitcoin is an important, empowering technology. Using a Bitcoin account with a pseudonym protects your right to remain anonymous on the internet. It allows anonymous or pseudonymous fundraising. Groups can collectively control Bitcoin accounts and choose to hide or reveal financial information at will.

There are many positive reasons for a private and secure banking system like Bitcoin:

A workers’ rights group could, for example, raise funds with Bitcoin. The money could be used for servers, flyers, remote assistants… and all without tying any transaction to the real identities of the volunteers.

Likewise, a victim of domestic abuse could use Bitcoin to safely store funds to prepare for an independent life.

traditional and new privacy models

The traditional privacy model and the new privacy model as explained by Satoshi Nakamoto in the original white paper.

Privacy through pseudonymous accounts

Privacy in traditional banking is guaranteed by the institutions that make up the system, such as banks, credit card companies, and governments. They (try to) make sure that your bank balance stays a secret. This puts them in a delicate position, where only they have complete oversight of what is going on.

In the Bitcoin ecosystem, everyone can see the history of every account balance, but they cannot see who controls an account. All addresses and transactions are recorded in Bitcoin’s publicly distributed database, the blockchain. Addresses do not have names or IP addresses attached to them, so it is not always possible to know which transaction belongs to which person.

Transparency requires protection

Bitcoin is by default a transparent system, in which every piece of information is available to the public. As such, every Bitcoin user requires some level of protection. Anyone with substantial wealth in Bitcoin would not want to advertise their funds to every person they transact with, for obvious reasons. But every time you spend just a tiny portion of your Bitcoin wallet, you reveal your wealth to the other party. Doing that on the internet is like flashing large stacks of cash in a dark back alley. It’s not advisable! A criminal might see how much you have and decide to come after it. Distributing your wealth between several wallets and using a different address for each transaction is a common practice that prevents others from knowing how much Bitcoin you have.

How you can be de-anonymized using Bitcoin

Sadly, there are hundreds of ways a Bitcoin transaction can be tied to someone’s real identity. True pseudonymity against a resourceful adversary is very difficult to achieve. Any sincere approach to anonymity in Bitcoin requires a holistic use of encryption and communication tools (see the ExpressVPN guides on PGP, OTR, and Tor).

Over the course of just a few months, you might come into contact with hundreds of Bitcoin addresses. Often it is only necessary to associate one of these addresses with your real identity to uncover your real identity.

Bitcoins can be traced on the blockchain

Each Bitcoin transaction contains at least one input (where the bitcoins are from) and at least one output (where the bitcoins are being sent). This means that once a single address is known, there is a trail to follow the bitcoins.

Another characteristic of Bitcoin transactions is that they always need to match the previous transaction. If you receive 1 Bitcoin but only want to spend 0.4 Bitcoin, you will need to make a transaction in which 1 Bitcoin will leave your account. 0.4 Bitcoin will go as payment, then 0.6 Bitcoin will return to you as change. Your Bitcoin wallet will handle this process automatically, but it is important to understand the principle in order to use it anonymously.

The original Bitcoin owner does not know what you did with the money, but they can see the amounts involved. In your account they can see two transactions: one for 0.4 Bitcoin and one for 0.6 Bitcoin. They cannot see which was the purchase and which is the “change,” but it is a 50% guess. The next time you make a transaction, it is a 25% guess, and so on.

1 input consumed, 2 outputs created

1 input consumed, 2 outputs created.

This is why making many transactions, even between yourself, increases your anonymity on the Bitcoin network (as long as your wallet software does not reuse addresses!).

Similarly, if you receive 0.5 Bitcoin but want to spend 1 Bitcoin, you need to own additional Bitcoin addresses with a combined value of at least 0.5 bitcoins in them. Again, it is a 50% guess, but now you have one extra publicly visible Bitcoin address. Having publicly visible Bitcoin addresses could make it easier to find out your identity.

2 inputs consumed, 2 outputs created

2 inputs consumed, 2 outputs created.

Your name might be linked to your Bitcoin address

Your real name can be connected to a Bitcoin transaction when you make transactions with Bitcoin, for example, if you buy goods online and have them sent to your real address. Bitcoin exchanges and even some ATMs often require you to show identification before making a purchase. When you buy bitcoins from someone in person, they might know who you are and keep a record of the transaction. This record could fall into the hands of your adversary or might even be made public.

The anti-money-laundering laws of your country might require you to reveal your identity when buying or selling Bitcoin, making it necessary to obtain their trace on the blockchain.

Your IP address might be linked to your Bitcoin address

When you make a Bitcoin transaction, you essentially create a message on your phone or computer and send it to the Bitcoin network. It is possible that someone operating a large number of nodes in the Bitcoin network could match some of your transactions to your IP address, then de-anonymize your entire stack of bitcoins.

It is relatively easy to avoid this on a computer by routing all transactions through the Tor network. Most Bitcoin clients and wallets support Tor’s Socks5 proxy.

Revealing your Bitcoin address before it goes into the blockchain could let others track you

As soon as a Bitcoin address is entered into the blockchain, it is publicly recorded in an immutable global database. But before that happens, it is likely that only two parties — the recipient and the sender — know this address. If you search for an address that has not yet appeared on the blockchain, either you are the owner of that address or someone is requesting a payment from you.

To avoid being tracked in this way, it is important to make all payment requests and other mentions of addresses through encrypted channels:

  • Make sure the website you are visiting has HTTPS enabled when you search for Bitcoin addresses
  • Use VPNs and Tor whenever possible
  • Encrypt communications with PGP and OTR

The mere possession of a wallet file can be enough proof that you control bitcoins

A signed message is the only strong proof that you own a Bitcoin address without revealing the private key. Be careful, however, when signing messages using your Bitcoin keys. Signed messages are a great feature (we’ll talk more about why later), but they allow anyone to know that you control the Bitcoin address you signed from.

If someone is trying to de-anonymize you, they might be satisfied with a weaker form of proof than a signed message: knowing that you keep records of public addresses is enough evidence for someone to draw the conclusion that you are involved in Bitcoin transactions, and the Bitcoin blockchain will point them to exactly which transactions. All they need to do is search for the address you recorded.

Most wallet applications store public addresses unencrypted, only encrypting the private keys. This is good for the user experience, as you do not have to enter a password every time you want to see your balance or check your transactions.

You can store your wallet safely on an external USB drive, a cloud storage service, or even your email account if the private keys are sufficiently encrypted. But anyone with access to these mediums could estimate which addresses you control and the transactions you make.

To protect yourself, you should encrypt all backups with a second password or PGP.

stay anonymous with a box over your head

Encrypt EVERYTHING to stay truly anonymous!

How to be transparent

The concept of privacy is best defined as the amount of control you have over your information. This control includes not only the power to hide or conceal your personal information, but also the power to reveal it to the public. Transparency is useful if you need to gain legitimacy in the eyes of the public or sponsors. Bitcoin allows you to be transparent to any degree you like. You can use it to prove single transactions or ownership of a Bitcoin address. Transparency also lets you audit your organization down to the last satoshi (the smallest unit of a Bitcoin), without revealing your real identity or location.

Compared to traditional financial systems, Bitcoin’s transparency is an important and empowering innovation, as it lets you prove beyond doubt that you made a transfer of funds. The blockchain does not lie, and it cannot be bribed.

Transparency through signatures

The simplest form of Bitcoin transparency is linking two identities by signing statements. How you do this depends on your particular wallet software, but the principle is always the same. You write a verbal statement, then sign it digitally with the private key. This will not necessarily prove that the statement is true; it only proves that the owner of the address made the statement.

For example, if the operator of a website claims to control a Bitcoin address in their statement, and the owner of the Bitcoin address claims to be the operator of the website in their statement, you can reliably conclude that the two are the same entity. You can then safely send funds to the Bitcoin address, knowing it is going to the right website.

You can also use these signatures to make statements about certain transactions. For example, you may need to prove to auditors that you made a transaction or that you control a certain amount of funds.

This is very useful for digital receipts that cannot be forged. With just a few clicks, you can prove to an art dealer that you hold enough funds to purchase a painting, or maybe show investors that you are still in control of the money.

sign and verify the message

Sign and verify the message to prove you control the funds.

I, the owner of address 1Hta9NXidkpUeKTEzoVQuP1QoiqkZ4vj6M, enjoy writing privacy guides.
H3FwKAAJjJ6nzIw22fiWH9O7jgiXHACT + zSrd0Jlm9xGOrYKEX / 22QZr8vL0XmPW7w3nHjVOLB9K3GnXpMv9nBE =

Transparency through reused addresses

The official Edward Snowden Defense Fund uses a static Bitcoin address for its Bitcoin donations. This shows how many bitcoins they have raised and gives donors the assurance that they will not be donating to someone pretending to raise money on behalf of Snowden’s defense.

This level of transparency can be used anywhere, to demonstrate that funds are not being embezzled and that money is spent responsibly.

How to protect yourself from being de-anonymized

Be aware of the information you reveal about yourself

The first rule is to be aware of what you are doing and what you reveal about yourself. Question your actions. Are you using a VPN? What did you previously do on this IP address? What tabs do you currently have open in your browser? Which Bitcoin wallet are you using? Where did the money in that wallet come from, and what have you previously bought with it? Who have you recently communicated with about what you intend to do, and was the information encrypted?

All of this information is important if you want to protect yourself. There are many small things that reveal a little about you online. The following points will explain how you can protect yourself best. Always stay vigilant, and don’t forget to remain conscious of the data you transmit and to think about how it could be used to identify you.

Never reuse addresses

Choose Bitcoin wallets that respect your privacy by never reusing addresses. HD (Hierarchical Deterministic) wallets generate a theoretically infinite number of addresses from a single seed. HD wallets make it easy to use a new address for each transaction and also provide a secure backup mechanism.

Be cautious with services where your withdrawal address is fixed. Change your Bitcoin address manually after each withdrawal to an unused address. Encourage others to change their addresses after each use, because their practices will affect your privacy as you interact with them.

Use Tor

To maintain your anonymity, use the Tor Browser or the TAILS operating system, which comes preinstalled with the Electrum Bitcoin wallet. Search everything through Tor by default.

Configure your wallets to connect to the Bitcoin network through the Tor network. You can do this by installing the Tor browser and setting up the proxy under Preferences > Advanced > Network > Settings. Keep the default Socks v5 setting at 127.0.0.1 on Port 9050, then enter these values in your Bitcoin wallet’s connection settings.

It is also good practice to route your chats through the Tor network, with the same proxy settings. You can configure many cloud storage providers this way as well.

Encrypt your browsing, chats, emails, backups

Secure your browsing

Always use HTTPS when viewing websites with information related to your identity or Bitcoin transactions. This simple protocol is used to encrypt the traffic between the website you are viewing and your computer. A green lock icon in your browser’s address bar indicates that the website you are on uses HTTPS.

Another way to ensure your browsing security is with a VPN. When you use a VPN, the VPN hides your real IP from the sites you interact with. Take care when choosing a VPN provider. Read their privacy policies carefully, especially regarding the information they log.

Use the Tor browser to further hide your location from the sites you access. Services that use a .onion address allow the most secure encrypted and anonymous end-to-end connections.

Encrypt your chats

For maximum protection, create at least one jabber account (also called XMPP) for each online identity. There are plenty of free services available for you to choose from. Register through Tor and route all your chats through the Tor network, using the built-in Socks v5 proxy for extra security.

To make sure your chats cannot be intercepted and read by anyone other than the intended recipient, use OTR as a reliable and robust encryption protocol. Note that you can only use OTR if the person you are communicating with also uses it.

Make your emails private

Of all online services, email is the most vulnerable to surveillance and hacking. While a good email provider will make it very difficult for attackers to access your system, the provider might still voluntarily hand over your data to governments when asked. Unfortunately for those who want privacy, many email providers make it difficult to access email via Tor. Some even require you to tie your email address to a phone number or a real identity.

Use PGP to encrypt your emails, though you will only be able to do this with people who also use PGP. If you are worried about your privacy, avoid communicating via email altogether.

Secure and encrypt your backups

How you back up your bitcoins depends on the software you use. HD wallets give you a series of random words that can be used to recreate the wallet. All you need to do is write these words down and lock them away safely. Be careful, though! The bad guys only need to know your words to steal your bitcoins. For this reason it is generally not considered prudent to store these words on any electronic device, but in the absence of a safe physical space, it might be unavoidable.

The easiest way to encrypt the random words of your HD wallet (or any other text) is with PGP, though this will require you to also think about how to back up the PGP key. If you encrypt the PGP key with a very good password (it needs to be long and memorable: a combination the human mind is notoriously bad at), you only need to remember one master password to access all your files. See this blog post about Diceware to learn how you can create such a master password. Use the password to encrypt the PGP key, then back up all your other files by encrypting them with the encrypted PGP key.

Use separate wallets for each identity

It is easy to maintain a different Bitcoin wallet for each online identity. You could have one wallet for every need. For example, you could have:

  • a wallet for donations received
  • a wallet for your real identity
  • a wallet for your advertising income
  • a wallet for your savings… etc.

a lot of wallets

You’ll need a lot of wallets!

You do not need to download separate software for each identity. All you need to do is keep the wallet files (files that contain your public and private keys) separate. Just make sure you do not confuse the separate files and never mix their funds.

Whenever you need to move funds between your identities, you will need to obfuscate the trail to make it difficult for anyone to connect your identities.

Obfuscate transfers between identities

When you think of the traditional financial system, the synonyms “obfuscate,” “tumble,” or “mix” sound like activities for criminals.

Due to the transparent nature of Bitcoin, commercial transactions might require some form of obfuscation to protect trade secrets and business practices. A bank transfer from one person to a regular bank account does not need to be revealed to another party. Neither the client nor the competitors need to find out how the revenue is used. Without obfuscation, we inevitably reveal far more than we need to, so it is good practice to make sure your Bitcoin wallet is as private as it needs to be.

How to obfuscate transfers between identities

One-to-one exchange

There are many ways to obfuscate transfers. You could swap bitcoins with someone else at a 1:1 exchange rate, although this requires great trust in the other party. You can also use an external escrow service. This option is rarely used, as the trusted company might record compromising information about the transaction.

Online wallets

You can also protect your privacy by using an online wallet that does not assign unique addresses to each user. An example of this is online exchanges. When you deposit your bitcoins into such a wallet, your coins might end up in someone else’s hands. In return, you might receive coins previously held by somebody else. These services are called tumblers. It is important to note that you will not gain or lose bitcoins in this process.

A regular Bitcoin exchange most likely complies with strict anti-money-laundering regulation. They will keep a record of all your transactions, possibly indefinitely, which they can pass on to a law enforcement agency. They might also require proof of your identity before allowing you to withdraw your coins, a practice that could harm your privacy more than simply tracing Bitcoin.

No online wallet that exists for the purpose of moving coins will be able to offer a guarantee that you will receive bitcoins that were not already held by you. If they did, they would be obliged to keep records of the entire process (rather than just deposits and withdrawals), which would defeat the point of the system. Another significant risk of a Bitcoin exchange is that you trust your bitcoins with a third party that likely operates anonymously. You will have no recourse if the exchange or wallet provider disappears with your funds, as has happened several times.

Altcoins

Another way to disconnect yourself from your bitcoins is simply to sell them. You could exchange bitcoins for cash or gold, but a better option is to exchange them for altcoins. That way the transaction is cheaper, safer, and easier to execute anonymously online. You could even sell your bitcoins in exchange for another high-volume, high-market-cap cryptocurrency, then buy them back at a second exchange shortly after.

You will need to find multiple exchanges with low KYC (know-your-customer) requirements that can be trusted with your coins. This can prove to be a challenge.

Coinjoin

Coinjoin is the most promising way to maintain your financial privacy with Bitcoin. It works by combining many transactions into one, so that it is not clear which inputs and outputs are correlated.

This can be achieved with the help of software that removes the risk of funds disappearing or being stolen. Each signature is created on the participants’ computers, so anyone trying to connect the signatures cannot alter the transaction or redirect the funds. The funds will always be in a Bitcoin address that you control.

It is possible to do this in a decentralized way so that the service does not rely on external parties or centralized servers. It only needs the participants of the transaction.

coinjoin scrambles inputs and outputs to keep you anonymous

Services like Coinjoin shuffle Bitcoin inputs and outputs to keep everyone anonymous.

The biggest problem with Coinjoin is that it might still be possible to correlate the inputs and outputs, as there are often mathematically too few possible combinations of inputs and outputs, allowing a computer to determine which inputs match which output.

To mitigate the possibility of someone figuring out which inputs and outputs belong together, the protocol needs to be standardized in some way. As the inputs cannot be easily standardized, the outputs can be predefined. For example, you could limit the outputs to exactly one Bitcoin. Limiting the outputs to exactly one Bitcoin would make it impossible to match the account to the transaction, as each output will be for 1 Bitcoin. However, your inputs will likely be more than one Bitcoin each, so the difference will be returned unmixed. This is because the change amount can be matched to a transaction.

Coinjoin can be applied multiple times, and as many transactions are grouped together, participants can save on transaction fees. Coinjoin is the preferred method of gaining privacy in the Bitcoin network. It is even possible that this functionality will one day be included directly at the protocol level as a standard, as some versions already do.

This guide is also available in pdf format.

Don’t forget to check out this step-by-step guide: How to Make Anonymous Payments with Bitcoin.

Featured images: (1) allapen / Dollar Photo Club, (2) Sergey Nivens / Dollar Photo Club, (3) pitrs / Dollar Photo Club.