River Intelligence

Sign up for our curated weekly newsletter delivering exclusive market insights to your inbox.

Build your Bitcoin wealth with River

green checkmark

No-fee recurring buys

green checkmark

Bitcoin mining

green checkmark

Phone support


Bech32m is a modified version of the Bech32 encoding scheme, which is used to encode SegWit addresses. Bech32m is nearly identical to Bech32: it is an encoding scheme with 32 characters; it uses only lowercase letters; and it begins with a human readable part, which is ‘bc1’ for SegWit addresses.

Bech32 has an error detection mechanism built in, which is meant to detect alterations to Bech32-encoded data. However, the original Bech32 implementation had a vulnerability in this mechanism, allowing an attacker to change an address without invalidating the checksum. When a Bech32 string ends with a “p”, adding or removing “q"s before the “p” does not invalidate it. Bech32m removes this vulnerability by changing a constant used in the encoding scheme, and is thus more secure.

As specified in BIP 350, Bech32m is proposed as the encoding scheme for SegWit version 1 (Taproot) addresses, which will be introduced by the Taproot upgrade.

Learn more about the Taproot upgrade.