A Comprehensive Guide To Bitcoin Address Types ๐Ÿšจ

A Comprehensive Guide To Bitcoin Address Types ๐Ÿšจ

What address type should you use to send and receive Bitcoin? ๐Ÿค”

ยท

3 min read

Getting Started ๐Ÿ•น

Bitcoin has evolved over time and so have the bitcoin addresses. With new services and protocols coming each day there are a few address types in use, making the complex strings of random characters even more intimidating than they need to be. Let's try to simplify them! ๐Ÿคธ

The first and the most basic question which comes to our mind is - can we send bitcoins to any address type? or are we gonna lose funds?

The different types of bitcoin addresses are mostly cross-compatible which means that you can send bitcoin from one address type to another. If you face a problem when sending to a certain address type, it is probably your wallet client that has some problem, or an issue with the service you are using. You can try upgrading your wallet to the latest version to support new address types as described in the next section.

Different Address Types ๐Ÿง—โ€โ™‚๏ธ

There are mainly 4 types of addresses: Taproot, Segwit, Legacy Segwit & Legacy.

Taproot Address:

In November 2021, a major upgrade known as Taproot was introduced to Bitcoin. This brought another new address format into play: P2TR, pay-to-Taproot. Taproot provides the ability to use Schnorr Signatures, offering better security, lower fees, and more flexible multi-key transactions. Taproot addresses begin with the characters bc1p. Taproot is technically an upgraded version of Segwit, and its addresses are encoded using a modified version of bech32 known as bech32m. ๐ŸŒค

A Taproot Bech32m address looks like this:

bc1p8denc9m4sqe9hluasrvxkkdqgkydrk5ctxre5nkk4qwdvefn0sdsc6eqxe

Segwit Address:

Segwit is also one of the major updates in bitcoin solving the problem of transaction malleability. It paved the way for the Lightning Network and other layer-2 protocols. Segwit address (P2WPKH, encoded as Bech32) always begins with the characters bc1q. This type of address is now widely supported and can prevent problems when transacting with an exchange or service that doesn't yet properly support Taproot. ๐ŸŒฆ

A Segwit Bech32 address looks like this:

bc1qyvs3wwgr4x88ec3pjdf4xnwrgghq8whmmy5q0j

Legacy Segwit Address:

Unfortunately, Segwit is still not supported everywhere so a hybrid version of Segwit was created to make the script readable as both a โ€˜pay to script hashโ€™ (P2SH) as well as a โ€˜pay to witness key hashโ€™ (P2WPKH), now known as a Legacy SegWit (P2SH-P2WPKH) address encoded in base 58. This can be more efficient than the legacy address type, from a fee point of view, and can be identified because it starts with the number 3. If you are unsure if the address you want to send to supports SegWit or not, a Legacy Segwit address will most often work. ๐ŸŒช

A Legacy SegWit P2SH-P2WPKH address looks like this:

33o9h1Vo6ghGRJPSW1edAsogWyNU2ypFv7

Legacy Address:

Legacy addresses are the oldest address types used in bitcoin. They are generated from the hash of public key also called as โ€˜pay to public key hashโ€™ (P2PKH) address. These are generally more expensive with regards to fees, but are still fairly common. You can tell if an address is a legacy address because it starts with the number 1. ๐ŸŒจ

A Legacy P2PKH address looks like this:

1Aais5SFub9MsLNPKFU7Aufroi4QebSiHC

Which address is the best for me?

You should prefer using native segwit or taproot addresses to save fees and for improved security. ๐ŸŒˆ Almost 85% of transactions happening on the bitcoin network now are segwit enabled as seen in the graph below: Screenshot from 2022-06-19 16-05-28.png

Follow Rishabh's blog to know more about Segwit.

Thanks for reading! Cheers! ๐Ÿ‚