Bitcoin addresses

The differences between each of the existing types

A public Bitcoin address is an identifier of alphanumeric characters that represents a possible destination for a bitcoin payment.

In the beginning, the Bitcoin client used a system of randomly generated keys, which means that each of the public addresses where a user can receive their coins has a different private key that enables the use of them. This forces the user to keep a completely random private key for each address they want to use.

In order to simplify the generation of multiple public addresses from a single private key, the BIP32 standard was proposed and, the following year, the BIP39 standard was released, which describes the generation of a private key from a series of easy-to-remember words.

From this moment onwards, we have the bases of what we know today as “seed”, a series of 12 (or 24) words that allow us to use the funds we have in multiple directions and through different wallets (as long as the wallets follow the standard).

Today, three types of Bitcoin addresses are in use:

P2PKH addresses

Legacy or Pay-to-Public-Key-Hash addresses are the most common version of addresses as they are one of the first types introduced. They are currently one of the address types that require highest network fees for their use and do not allow the use of scripts, so their use is not recommended.

According to the BIP32 derivation standard, the derivation path is m/44'/0'/0'/0.

They can be identified because starts with 1, for example: 1DuTR2VM4usiyY1ryVa3JpmrdduB4G8j9N.

P2SH addresses

Also known as Nested Segwit, these were the first addresses to allow the use of scripts, giving them the name “Pay-to-Script-Hash”. Enables the use of certain conditions for the use of funds (such as multi-signature addresses) and allows the payment of cheaper network fees compared to P2PKH (around 25%).

According to the BIP32 derivation standard, the derivation path is m/49'/0'/0'/0.

They can be identified because starts with 3, for example: 36Q71fuutxJXna3w2PxbPyqqZNswYLXAoS.

P2WPKH addresses

This type of addresses P2WPKH (“Pay-to-Witness-Public-Key-Hash”), also known as Segwit Native or bech32, allows the use of more complex scripts than the previous one. Moreover, thanks to the fact that this type of address leaves the signature and the script outside the transaction, its size is even smaller (around 35%), reducing network fees.

According to the BIP32 derivation standard, the derivation path is m/84'/0'/0'/0.

They can be identified because starts with bc1q, for example: bc1qgha0ysss6jjqnxzpyzhygh3g3gsut7a4yml4tw.

P2TR addresses

With the arrival of the update known as Taproot at the end of 2021 a new type addresses were introduced, “Pay-to-Taproot”. Both privacy and the complexity of the scripts that can be defined for the use of funds were improved. Regarding network fees with the use of this addresses, significant savings will only be experienced with the use of complex scripts.

According to the BIP32 derivation standard, the derivation path is m/86'/0'/0'/0.

They can be identified because starts with bc1p, for example: bc1pnffryyndurmk5yh38ykl5xcr4g3ev6c0ltc31g.

References

<2022>

More pills

> Killing the wallet

Things by their name

> Bitcoin chain analysis

How to protect your privacy when using Bitcoin

> What is Ethereum 2.0

Road to 64 blockchains