In this blog post we will giving a thorough overview of the various bitcoin wallet options for users, as well as key privacy features to look out for when choosing your wallet of choice.

Table of Contents

FOSS Bitcoin Wallets

A FOSS (Free and Open Source Software) bitcoin wallet is important for several reasons. Firstly, it provides greater transparency and security for users as the source code is open and can be reviewed by the community. This means that any vulnerabilities or backdoors can be identified and fixed quickly by the community, making the wallet more secure. FOSS wallets also allow for greater customization and the ability to add additional features or integrations as desired.

Key Privacy Features

When using a FOSS bitcoin wallet, there are several key privacy features that users should take advantage of to enhance their > security and protect their privacy. Here are some of the most important privacy features to consider:

  1. Transaction fees: When sending bitcoin transactions, you may be able to choose the transaction fee you pay. Higher fees may result in faster transaction confirmations, but they can also reveal more information about your transaction history. By choosing a lower fee, you may be able to improve your privacy.
  2. Address reuse: Reusing bitcoin addresses can compromise your privacy by allowing others to easily track your transaction history. Bitcoin wallets usually offer the option to generate new addresses for each transaction, which helps to improve your privacy and security.
  3. Coin control: Some wallets allow users to choose which coins or addresses they want to use for a particular transaction, which can help to improve privacy by preventing others from seeing your entire transaction history.
  4. Tor integration: Some wallets offer integration with the Tor network, which can help to protect your privacy by hiding your IP address and location from potential attackers.
  5. Connect node: Some wallets provide the option to connect your own node to your wallet instead of trusting the wallet provider’s node to fetch balance and transaction information, as well as verify the state of the blockchain. Most allow connecting via your node’s IP address, but some even allow connecting your node to the wallet via Tor. This is the most ideal situation because at this point you are 100% in control.
  6. CoinJoin: A technique that allows multiple bitcoin users to combine their transactions into a single transaction, making it more difficult to trace the original transactions to individual users. Some wallets offer CoinJoin as a built-in feature, while others require users to use a separate CoinJoin service.
  7. BIP47, also known as “Reusable Payment Codes”, is a protocol that allows users to generate a unique payment code for each transaction, making it more difficult to trace their transaction history. When using BIP47, a user generates a “payment code” that is unique to each transaction. This code can be used to receive payments without revealing the user’s bitcoin address.
  8. PayJoin (also known as “P2EP” or “BIP78”) is another privacy feature for bitcoin transactions. PayJoin is a technique that allows two bitcoin users to combine their transactions into a single transaction with multiple inputs and outputs, making it more difficult to trace the original transactions to individual users. This makes it more difficult for an observer to determine which inputs and outputs belong to which user.

Dust Attacks

Preventing dust attacks is another important privacy feature that users should consider when choosing a wallet. A dust attack is a spamming technique used by attackers to send small amounts of bitcoin (dust) to a large number of addresses. The goal of a dust attack is to link these addresses to a particular user, allowing the attacker to track their transactions and potentially compromise their privacy.

Here are some features that help prevent dust attacks:

  1. Customizable transaction fees: Some wallets allow users to customize the transaction fees for their transactions. By setting a higher transaction fee, users can ensure that they only receive bitcoin transactions with a higher value, making it harder for dust attacks to succeed.
  2. Address labeling: wallets that offer address labeling features can help users identify and avoid receiving dust transactions. Users can label their addresses as “don’t send me dust” or “unused” to prevent dust transactions from cluttering their wallets.
  3. Coin Control: Wallets that allow users to choose which coins or inputs they want to use for a transaction. By selecting inputs that have a higher value, users can avoid using inputs that may be associated with dust transactions.

Android vs iOS

When it comes to choosing between Android and iOS as the environment for a FOSS bitcoin wallet, there are a few key differences to consider. Android is generally considered to be a better environment for FOSS wallets due to its open-source nature and greater flexibility. Android allows users to install apps from sources outside of the Google Play Store, which means that FOSS bitcoin wallets can be easily installed without the need for an app store (i.e. F-Droid and Aurora Store). Additionally, Android devices are generally more affordable and accessible than iOS devices, which ultimately means that more people can use them.

