What is a Bitcoin wallet?

TL;DR: Bitcoin operates without human intervention, providing censorship resistance and preventing corruption. To interact with the Bitcoin network, you need a Bitcoin wallet, which manages and controls your funds. Although called a wallet, it does not actually hold your funds but rather facilitates transactions and secures your private key. When sending or receiving bitcoin, the wallet communicates with the network through a protocol, assembles transactions, and calculates cryptographic signatures to ensure security. Additionally, a wallet creates Bitcoin addresses, locates spendable coins on the ledger, and computes the total value of your holdings to display your balance.

With Bitcoin, there are no humans involved. This is the core of its censorship resistance; any human involvement could become corrupt and interfere with your money. For us to not have to trust any humans, Satoshi devised a way to have Bitcoin controlled by the consensus of all its participants rather than a small group of people. That consensus is organized by software running on the nodes of the Bitcoin network.

You can communicate with the Bitcoin network directly by running software like a Bitcoin wallet, which is used to observe and control the flow of your money. The term wallet is a bit misleading, however, because unlike a common wallet, it does not actually hold your funds. Bitcoin is a completely new system, and contains many novel and unique ideas, so most analogies will fail sooner or later. Wallet fails sooner, so in order to get away from this imperfect analogy, let's find out what a Bitcoin wallet actually is and what it does.

Whether you want to transmit or receive bitcoin, or just check the amount of bitcoin you own, you always need to send an appropriate request to the Bitcoin network. The computers that make up the network, or nodes, communicate with each other using a set of communication standards, which is called a protocol in computer lingo. If you want to send bitcoin to someone, then you need to assemble a transaction, which is somewhat analogous to filling out a wire transfer form, in that you specify the amount of money to send, where the money is coming from and where it is going.

Since the Bitcoin network is open, pseudonymous and permissionless, anyone can send any request to the network. That means that without certain safeguards, anyone could spend your money. But fear not, such protections were built into Bitcoin from day one. Just like in the real world, in Bitcoin you need to sign whatever you want your financial service to do. In the banking sector, we are used to actual signatures using a pen. Instead, Bitcoin uses cryptographic signatures derived from your private key for this purpose.

We have now learned several functions a wallet must perform, so that you can send bitcoin across the globe, talk to the Bitcoin protocol, calculate cryptographic signatures, create transactions, and securely store and access your private key.

Receiving bitcoin also involves an additional set of wallet functions, such as creating Bitcoin addresses derived from the private key and searching the Bitcoin ledger to find spendable coins. The wallet must also calculate the total value of your coins to display your balance.