Bech32 adoption

From Bitcoin Wiki
Revision as of 18:28, 17 August 2022 by Benthecarman (talk | contribs) (LND has launched taproot support which uses this library)
Jump to navigation Jump to search

Bech32 is a bitcoin address format specified by BIP 0173. It is used for the native segwit version 0 output types, P2WPKH and P2WSH. The upcoming Taproot softfork will add another output type called Pay to Taproot (P2TR). P2TR outputs and future native segwit versions will be using an updated variant of Bech32, called Bech32m (specified by BIP 0350). This page tracks the adoption of Bech32 and Bech32m.

Ideally wallets and services would first support sending to new addresses. When most wallets and services support sending to the new address type, people are more likely to adopt it for receiving.

The amount of bech32 addresses on the blockchain is tracked on this website: https://p2sh.info/dashboard/db/bech32-statistics?orgId=1

No
?? Maybe / Haven't checked / placeholder
Planned The developers said they plan to
PR Merged In the case of software, code has been written and merged, and it will be in next release.
Yes Feature has been released

Software Wallets

Name Send to Bech32 Receive to P2WPKH/P2WSH Send to Bech32m Receive to P2TR Notes
Armory Yes No Planned around activation ??
AQUA Yes Yes ?? ??
bcoin Yes Yes Since 2.2.0 ??
Bisq Yes Yes Dependent on BitcoinJ ?? As of v1.5.0 https://bisq.network/blog/bisq-v1.5.0-highlights/
Bitcoin Core Since 0.16.0 Since 0.16.0 Since 0.21.1 Since 22.0 Uses P2WPKH as default address since version 0.20.0. Creating P2TR addresses requires manual import for now.
Bitcoin Knots Since 0.16.0 Since 0.16.0 Since 0.21.1 Since 22.0
Blockstream Green Yes Yes Since Mobile 3.7.6+, Desktop 1.0.4+ Planned Bech32m sending support as of GDK 0.0.47
Breadwallet Yes Yes ?? ?? https://www.reddit.com/r/BRDapp/comments/9xx1hq/as_of_today_brd_fully_supports_native_segwit/
Bitcoin Wallet for Android Yes Yes Since 9.0 ??
BlueWallet Yes Yes Since 6.2.14 ??
Breez Yes Yes Planned ??
BTC.com Yes No ?? ??
Caravan Yes Yes Planned ??
Casa Yes No Yes Planned
C-Lightning Yes Yes Yes ??
Coinomi Yes Yes ?? ?? reddit source
Electrum Yes Yes Since 4.1.0 Planned: Descriptor-based keypath spends https://github.com/spesmilo/electrum/issues/7544
Exodus Yes Yes Yes Not yet planned https://support.exodus.com/article/1480-bitcoin-faqs-learn-more-about-btc#
Fully Noded Yes Yes Yes Since v0.2.26 https://twitter.com/FullyNoded/status/1438652812410298370
Guarda Wallet Yes No ?? ?? twitter announcement
JoinMarket Yes Yes Since v0.9.5 ??
LND Yes Yes Since v0.15 Since v0.15 The coming LND v0.15 release will introduce full P2TR support including scriptpath spends, PSBT signing, and a MuSig2 API.
Muun Yes Yes Yes Yes https://twitter.com/MuunWallet/status/1459294066135474177
Mycelium Yes Yes ?? ??
Nunchuk Yes Yes Yes Yes https://twitter.com/nunchuk_io/status/1511365917808103426
Phoenix Yes Yes Yes ??
Samourai Wallet Yes Yes Since v0.99.98 Currently not planned https://twitter.com/SamouraiWallet/status/1415788631491497985?s=20
Sparrow Wallet Yes Yes Yes Yes https://twitter.com/SparrowWallet/status/1415632270434705408
Specter Wallet Yes Yes Yes Yes https://twitter.com/_benkaufman/status/1431293856675508228
Trust Wallet Yes Yes Yes Not planned https://github.com/trustwallet/wallet-core/releases/tag/2.6.5, https://twitter.com/catenocrypt/status/1520152930065817601
Uniblow Yes Yes Since v1.2.2 Not yet planned release1.2.2
Wallet of Satoshi Yes Yes Yes ?? https://twitter.com/walletofsatoshi/status/1459782761472872451
Wasabi Wallet Yes Yes Since Wasabi 2.0 Planned: via NBitcoin https://twitter.com/NicolasDorier/status/1413693010236170241
https://mempool.space/testnet/tx/05a23151b6ad114fb71e851147861d6c992a438ad4f62d6f0749bc9f200ef254