In contrast, iOS has a more closed environment, which can make it more difficult for users to install FOSS Bitcoin wallets. Apple’s strict app review process makes it longer, and can make it harder for FOSS wallets to be approved and listed on the App Store, if they get accepted at all. There have even been examples of certain privacy feature requests from bitcoin wallet companies getting rejected by the App Store. However, iOS devices do have a reputation for being more secure than Android devices, which may be a consideration for some users.

Overall, the choice between Android and iOS depends on individual preferences and priorities. However, for those who prioritize openness, flexibility, and accessibility, Android is clearly the better choice.

In any case, mobile wallets should only be used for smaller amounts of bitcoin, and of course it’s always best practice to backup one’s seed phrase. Ideally a BIP39 compatible wallet would be used and a passphrase would be added during seed creation.

Mobile vs Desktop

In general, desktop wallets can be more secure than mobile wallets because they are typically designed to be more robust and have more features, such as support for hardware wallets, multi-signature transactions, and advanced privacy features. Desktop wallets also tend to have larger screens, which can make it easier to verify transaction details and avoid errors.

However, mobile wallets can also be secure if they are properly designed and used. Some mobile wallets are specifically designed to be secure and offer advanced features, such as support for biometric authentication, hardware wallet integration, and multi-signature transactions. Mobile wallets can also be more convenient than desktop wallets, as users can easily carry them with them and make transactions on-the-go.

One factor that can affect the security of mobile wallets is the operating system. Android has been historically considered to be more vulnerable to malware and security threats than iOS, although this gap has narrowed in recent years as both platforms have improved their security measures. Additionally, user behavior can also have a big impact on the security of both mobile and desktop wallets. For example, using strong passwords, or passphrases in BIP39s case, regularly updating the wallet software, and avoiding public Wi-Fi networks can help to improve the security of any type of bitcoin wallet.

Linux OS

Linux can be considered the best operating system to use when using bitcoin applications for several reasons:

  1. Security: Linux is known for its robust security features, including built-in firewalls, permissions systems, and encryption tools. This makes it more difficult for hackers to compromise a Linux-based system and steal Bitcoin funds.
  2. Open-source software: Many bitcoin apps are open-source and developed by the community, which means they are often optimized for use on Linux. Additionally, Linux users can more easily review and audit the source code of bitcoin applications to ensure they are secure and trustworthy.
  3. Compatibility: Many bitcoin nodes and wallets are designed to run on Linux, so users can take advantage of the full range of features and functionality available.
  4. Stability: Linux is known for its stability and reliability, which means bitcoin applications are less likely to crash or encounter technical issues.
  5. Privacy: Linux is often favored by privacy-conscious users because it is more difficult for third-party applications to track user behavior or data.

Overall, Linux provides a secure, reliable, and privacy-focused environment for bitcoin users and developers. However, it’s important to note that Linux can have a steeper learning curve than other operating systems, and may require some technical knowledge to set up and use effectively.

Hardware Wallet

Hardware wallets are physical devices designed to securely store funds. They offer several benefits over other types of wallets, including:

  1. Enhanced security: Designed to keep private keys offline, which makes them much less vulnerable to hacking attacks and malware than software wallets.
  2. Ease of use: Usually very user-friendly, with simple setup processes and intuitive interfaces that make it easy for even novice users to store and send securely.
  3. Portability: Small and compact, making them easy to carry around in a pocket or bag. This makes it simple to take it with you wherever you go, without having to worry about the security risks of carrying around a paper wallet or keeping funds stored on an exchange.

Hardware wallets offer a high level of security and convenience, making them a popular choice for many bitcoin users. However, they can also be relatively expensive compared to other types of wallets, and may require some technical knowledge to set up and use properly.

Air-gapped Hardware Wallet

Air-gapped hardware wallets are considered to be more secure than traditional hardware wallets because they are not connected to the internet or any other devices that could potentially be compromised by attackers. This makes them much less vulnerable to hacking attacks or malware that could steal private keys and compromise funds.

In addition, air-gapped hardware wallets typically require users to physically sign transactions using the device’s buttons and screen, which provides an additional layer of security against unauthorized transactions. This makes it much more difficult for attackers to manipulate transactions or steal funds.

