A chain ID is a unique identifier that represents a blockchain network. We use it to distinguish different blockchainnetworks from each other and to ensure that transactions and messages are sent to the correct network. Evmos networkfollows the format of identifier_EIP155-version
format.
Official Chain IDs
tip
NOTE: The latest Chain ID (i.e highest Version Number) is the latest version of the software and mainnet. Also note, that the following upgrades technically did not require a Chain ID change:
evmos_9001-1
->evmos_9001-2
evmos_9000-3
->evmos_9000-4
Mainnet
Name | Chain ID | Identifier | EIP-155 Number | Version Number | Active |
---|---|---|---|---|---|
Evmos 2 | evmos_9001-2 | evmos | 9001 | 2 | ✅ |
Evmos 1 | evmos_9001-1 | evmos | 9001 | 1 | 🚫 |
Testnet
Name | Chain ID | Identifier | EIP-155 Number | Version Number | Active |
---|---|---|---|---|---|
Evmos Public Testnet | evmos_9000-4 | evmos | 9000 | 4 | ✅ |
Evmos Public Testnet | evmos_9000-3 | evmos | 9000 | 3 | 🚫 |
Olympus Mons Incentivized Testnet | evmos_9000-2 | evmos | 9000 | 2 | 🚫 |
Arsia Mons Testnet | evmos_9000-1 | evmos | 9000 | 1 | 🚫 |
tip
You can also look up the EIP-155 Chain ID
by referringto chainlist.org.
The Chain Identifier
Every chain must have a unique identifier or chain-id
. Tendermint requires each application todefine its own chain-id
in the genesis.json fields.However, to comply with both EIP-155 and Cosmos standard for chain upgrades, Evmos-compatible chains must implementa special structure for their chain identifiers.
Structure
The Evmos Chain ID contains 3 main components
- Identifier: Unstructured string that defines the name of the application.
- EIP-155 Number: Immutable EIP-155
CHAIN_ID
thatdefines the replay attack protection number. - Version Number: Is the version number (always positive) that the chain is currently running.This number MUST be incremented every time the chain is upgraded or forked to avoid network or consensus errors.
Format
The format for specifying and Evmos compatible chain-id in genesis is the following:
{identifier}_{EIP155}-{version}
The following table provides an example where the second row corresponds to an upgrade from the first one:
ChainID | Identifier | EIP-155 Number | Version Number |
---|---|---|---|
evmos_9000-1 | evmos | 9000 | 1 |
evmos_9000-2 | evmos | 9000 | 2 |
... | ... | ... | ... |
evmos_9000-N | evmos | 9000 | N |