Hardware Wallets

Hardware wallet manufacturers typically publish a web wallet or browser add-on wallet for use with their hardware. Users can also sometimes connect their hardware wallet to a software wallet like Electrum.

Name Send to Bech32 Receive to P2WPKH/P2WSH Send to Bech32m Receive to P2TR Notes
Trezor + Trezor Suite Yes Yes Yes Yes since Trezor Suite 21.12.2 + Trezor Firmware 1.10.4 (Model One) / 2.4.3 (Model T)
Ledger Live (desktop app) Yes Yes Yes Yes Ledger Live Desktop 2.35 + Bitcoin App 2.0.0, Ledger Live Mobile support TBD. https://blockstream.info/tx/41d46e6f6e58a325eb6c913aa603f4db313f4a1db0649952f06fe2cd70546451
KeepKey chrome app No No ?? ??
BitBox Desktop app Yes Yes Yes Yes https://twitter.com/_benma_/status/1504455969631350792
Trezor + Electrum Yes Yes Yes Planned
Ledger + Electrum Yes Yes ?? ??
BitBox + Electrum Yes Yes Yes ?? https://twitter.com/_benma_/status/1504458280000761857
KeepKey + Electrum Yes Yes ?? ??
Archos + Electrum Yes Yes ?? ??
Coldcard + Electrum Yes Yes Yes Planned Work already in progress
Ballet + app Yes Yes ?? ??
SeedSigner Yes Yes Planned ??
Tangem + app Yes Yes ?? ??
Blockstream Jade + Blockstream Green Yes Yes Yes Planned Bech32m sending support as of GDK 0.0.47 available via Blockstream Green mobile apps 3.7.6+ and desktop app 1.0.4+
Keystone Yes Yes, but only with BTC-only firmware Planned for Q1 2022 Evaluating https://twitter.com/KeystoneWallet/status/1460110906789031938

Web Wallets / Wallet Service Providers

Name Send to Bech32 Receive to P2WPKH/P2WSH Send to Bech32m Receive to P2TR Notes
Bitcoin Beach Wallet Yes Yes Yes No https://twitter.com/nicolasburtey/status/1556659398365401088
Coinapult ?? No ?? ??
Coin.Space ?? No ?? ??
BitGo Yes Yes Yes Yes Full native segwit support on v2 platform, no plans to add native segwit support on v1 platform. Also see: https://blog.bitgo.com/native-segwit-addresses-via-bitgos-api-4946f2007be9, Taproot: https://blog.bitgo.com/taproot-support-for-bitgo-wallets-9ed97f412460
Bitnob Yes Yes Yes Yes https://twitter.com/bernard_parah/status/1469962690483400706
blockchain.com web Yes Yes Planned ?? https://twitter.com/Pellicceama/status/1436324051803414535
Fireblocks Yes Yes Nov 18, 2021 Planned for 2022
HolyTransaction Yes No Yes ??
Coinb.in Yes Yes ?? ?? open source JavaScript implementation
Guarda Wallet Yes No ?? ?? https://twitter.com/GuardaWallet/status/1194270398730448896

Exchanges

