What is a Bitcoin address, actually
Updated August 6, 2026
Open your wallet's receive screen right now and look at the string sitting there, the one starting with 1, 3, bc1q, or bc1p. That's your bitcoin address, and despite what it looks like, it isn't a random password someone assigned you. It's a deliberately encoded, one-way derivative of a key pair generated on your device, and understanding what it actually contains is worth five minutes before you send anything anywhere.
An address is mostly a hash of a key, not the key itself
Every bitcoin address traces back to a private key: a very large random number, effectively unguessable, that only you hold. Elliptic curve multiplication turns that private key into a public key, a process that's easy to run forward and, as far as anyone can do with classical computers today, infeasible to run backward. Your address is then built from that public key, but for most address formats it isn't the public key itself. It's a cryptographic hash of the public key, run through an encoding scheme that adds a checksum and turns raw bytes into the letters and numbers you actually see. That hashing step is why an address looks nothing like the key that produced it. It's a fingerprint of a fingerprint, several steps removed from anything usable directly.
Why the string looks the way it does
The apparent randomness isn't decorative. Older addresses, the ones starting with 1, use an encoding called Base58Check, which drops characters that are easy to confuse on screen (no 0, O, I, or l) and appends a short checksum so a single mistyped character gets caught instead of silently sending funds nowhere. Addresses starting with 3 use the same encoding for a different underlying structure, historically a script hash used for multisig and similar setups. Newer addresses starting with bc1 use a different scheme called Bech32 (Bech32m for Taproot): all lowercase, still checksummed, designed to be easier to read aloud and harder to mistype. None of this is meant to be memorized. It's meant to be copied exactly, once, and the checksum exists specifically to catch the errors that happen when humans move long strings around by hand.
Legacy, SegWit, and Taproot, briefly
Three broad families show up in practice. Legacy P2PKH addresses (starting with 1) are the original format. P2SH addresses (starting with 3) wrap a script rather than a single key, historically the multisig format, though wallets use them for other purposes too. SegWit, activated in 2017, introduced a more efficient transaction structure, with native SegWit addresses appearing as bc1q. Taproot, activated in November 2021, introduced bc1p addresses, which behave differently in one specific way worth knowing: a Taproot address commits to an actual public key directly, not just a hash of one, so the key is visible on chain the moment funds arrive rather than only once you spend. That distinction matters more for questions about long term cryptographic exposure than for everyday use. If you want to see where a specific address falls, a tool that checks an address's spend history and exposure tier against a public block explorer can show you directly, rather than leaving it as a guess.
| Format | Prefix | Introduced | What the address commits to |
|---|---|---|---|
| Legacy (P2PKH) | 1... | Original format | Hash of a public key |
| Script hash (P2SH) | 3... | Original format era | Hash of a script, often multisig |
| SegWit (P2WPKH / P2WSH) | bc1q... | 2017 | Hash of a public key or script |
| Taproot (P2TR) | bc1p... | November 2021 | The public key itself, directly |
A fresh address every time, and why that's normal
Wallets generate a new address for each receive request by default, all derived from the same underlying seed. That isn't overly cautious or wasteful, it's the standard pattern, and it's why a single wallet can hand you dozens of different-looking addresses that all ultimately trace back to keys only you control. If you're working out a payment amount for one of those addresses and you're more used to thinking in sats than BTC, a plain sats-to-BTC converter handles that arithmetic without pulling in any price data. The address itself says nothing about value. It only says where value should go.
Why the distinction matters beyond curiosity
The hash-versus-direct-key difference between address formats isn't just trivia. It's the exact detail behind the more involved conversation about Bitcoin's exposure to quantum computing: addresses that have only ever received funds, using the older hash-based formats, keep their public key hidden until the first spend, while Taproot addresses, and any address that has already spent once, reveal the key immediately. That's not a reason to avoid Taproot, which offers real benefits elsewhere, but it's easier to reason about once you understand that an address was never the key to begin with. It was always an encoded pointer to one.
What's settled: an address is a derived, encoded, checksummed representation of a public key, directly for Taproot, or via a hash for the older formats, generated from a private key you should never share with anyone or any tool. SegWit's 2017 activation and Taproot's November 2021 activation are both fixed historical facts, and the underlying mechanics described here aren't likely to change for addresses that already exist. What's genuinely open is how bitcoin's address formats evolve from here: whether a future quantum-resistant format, proposed under still-draft BIPs like 360 and 361, becomes an adopted standard, and on what timeline. Those proposals remain drafts, not settled protocol rules, and no one can say with real confidence exactly when or how that transition happens.