However, air-gapped hardware wallets can be more difficult to use than traditional hardware wallets, and may require users to manually transfer funds using a microSD card. This can be time-consuming and cumbersome, and may not be practical for all users. For example, ColdCard uses PSBTs (partially signed bitcoin transaction 1) to broadcast transactions, but a microSD card is needed to complete this process. Alternatively, you can use your cell phone and USB-C OTG adapter to a USB microSD adapter and create the PSBT on your phone, copy it to the SD card, sign it on the ColdCard and broadcast the transaction from your phone. However, connecting cables defeats the purpose of the air-gapped environment.

The choice between a traditional hardware wallet and an air-gapped hardware wallet will depend on the specific needs and preferences of the user. For users who prioritize maximum security and are willing to take the extra steps necessary to ensure it, an air-gapped hardware wallet may be the best choice. For others, a traditional hardware wallet may provide a good balance of security and convenience.

Air-gapped Software vs Hardware Wallet

An air-gapped software wallet setup involves creating a wallet on a computer that is not connected to the internet and is physically isolated from other devices, similar to an air-gapped hardware wallet setup. However, instead of storing the private keys on a hardware device, the private keys are stored in the software on the air-gapped computer.

To create an air-gapped software wallet, the user typically downloads a wallet application onto an offline computer and generates a new wallet address. They then transfer the public address to a separate device that is connected to the internet, and use that device to send funds to the new wallet address. To spend funds from the wallet, the user generates a transaction on the offline computer and transfers it to the online device via a USB drive or other physical transfer method. They can then broadcast the transaction to the network from the online device.

The main advantage of an air-gapped software wallet setup is that it can be easier and less expensive to set up than an air-gapped hardware wallet, as it does not require the purchase of a separate hardware device. However, there are some potential disadvantages to using an air-gapped software wallet, including:

  1. Increased vulnerability to malware: While an air-gapped computer may be less vulnerable to online attacks, it is still possible for malware to be introduced to the system via physical transfer methods like USB drives. This could potentially compromise the security of the private keys and lead to loss of funds.
  2. Lack of physical security: Unlike a hardware wallet, which stores the private keys on a separate physical device, an air-gapped software wallet relies on the security of the offline computer to protect the private keys. This means that if the computer is stolen or physically compromised in some way, the private keys could be at risk.

While an air-gapped software wallet can be a viable option for users who want to store their funds offline, it is generally considered to be less secure than an air-gapped hardware wallet setup, which provides an additional layer of physical security for the private keys.

DIY Air-gapped Hardware Wallet

DIY air-gapped hardware wallets are considered the ultimate security setup compared to consumer air-gapped hardware wallets or consumer hardware wallets for several reasons:

  1. One of the biggest advantages of a DIY air-gapped hardware wallet is that you can source the hardware components from trusted suppliers and build the wallet yourself, rather than having to trust a third-party company to manufacture and ship a pre-built wallet to you. This can help to reduce the risk of supply chain attacks or other forms of tampering that could compromise the security of the wallet. This can provide an additional layer of security and peace of mind for users who are concerned about the integrity of their hardware wallet. Furthermore, building the wallet yourself also gives you complete control over the entire process, from selecting the hardware components to assembling and testing the final product. This can help you to ensure that the wallet is set up and configured correctly, and can also give you a deeper understanding of how the wallet works and how to troubleshoot any issues that may arise.
  2. Privacy: DIY air-gapped hardware wallets are not dependent on third-party service providers, which means that there is no risk of sensitive transaction data being leaked or compromised. This provides an additional layer of privacy and security for users who value anonymity. However, DIY air-gapped hardware wallets do require a higher level of technical knowledge and expertise to set up and use properly, which can be a barrier to entry for some users. They also require a greater time commitment to build and maintain, which may not be practical for all users.

Consumer air-gapped hardware wallets and consumer hardware wallets are designed for ease of use and convenience, which makes them a popular choice for many users. They typically come with pre-built security features that are designed to protect against most common attack vectors, and are generally easier to set up and use than DIY alternatives.

In the end, the choice between a DIY air-gapped hardware wallet, a consumer air-gapped hardware wallet, or a consumer hardware wallet will depend on the specific needs and preferences of the user. For users who prioritize maximum security and are willing to invest the time and effort required to build and maintain a custom solution, a DIY air-gapped hardware wallet may be the best choice. For others, a pre-built consumer wallet may provide a good balance of security and convenience.

User Error

No matter how secure you think you’re setup is, if you don’t learn about how to use, update, and back it up properly you can lose access to your funds. Wallets can be prone to user error because they require users to perform certain tasks in order to ensure the security of their holdings. If these tasks are not performed correctly, it can result in the loss of funds.