Name Send to Bech32 Receive to P2WPKH/P2WSH Send to Bech32m Receive to P2TR Notes
1Fox Yes No ?? ?? https://1fox.com/?c=en/content/blog&id=12
AgoraDesk Yes Yes Yes Yes
Anycoin Direct Yes No ?? ?? https://anycoindirect.eu/en/news/details/segwit-activated
Binance Yes Yes No No https://twitter.com/colemaktypo/status/1460337599499882502
Bitaroo Yes Yes Yes No
BitBargain.co.uk Yes No ?? ??
Bitcoin.de Yes No No No https://twitter.com/Ben_deWaal/status/1460464528181936130
Bitfinex Yes No Planned No https://twitter.com/paoloardoino/status/1460620727342796800
BitMEX Yes Yes Yes ?? https://twitter.com/BitMEXResearch/status/1492152557044654082
Bitonic Yes ?? No ?? https://twitter.com/BitcoinenNL/status/1460284373291384833
Bitpanda Yes ?? Yes ?? https://twitter.com/christiant5r/status/1461369956252139520
Bittrex No No ?? ?? https://www.reddit.com/r/Bitcoin/comments/gqt1m6/bittrex_does_not_even_support_withdrawals_to/
Bittylicious Yes No ?? ?? https://twitter.com/Bittylicious_/status/998881327347888128
Bitstamp Yes Yes Planned ?? https://www.bitstamp.net/article/weve-added-support-bech32-bitcoin-addresses-bitsta/
Bitso Yes No ?? ?? https://twitter.com/Bitso/status/1203784055340314624
Bitwage ?? No ?? ??
Bitwala Yes Yes ?? ??
Bottlepay Yes Yes No ?? https://help.bottlepay.com/en/articles/4909780-what-bitcoin-addresses-do-you-support-for-on-chain-withdrawals, https://twitter.com/Stack_Russel_UK/status/1460330265751044097
BSDEX Yes No Yes No
Bull Bitcoin Yes Yes Yes Planned https://twitter.com/francispouliot_/status/1464264391155666950
CardCoins.co Yes No deposits Yes No deposits https://twitter.com/CardCoinsCo/status/1452680654030872589
CEX.IO No No ?? ??
Coinbase.com Yes No Not a priority currently No
CoinCorner Yes Yes Yes ?? https://twitter.com/CoinCorner/status/1461360995746545667
CoinFalcon Yes No ?? ??
Coinmate.io Yes Yes ?? ?? https://coinmate.io/blog/important-coinmate-update/
Coinsbank.com Yes Yes ?? ??
Coinygram Yes No ?? ??
Flyp.me Yes No Yes ??
FTX US Derivatives Yes Yes Yes ?? Formerly LedgerX
GDax Yes No ?? ?? https://www.reddit.com/r/Bitcoin/comments/8c738k/coinbase_gdax_already_allows_sending_to_bc1/
Gemini Yes Yes No No https://np.reddit.com/r/Bitcoin/comments/b66n0v/psa_gemini_is_full_on_with_native_segwit_and_uses/
Genesis ?? No ?? ??
Globitex No No ?? ??
HitBTC Yes No ?? ??
Hodl Hodl Yes Yes ?? ?? https://medium.com/@hodlhodl/hodl-hodl-segwit-compatible-exchange-a2231968ac56
Independent Reserve Yes No ?? ?? https://www.independentreserve.com/bitcoin/investing
Itbit ?? No ?? ??
Kraken Yes No No No https://twitter.com/murchandamus/status/1460399767830380564
Liberalcoins Yes Yes ?? ?? https://liberalcoins.com
LocalBitcoins Yes No ?? ?? https://twitter.com/LocalBitcoins/status/1322194709159301120
Luno Yes No Planned ?? https://www.luno.com/blog/en/post/luno-launches-support-for-bech32-addresses
Okcoin Yes Yes Yes ?? https://twitter.com/Okcoin/status/1471563103049756672
Paxful.com Yes No ?? ?? https://paxful.com/support/en-us/articles/360011766520-Can-I-Withdraw-Bitcoin-from-Paxful-Wallet-to-My-External-Wallet-
Purse.io Yes Yes ?? ??
Poloniex.com Yes No ?? ?? https://www.reddit.com/r/Bitcoin/comments/a3jhcf/you_can_now_withdraw_from_poloniex_to_bech32/
River.com Yes Yes Planned ??
Robinhood.com Yes ?? No ?? https://robinhood.com/us/en/support/articles/cryptocurrency-wallets/#Supportedaddressformatsforcryptowithdrawals
Square CashApp Yes No Yes ?? https://cash.app/help/us/en-us/20211114-bitcoin-taproot-upgrade
StackinSat.com Yes No deposits Yes No deposits https://twitter.com/StackinSat_FR/status/1500898826416230401
Strike Yes Yes No No https://twitter.com/BTCBoromir/status/1460373287792521232
Swan Yes No deposits Yes No deposits https://twitter.com/SwanBitcoin/status/1468318386916663298
TheRockTrading.com Yes Yes ?? ?? https://twitter.com/TheRockTrading/status/976787499648512003
VBTC Yes Planned Yes Planned https://twitter.com/VBTC_Vietnam/status/1460978196816416775
Walltime Yes Yes ?? ?? https://walltime.info
Xapo Yes No ?? ??

