What is a bitcoin address?
A bitcoin address is a unique identifier of our wallet that will be used to send and receive transactions.
Addresses, also called public keys, are analogous to the CBU of the banking system. When we want someone to send us BTC, we must send them our address or show the QR code that represents it. There are different types of addresses that have emerged over the years, but in general they look something like this:
Characteristics of bitcoin addresses
free and free
Addresses are free and there are no limits to how many we can have. Moreover , there are certain wallets that automatically create a new address for us every time we receive a transaction to improve our privacy. We will talk about that later. The requirements to obtain a wallet are minimal, we only need to download an application on the phone or on the computer.
- Private and transparent
All movements associated with our address are publicly recorded on the blockchain. Through a block explorer , we can easily see the current balance and all the transactions that an address has made. By default the addresses are anonymous since they are not tied to our identity. However, we have to be aware that by sharing it we are giving anyone the power to see our movements.
For that reason, some wallets create a new address for us every time we receive funds. Thus, if someone searches for it in a block explorer, they will only be able to see a small part of our movements.
Different types of Bitcoin addresses
- Legacy addresses (P2PKH)
These are the original Bitcoin protocol addresses and they are still up and running. They are called Pay to Public Key Hash (P2PKH) since they are derived by passing the public key through a hash function. Legacy addresses can be identified as they start with a 1.
- Multisig addresses (P2SH)
These addresses are used to create multisig wallets , i.e. addresses that are controlled by more than one wallet. The name Pay to Script Hash (P2SH) means that a script (or a program) is paid instead of a simple address. This program is the one that allows more flexibility for these types of addresses, which is why they are used to create Lightning Network channels . These multisig are identified because they start with a 3.
- SegWit Addresses (Bech 32)
SegWit addresses were implemented in 2017 after a long debate within the Bitcoin community. The name comes from Segregated Witness and refers to the fact that the signing of the transactions is separated or segregated from the main structure. This makes transactions using SegWit addresses cheaper because they take up less space on the blockchain. We can identify these addresses because they start with bc1.
- Taproot addresses (P2TR)
The latest Bitcoin update last year brought a new type of addresses called Pay to Taproot. These have the same programmability as multisig addresses but with an advantage, the transactions look the same as regular ones. Using Taproot, there is no way to distinguish a multisig transaction from a conventional one. This, apart from bringing more privacy to the network, improves scalability because complex transactions take up less space on the blockchain. Taproot addresses start with bc1p.
How is a bitcoin address created?
For a user, creating an address is as simple as downloading a wallet . But what happens behind? The process to obtain a bitcoin address can vary from wallet to wallet, below we will describe the standard imposed by the Bitcoin Improvement Proposal 39 (BIP-39).
The first step in creating a bitcoin address is to obtain a random binary number. This will be separated into 12 different numbers and each one will correspond to a pre-established list of 2048 words. This is called a seed phrase or recovery phrase, and it looks like this:
witch collapse practice feed shame open despair creek road again ice least
The seed phrase is going to be used to generate the private key, which is usually displayed in hexadecimal format.
It would be something like this:
This private key is passed through an elliptic curve algorithm to obtain the public key. The process to go from private to public key is simple, but the opposite is almost impossible. That is why it is safe to share our public key without fear that our funds may be stolen.
Once the public key is obtained, it is passed through a hash function to finally obtain the address. So, although they are sometimes used synonymously, the public key is not the same as the address.
Example of an address:
So how can I find out my bitcoin address?
Any wallet should show us our address when wanting to receive a transaction. It may appear under the “Receive” or “Deposit” tab. Some wallets let us choose if we want to make the deposit to a Legacy or SegWit address . As we said before, SegWit transactions are a bit cheaper.
It is worth clarifying that, although every time we want to make a transaction our wallet shows us a different address, all the previous ones are still valid. In other words, if we send BTC to an old address, it will also arrive.
In short, a bitcoin address is a set of numbers and letters that identifies our wallet and allows us to receive BTC. The addresses are free and not tied to our identity, but the movements are publicly saved on the blockchain. There are different types of current addresses in the Bitcoin network, each one has its characteristics and functions.
To obtain an address you must first go through a seed phrase , private key, public key. Although as users we do not have to know that process, we only interact with the seed phrase and the address.