Also covering Bech32, Bech32m, BIP173, and Native segwit address

Bech32 and Bech32m are address formats used to pay native segwit outputs.

Using only 32 letters and numbers, the bech32 address format does not use mixed case and includes an error-correction code that can catch almost all address typos (and even identify where the typos occur in some cases). Addresses encode a segwit version, making them forward compatible with a large range of conceivable upgrades.

After a problem was discovered with bech32 error detection for future upgrades under some rare circumstances, a new bech32 modified (bech32m) format was proposed. It is expected that bech32m will be used for taproot and future segwit-based script upgrades, requiring wallets and services that implemented support for paying the original bech32 address format to upgrade if they want to support paying taproot addresses and future upgrades. No upgrade is required to continue paying the original (version 0) segwit addresses for P2WPKH and P2WSH scripts.

Primary code and documentation

Optech newsletter and website mentions

2022

2021

2020

2019

2018

See also

Previous Topic:
Basic Bitcoin Lisp Language (bll)

Next Topic:
BIP70 payment protocol

Edit page
Report Issue