Bitcoin ATM Models

Hopefully when a model updates then all its ATMs everywhere will gain that feature. See https://coinatmradar.com/shop/buy-bitcoin-atm/

Name Send to Bech32 Receive to P2WPKH/P2WSH Send to Bech32m Receive to P2TR Notes
Bitaccess BTM Yes Yes Work in progress Planned https://twitter.com/DylanSeago/status/1520212294898274305
GenesisCoin No No ?? ??
General Bytes Yes Yes ?? ?? Depending on configuration. Since version 20190613 https://www.generalbytes.com/en/support/changelog
Lamassu Yes Yes (optional) Planned ?? https://twitter.com/LamassuBTC/status/1459918440303673349

Blockchain Explorers

To investigate bech32 capability, you can use mainnet TXIDs 4ef47f6eb681d5d9fa2f7e16336cd629303c635e8da51e425b76088be9c8744c and 514a33f1d46179b89e1fea7bbb07b682ab14083a276979f91038369d1a8d689b or look up the addresses bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq and bc1qc7slrfxkknqcq2jevvvkdgvrt8080852dfjewde450xdlk4ugp7szw5tk9.

Some blockchain explorers can only parse the bech32 address and display it, they don't build an index so users cannot search for bech32 addresses.

To verify bech32m readiness, you can look up the mainnet TXID b10c007c60e14f9d087e0291d4d0c7869697c6681d979c6639dbd960792b4d41 on which the first output should be addressed as bc1pqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqsyjer9e. Note that the superseded bech32 encoding only differs in the last six characters that encode the checksum: bc1pqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqszqgpqyqs_3wf0qm_.

See also: https://en.bitcoin.it/wiki/Category:Block_chain_browsers

Name Display Bech32 Index Bech32 Display Bech32m Index Bech32m Notes
bitaps.com Yes Yes Yes Yes https://bitaps.com
Bitflyer Yes Yes Yes Yes https://chainflyer.bitflyer.jp
Blockbook Yes Yes Yes Yes https://btc1.trezor.io
blockchain.com Yes Yes Yes Yes https://www.blockchain.com/explorer
Blockchair Yes Yes Ready, but old txns not reindexed yet Ready, but old txns not reindexed yet https://github.com/Blockchair/Blockchair.Support/issues/567#issuecomment-966393097, https://twitter.com/Blockchair/status/1458817396433731585
Blockcypher Yes Yes Yes No https://live.blockcypher.com/btc
Blockonomics Yes Yes Yes Yes https://www.blockonomics.co
Blockpath Yes Yes No No https://blockpath.com
BTC.com Yes Yes Yes Yes https://BTC.com
Esplora Yes Yes Yes Yes Open source explorer, instances are https://blockstream.info/ and https://www.localbitcoinschain.com/. Issue for BIP350 support.
Insight Yes Yes No No Open source explorer, instances include https://insight.bitpay.com/
Mempool Yes Yes Yes Yes Open source explorer, instances include https://mempool.space https://mempool.ninja https://mempool.emzy.de https://mempool.bisq.services https://mempool.bitcoin.ninja https://mempool.bitaroo.net/
OKLink Yes Yes Yes Yes https://www.oklink.com
OXT Yes Yes Yes Yes https://oxt.me/
Tradeblock Yes Yes No No https://tradeblock.com/bitcoin
WalletExplorer Yes Yes Yes Yes https://walletexplorer.com/
Bitcoin Explorer Yes Yes Yes Yes https://bitcoinexplorer.org, https://twitter.com/BitcoinExplorer/status/1425148093977309187

