I have wondered how many Bitcoin addresses are possible. When looking around, I stumbled upon this thread on BitcoinTalk:

There are exactly 2^160 possible addresses as long as we keep using RIPE-MD160.

2^160 is 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976.

Then I wondered if there are less possible addresses with the Bech32-format, specified by BIP 0173.

Besides, you cannot use uppercase format of characters in your computation, and some numbers as letters, such as i/1 and o/0 characters/numbers are excluded in Bech32 format.

Should that not decrease the possible amount of Bitcoin addresses dramatically, and decrease the security of Bitcoin?

So, I would like to know how many possible Bitcoin addresses there are with Bech32 format. How could I calculate it? What will the total number (plain long number, not the squared one, I'm not good in math) of possibilities be with the restrictions of Bech32 then?

• Bech32 addresses are not shorter by any means (42 instead of 34 characters for typical ones). Jan 26, 2018 at 9:10
• Thanks for your explaination, Pieter. I have edited my post, regarding your comment. And I hope you don't mind my poor English (Ik ben overigens Nederlands). Should it be reasonable to assume there will be less possible addresses with Bech32 format, compared with the old Bitcoin addresses (2^160)? Jan 26, 2018 at 11:03
• No, there are far more Bech32 addresses than P2PKH addresses. Nov 30, 2020 at 17:41

Keep in mind that both types of addresses, assuming we are comparing P2PKH with P2WPKH addresses, are just encoding the hash of a public key. The hash used in both address types is a `RIPEMD-160(SHA-256(public key))`, so regardless of the encoding, the number of possible valid addresses remains the same. Each address format is simply encoded with a different checksum system, different version system, and different characters. But neither address format is actually ever used within bitcoin transactions themselves, they both just get "unwrapped" when given to a wallet.