Tezos Namespace - Account ID Specification
Author | Carlo van Driesten |
---|---|
Discussions-To | https://github.com/ChainAgnostic/namespaces/pull/40 |
Status | Draft |
Type | Standard |
Created | 2022-12-06 |
Updated | 2024-02-28 |
Requires | CAIP-2, CAIP-10 |
Table of Contents
For context, see the CAIP-10 specification.
Rationale
Tezos supports the use of multiple public-key signature schemes; for this reason, a given account can have multiple addresses, each of which is prefixed with tz1
(Ed25519 curve), tz2
(Secp256k1 curve), tz3
(NIST P256 curve), or tz4
(BLS12-381 curve from the BLS family) referenced in the Tezos address types glossary.
After the prefix, the rest of the account address is a Base58 Check Encoded Blake2B Hash of a public key of the type corresponding to the prefix.
Syntax
The syntax of a Tezos address matches the following regular expression (note the 58-character alphabet):
(tz1|tz2|tz3|tz4)[1-9A-HJ-NP-Za-km-z]{33}
Chain IDs
For how to compute a valid chainId
segment or a list of examples, see the CAIP-2 profile.
Alias | Chain ID |
---|---|
tezos:mainnet | tezos:NetXdQprcVkpaWU |
tezos:ghostnet | tezos:NetXnHfVqm9iesp |
Tezos addresses are invariable across networks.
Test Cases
Manually composed examples follow:
# Ed25519-key address on Tezos Mainnet
# Genesis block hash: BLockGenesisGenesisGenesisGenesisGenesisf79b5d1CoW2
tezos:NetXdQprcVkpaWU:tz1MJx9vhaNRSimcuXPK2rW4fLccQnDAnVKJ
# NIST p256-key address on Tezos Ghostnet
# Genesis block hash: BLockGenesisGenesisGenesisGenesisGenesis1db77eJNeJ9
tezos:NetXnHfVqm9iesp:tz3btDQsDkqq2G7eBdrrLqetaAfLVw6BnPez
References
- Tezos address types - Important context on the Tezos system of addresses and key representations.
- Tezos Smart Contract: General definition of a Tezos smart contract.
- CAIP-2: Chain ID Specification.
- CAIP-10: Account ID Specification.
- Ed25519 - Ed25519: high-speed high-security signatures.
- Secp256k1 - Elliptic curve used in Bitcoin’s public-key cryptography.
- NIST P256 - One of the most used elliptic curves including native support in some mobile devices.
- BLS family - BLS12-381 is a pairing-friendly elliptic curve construction from the BLS family, with embedding degree 12.
Rights
Copyright and related rights waived via CC0.
Citation
Please cite this document as:
Carlo van Driesten, "namespaces/tezos-caip10: Tezos Namespace - Account ID Specification [DRAFT]," Chain Agnostic Namespaces, tezos-caip10, December 2022 / February 2024. [Online serial]. Available: https://github.com/ChainAgnostic/namespaces/tezos-caip10.md