Some common user errors associated with wallets include:

  1. Failure to properly backup seed phrases: Seed phrases are used to recover the private keys associated with a hardware wallet if it is lost, damaged, or stolen. If a user fails to properly backup their seed phrase, or stores it in an insecure location, they may not be able to recover their funds in the event of a problem.
  2. Failure to update firmware: Hardware wallet manufacturers frequently release firmware updates to address security vulnerabilities or add new features. If a user fails to update their firmware, their wallet may be more vulnerable to attack.
  3. Failure to properly verify transactions: Hardware wallets typically require users to verify transactions using the device’s screen and buttons. If a user fails to carefully review transaction details or approve a fraudulent transaction, they may inadvertently send funds to an attacker.
  4. Physical damage or loss: Hardware wallets are physical devices that can be damaged, lost, or stolen. If a user does not take proper care of their wallet, or fails to store it in a secure location, they may lose access to their funds.

It’s important for users to carefully read and follow instructions provided by the wallet upon seed creation, and to take the necessary precautions to ensure the security of their funds.

Backing Up – Seed Storage

A bitcoin mnemonic phrase (AKA seed phrase or recovery phrase) consists of 12 or 24 words which can be used to restore your funds if the wallet’s device is lost. Software wallets provide 12 words which have 128-bit entropy and hardware wallets provide 24 words which are 256-bit entropy. As long as the seed is properly generated2, there is no difference in terms of security because bitcoin itself targets the 128-bit security level. A useful reason to use a 24 word seed would be splitting up your written backup into two parts with both required to restore funds. If an attacker obtained one of the word lists, they would still be insurmountable 128-bit security.

If you’re using a BIP39 compatible wallet then you can input the seed into any wallet which supports BIP39.

The best ways to backup your seed include:

  1. Write it down: The most common and recommended way to backup your mnemonic phrase is to write it down on a piece of paper or other physical medium. Make sure to write it legibly, and store it in a secure location such as a safe or a lockbox. It’s also a good idea to make multiple copies and store them in different locations.
  2. Use a metal backup: You can also use a metal backup, which is a small metal plate that is etched with your mnemonic phrase. Metal backups are highly durable and can provide additional protection against physical damage or destruction. Again, make sure to store your metal backup in a secure location.
  3. Use a passphrase3: You can add an additional layer of security to your mnemonic phrase by using a passphrase which is highly recommended. A passphrase is a word or phrase that you add to your mnemonic phrase when you set up your BIP39 wallet. Keep in mind when adding a passphrase to a BIP39 generated seed you are creating a new wallet. So in theory, if an attacker found your seed and tried restoring funds there would be no balance because it is a separate wallet.
  4. Non-cryptographic split. You can split up the words and spread them out geographically.
  5. Cryptographic split: You can split your mnemonic phrase into multiple parts using a cryptographic technique called Shamir’s Secret Sharing. This allows you to store the different parts in different locations or with different people, so no single person or location has access to your entire backup. This can provide an additional layer of security against theft or loss.
  6. QR codes: You can also store your mnemonic phrase as a series of QR codes. This allows you to easily scan the codes using a smartphone or other device to recover your backup. Make sure to store the QR codes in a secure location to prevent unauthorized access. Some wallets nowadays allow users to export their seed into QR format, and even encrypt it.

It's important to remember that your mnemonic phrase is the key to access your bitcoin wallet, so it's essential to keep it safe and secure. Always take precautions to protect your backup, and NEVER SHARE YOUR MNEMONIC PHRASE WITH ANYONE ELSE!


  1. Partially signed bitcoin transactions are the most common way to send coins with air-gapped hardware wallets. The way it works is using QR codes, where device #1 partially signs the transaction. Then device #2 completes the transaction by providing the necessary amount of signatures necessary for the transaction to process and get broadcasted to the network. ↩︎

  2. When using a FOSS bitcoin wallet and creating the seed it is generated client-side(user wallet), not server-side(wallet provider), which means only that device receives the seed information. Even better is to complete this process offline. ↩︎

  3. When creating a passphrase ensure it is a strong passphrase. Make it a decent length with capital and lower case letters, special characters, etc. so it is impossible to brute force if found. Spaces are accepted as a character. ↩︎