Address Formats
A Tidecoin address is an encoded destination. It tells a wallet how to build the locking script for a payment, and it tells the sender which network and address family they are using.
This page explains addresses for users and integrators. The canonical encoding rules live in Protocol / Address Formats.
The Short Version
| Address family | What it means | Mainnet status |
|---|---|---|
| Base58 key-hash | A hash of a serialized post-quantum public key | Live compatibility surface |
| Base58 script-hash | A hash of a redeem script | Live compatibility surface |
| Witness v0 | Bitcoin-style SegWit v0 hash program | Live compatibility surface |
| PQ witness v1 | 64-byte SHA-512 script hash with PQ HRP | Implemented, activates with AuxPoW |
If you are using a wallet, let the wallet generate the address. If you are building an integration, validate against the active network and the exact address family instead of checking only a prefix string.
Network Prefixes
Different networks use different address prefixes so test coins are not accidentally sent to mainnet destinations.
| Network | Base58 key-hash prefix | Base58 script-hash prefix | Witness v0 HRP | PQ witness v1 HRP |
|---|---|---|---|---|
| Mainnet | 33 | 70 or 65 | tbc | q |
| Testnet | 92 | 132 or 127 | ttbc | tq |
| Regtest | 117 | 186 or 122 | rtbc | rq |
The human-readable prefix is only part of validation. A valid-looking address can still be wrong for the selected network or inactive for the current chain rules.
Base58 Addresses
Base58Check addresses are the familiar legacy-style address format. Tidecoin uses Tidecoin-specific network bytes, but the concept is the same:
- a key-hash address commits to
HASH160(serialized_pq_public_key); - a script-hash address commits to
HASH160(serialized_redeem_script).
The serialized PQ public key includes a one-byte scheme prefix. That prefix is part of what the address commits to.
Witness v0 Addresses
Witness v0 addresses use bech32 and the network’s witness v0 HRP:
- mainnet:
tbc; - testnet:
ttbc; - regtest:
rtbc.
Witness v0 can encode 20-byte key hashes and 32-byte script hashes. It uses the original bech32 checksum, not bech32m.
PQ Witness v1 Addresses
PQ witness v1 is Tidecoin’s SHA-512 script-hash path. It uses a 64-byte witness program and a PQ-specific HRP:
- mainnet:
q; - testnet:
tq; - regtest:
rq.
PQ witness v1 must use bech32m and witness version 1. On mainnet it is
implemented but gated by AuxPoW activation, so wallets should not present it as
the default production receive type until the activation status supports it.
User Rules
- Copy addresses with the wallet’s copy button or QR flow.
- Confirm the network before sending.
- Send a small test transaction for new recipients or new wallet software.
- Do not edit address text manually.
- Do not assume a testnet address can be converted into a mainnet address.
Integration Rules
- Decode with the selected chain parameters.
- Validate the checksum family: bech32 for witness v0, bech32m for PQ witness v1.
- Validate witness version and program length.
- Reject wrong-network prefixes.
- Do not offer inactive output types as default mainnet receive options.
- Use Address Validation for service-facing validation behavior.
See also: Protocol / Address Formats, Address Validation, Witness V1 SHA-512.