Defines how to define CAIPs
chain_id: namespace + ":" + reference
namespace: [-a-z0-9]{3,16}
reference: [-a-zA-Z0-9]{1,47}
Namespace
Namespace defines class of similar blockchains(cosmos, eip55 etc). Namespaces should cover as many BCs as possible
Reference
Way to reference a BC in a given namespace
# Ethereum mainnet
eip155:1
# Görli
eip155:5
# Auxilium Network Mainnet
eip155:28945486
# Bitcoin mainnet (see <https://github.com/bitcoin/bips/blob/master/bip-0122.mediawiki#definition-of-chain-id>)
bip122:000000000019d6689c085ae165831e93
# Litecoin
bip122:12a765e31ffd4059bada1e25190f6e98
# Feathercoin (Litecoin fork)
bip122:fdbe99b90c90bae7505796461471d89a
chain_id regex - [-a-zA-Z0-9]{1,47}
if chain_id matches the above regex, chain_id is appended to cosmos:
if not, chain_id is hashed and appended with hashed-
Chains that have experienced hard forks and as a result have changed chain IDs in the past
(like cosmoshub-1
cosmoshub-2
cosmoshub-3
)