Bitcoin Addresses and How to Use them by SatoshiLabs | Nov, 2020

In the pursuit of better technology, things get a bit messy along the way. While the way Bitcoin addresses are formatted has changed quite a bit, it is actually not something that the average person needs to care about. Bitcoin has used different standards over the years leaving a few standards in use at the same time, making the complex string of character even more intimidating than it needs to be.

The different types of Bitcoin address are generally cross-compatible, meaning you can send from one type to another. If you come across a problem when sending to a certain type of address, your problem is probably your wallet client. Try to update or upgrade a wallet that supports the latest address types described in the next section.

Generally, the wallet client you use should manage addresses for you, and should never let you send to an invalid address. However, support for third-party wallet clients can be patchy. The Trezor Suite app, recently launched in public beta, will protect you from sending to an invalid address, support all common address types, and also ensure you don’t overpay fees, a common issue in other popular wallets, especially during busy periods like the one that Bitcoin is currently experiencing.

Most of the time, you’ll want to use a Segwit Native address (called Bech32), which always starts with the characters bc1. This type of address is best used whenever possible because it is more efficient in how it uses data to complete a transaction, resulting in a lower fee, as fees are calculated in satoshis per byte of data.

A. Native Segwit Bech 32 address looks like this:


Unfortunately, the Bech32 format is still not supported everywhere. A more widely available address to use is the ‘pay to hash script’ (P2SH) address, also known as the SegWit Nested address. This is also more efficient than the legacy address type, in terms of fees, and can be specified because it starts with the number 3. If you are unsure whether the address you want to send is in support of SegWit or not, the Segwit Nested address will work most often.

A. SegWit P2SH address looks like this:


If you’re sending from an older wallet, you may be using the original ‘pay to key hash key’ (P2PKH) address, known as a legacy address because they are considered surplus from earlier technology. These are generally more expensive in terms of fees, but they are still common. You can tell if an address is a legacy address because it starts with the number 1.

A. P2PKH Legacy address looks like this:


Always check the address you are sending to, to make sure it is not tampered with. While the main characters help determine what type of address it is, the direction length also changes depending on the type of address. There are 42 characters in a Bech32 address – the most modern type of address – and 34 characters in P2SH and P2PKH addresses.

light melting morning surprise mom surprised beefy lens lens genuine inquiry

From your seed, you can create a valid bitcoin receipt address of any kind for your needs, provided you have the right wallet interface. Using Trezor Suite, you can generate any of the three address types listed above in just a couple of clicks.

Add a new type of account via the sidebar menu on the Accounts page

Because of how Bitcoin has developed, improving over time, you will find that addresses are backwards compatible. Bech32 can send to P2SH or P2PKH address without worrying about anything. It’s also possible to send from a legacy address to Bech32, but there can be problems because older wallet clients who use legacy addresses often don’t recognize Bech32 or P2SH addresses as valid, so don’t let you send, though it would ‘ The transaction is likely. going through. This is simply an outdated defensive mechanism that rejects invalid addresses but has not updated its definitions of what is valid.

When in doubt, a legacy address provides maximum peace of mind and is widely supported. While you can be limited by the client you are using, if it lets you sign and send the transaction, you have nothing to worry about. Bitcoin addresses are cross-compatible and all types should be able to send together. For more flexibility and less confusion, upgrade to Trezor Suite, where you have full control over the types of addresses you use.

If you have a Trezor hardware wallet, you can use the Trezor Suite desktop application to create and manage your bitcoin addresses, which use the seed created on your own Trezor device, which means there’s no chance someone else has seen it your seed and can duplicate your wallet. You can also easily generate and verify a new address for each transaction directly in Suite.

As you can see, we are using a Bech32 address that starts in bc1, but unless the sender also uses a Bech32 or P2SH address, they will not be able to take advantage of the lower fees that SegWit enables. Always send from Bech32 address where possible to save on transaction fees.

If this is your first time receiving a transaction, it is recommended to send a test transaction before moving all your funds. This may seem overly cautious as the technology is reliable but, for beginners, it can help offset any uncertainty. Try sending a few satoshis to prove your receipt address, and wait for it to confirm before you make a larger transaction.

Once you have identified an address, say how much you want to send and a fee you are prepared to pay. A higher fee will encourage miners to give your transaction more priority and should complete faster. In the screenshot below, we use the highest fee suggested by Trezor Suite to achieve a 10-minute confirmation time, the fastest the Bitcoin network as a whole can do.

Always check that the fee you pay is reasonable. Some wallets that automatically suggest fees greatly overestimate it. You should never have to pay more than a few dollars in fees even during busy periods. If the fee suggested by the wallet client you are using seems too high, look for an option to specify a custom fee and set it based on your needs. A number of tools exist on the internet to let you see the current fees that other users pay, such as the second chart on this site. As you can see below, most transactions are set well below 50 sat / byte, so a transaction should confirm within 10 minutes if sent in the 51 sat / byte suggested by Trezor Suite.

The sad reality is that while many wallet clients do a good job of identifying valid addresses, there are still instances where a user has sent to the wrong type of address, such as sending Bitcoin to a Litecoin address, some wallet clients do not does. be able to hold. In this case, the network will not be able to distinguish the transactions separately as they are both considered valid from the wallet perspective. The chances of recovering your coins in this situation depend on the type of network to which the transaction was sent. In some cases, as with Litecoin, you should be able to recover the coins as long as you also own the private key to the receiving address, even if it’s a Litecoin address. Without a private key, however, the chance of recovery is low, if not zero. If this has happened, you may have to cut your losses and move to a better supported wallet interface.