Payment Processors

Name P2WPKH/P2WSH Invoices Bech32 Withdrawal addresses P2TR Invoices Bech32m Withdrawal addresses Notes
Apirone Yes Yes ?? ?? Payment notifications, merchant dashboard, plugins for Magento, WooCommerce, OpenCart 2, Opencart 3.x, Virtuemart
Bitaps Yes Yes ?? ?? Payment forwarding API, Wallet API, fault tolerance callback.
BTCPay Server Yes Yes Yes Supported since 1.3.0 https://twitter.com/NicolasDorier/status/1432354289599451136, https://twitter.com/NicolasDorier/status/1457527754350415873
CoinGate No Yes ?? ??
CONFIRMO Yes Yes ?? ??
CryptoChill Yes Yes ?? Planned Highly customizable Bitcoin and Lightning Network payment gateway and custodial wallets provider. TSS/HD wallets, API, SDK.
SatSale Yes n/a Yes n/a Supports any address format supported by backend Bitcoin Core. Invoices use address format configured as default there. Has no withdrawal functionality in itself, payments are received in Core wallet.

Mining Pools

Name Payout to Bech32 Payout to Bech32m Notes
BTC.com Pool No ??
Ckpool Yes ??
KanoPool Yes ?? bitcointalk source
Poolin Yes ?? bitcointalk source
SBICrypto Pool Yes Ready to release at activation
Slush Pool Yes At activation Tweet
Ukr Pool Yes ?? bitcointalk source
ViaBTC Pool No ??

Libraries

Name Language Send to Bech32 Receive to P2WPKH/P2WSH Send to Bech32m Receive to P2TR Notes
libbase58 C No n/a No n/a
NBitcoin .NET Yes Yes Yes Yes https://twitter.com/NicolasDorier/status/1432354289599451136
bcoin JS Yes Yes Yes ?? https://github.com/bcoin-org/bcoin/pull/1038
btcsuite/btcutil Go Yes Yes Yes Yes
bitcoinjs-lib JS Yes Yes Yes, since v6.0.0 Supported but needs manual involvement https://github.com/bitcoinjs/bitcoinjs-lib/issues/1522#issuecomment-887468902, https://twitter.com/junderwood4649/status/1459006392086372355
bitcoinj Java Yes Yes Yes ?? https://github.com/bitcoinj/bitcoinj/commit/183986c9801f10f1bf46bd46621e535973d39ef8
bitcoin-s Scala Yes Yes Yes Planned for 2021 https://twitter.com/Chris_Stewart_5/status/1459205497463136270
rust-bitcoin Rust Yes ?? Yes ?? https://twitter.com/RCasatta/status/1423695925252329476
Lightning Dev Kit Rust Yes Yes Yes Pending BOLT update
Bitcoin Dev Kit Rust Yes Yes Yes, since 0.14.0 Yes, since 0.19.0 P2TR support is "experimental", see PR #593
libwally-core C Yes Yes Yes, since 0.8.4 Yes, since 0.8.4
GDK C Yes Yes Yes, since 0.0.47 ??
python-bitcointx Python Yes Yes Yes Yes https://github.com/Simplexum/python-bitcointx/issues/57
NBXPlorer C# Yes Yes Yes Yes https://twitter.com/NicolasDorier/status/1432354822888431619
Kotlin Multiplatform Bitcoin Library Kotlin Yes Yes Yes Planned https://twitter.com/realtbast/status/1458533450919649284
Libbitcoin C++ Yes ?? Yes ?? https://github.com/libbitcoin/libbitcoin-system/blob/master/include/bitcoin/system/wallet/addresses/witness_address.hpp#L41
Bitcoinrb Ruby Yes Yes Yes Yes https://github.com/chaintope/bitcoinrb/wiki/Taproot

References