Eine Chain-ID ist eine ganze Zahl, die eine EVM-kompatible Blockchain eindeutig bezeichnet. Sie ist in EIP-155 definiert und in jeder Transaktionssignatur enthalten, damit eine für ein Netzwerk signierte Transaktion nicht auf einem anderen wiederholt werden kann. Das Ethereum-Mainnet ist 1, Base ist 8453, Arbitrum One ist 42161, Polygon PoS ist 137, BNB Smart Chain ist 56, Optimism ist 10, Avalanche C-Chain ist 43114 und das Sepolia-Testnet ist 11155111.
Die vollständige Liste der Mainnets und Testnets steht in den Abschnitten 2 und 3, jede Nummer auch in Hex, weil Wallets und RPC-Endpunkte sie oft so anzeigen (Base ist 8453 dezimal und 0x2105 hexadezimal).
Chain-IDs tauchen in den ungünstigsten Momenten auf: ein Wallet-Formular, das sich nicht speichern lässt, eine dApp, die „unsupported chain“ meldet, eine Bibliothek, die die Nummer braucht, bevor sie signiert. Die Listen im Netz liefern die Nummer ohne die Bedeutung, und die Erklärartikel liefern die Bedeutung ohne die Liste. Diese Seite hat beides: was die Ganzzahl tut, die Chain-IDs der Netzwerke, die wirklich genutzt werden, in Dezimal und Hex, und wie du eine in wenigen Sekunden selbst prüfst.
Kurzfassung
- Eine Chain-ID ist die Ganzzahl, die ein EVM-Netzwerk eindeutig bezeichnet. Ethereum ist 1, Optimism 10, BNB Smart Chain 56, Polygon 137, Base 8453, Arbitrum One 42161, Avalanche 43114, Sepolia 11155111.
- Seit EIP-155 ist sie Teil jeder Signatur, eine für Chain 1 signierte Transaktion wird also auf jeder anderen Chain abgelehnt. Das verhindert Replay-Angriffe zwischen Netzwerken.
- Hex und Dezimal sind dieselbe Zahl: MetaMask zeigt 0x2105, Chainlist zeigt 8453, beides bedeutet Base.
- Der maßgebliche Wert ist das, was der RPC-Endpunkt des Netzwerks auf eth_chainId zurückgibt. Eine Wallet lehnt ein benutzerdefiniertes Netzwerk ab, dessen eingegebene Chain-ID nicht zu dieser Antwort passt.
1. Was ist eine Chain-ID?
Jedes EVM-Netzwerk, von Ethereum selbst bis zum kleinsten Layer 2, trägt eine einzelne Ganzzahl, die Software sagt, mit welcher Chain sie gerade spricht. Diese Ganzzahl ist die Chain-ID. Sie ist keine Adresse, kein Contract und kein Netzwerkname: Sie ist eine schlichte Zahl, auf die sich Nodes, Wallets, Bibliotheken und dApps einigen, und sie steckt in jeder Transaktion, die du signierst.
Die Zahl stammt aus EIP-155, aktiviert mit dem Hard Fork Spurious Dragon bei Block 2.675.000 im Jahr 2016. Davor war eine auf einer Chain signierte Ethereum-Transaktion auf jeder Chain gültig, auf der dasselbe Konto existierte, was zu einem echten Problem wurde, als sich Ethereum und Ethereum Classic trennten und jede Adresse teilten. EIP-155 nahm die Chain-ID in die signierten Daten auf, sodass die Signatur nur auf der Chain gültig ist, für die sie erstellt wurde.
In der Praxis begegnet dir die Chain-ID an drei Stellen: in den Netzwerkeinstellungen einer Wallet, in der Fehlermeldung einer dApp, die das Netzwerk nicht unterstützt, auf dem du gerade bist, und in der Konfiguration jeder Bibliothek, die Transaktionen signiert.
2. Chain-ID-Liste: Mainnets
Die Netzwerke unten sind die, nach denen gesucht wird und die diese Seite verfolgt. Die Werte stammen aus der Registry ethereum-lists/chains, auf der chainlist.org und chainid.network aufbauen, geprüft am 18. Oktober 2026. Wo ChainGate einen Gas-Tracker für das Netzwerk hat, verlinkt der Name darauf.
| Netzwerk | Chain-ID | Hex | Nativer Token |
|---|---|---|---|
| Ethereum Mainnet | 1 | 0x1 | ETH |
| OP Mainnet (Optimism) | 10 | 0xa | ETH |
| Cronos | 25 | 0x19 | CRO |
| BNB Smart Chain | 56 | 0x38 | BNB |
| Syscoin | 57 | 0x39 | SYS |
| Ethereum Classic | 61 | 0x3d | ETC |
| Gnosis | 100 | 0x64 | XDAI |
| Unichain | 130 | 0x82 | ETH |
| Polygon PoS | 137 | 0x89 | POL |
| Monad | 143 | 0x8f | MON |
| Sonic | 146 | 0x92 | S |
| opBNB | 204 | 0xcc | BNB |
| Fantom Opera | 250 | 0xfa | FTM |
| zkSync Era | 324 | 0x144 | ETH |
| PulseChain | 369 | 0x171 | PLS |
| World Chain | 480 | 0x1e0 | ETH |
| Polygon zkEVM | 1101 | 0x44d | ETH |
| Moonbeam | 1284 | 0x504 | GLMR |
| Moonriver | 1285 | 0x505 | MOVR |
| Sei | 1329 | 0x531 | SEI |
| Soneium | 1868 | 0x74c | ETH |
| Ronin | 2020 | 0x7e4 | RON |
| Kava | 2222 | 0x8ae | KAVA |
| peaq | 3338 | 0xd0a | PEAQ |
| Mantle | 5000 | 0x1388 | MNT |
| Base | 8453 | 0x2105 | ETH |
| Haqq Network | 11235 | 0x2be3 | ISLM |
| Arbitrum One | 42161 | 0xa4b1 | ETH |
| Arbitrum Nova | 42170 | 0xa4ba | ETH |
| Celo | 42220 | 0xa4ec | CELO |
| Avalanche C-Chain | 43114 | 0xa86a | AVAX |
| Ink | 57073 | 0xdef1 | ETH |
| Linea | 59144 | 0xe708 | ETH |
| Berachain | 80094 | 0x138de | BERA |
| Blast | 81457 | 0x13e31 | ETH |
| Chiliz Chain | 88888 | 0x15b38 | CHZ |
| Taiko | 167000 | 0x28c58 | ETH |
| Scroll | 534352 | 0x82750 | ETH |
| Zora | 7777777 | 0x76adf1 | ETH |
Ein paar davon sorgen für Verwirrung. Polygon PoS ist 137, und sein nativer Token heißt inzwischen POL, nicht mehr MATIC; Polygon zkEVM ist eine andere Chain, 1101. OP Mainnet ist das Netzwerk, das die meisten noch Optimism nennen. Arbitrum One (42161) ist die Haupt-Chain von Arbitrum; Arbitrum Nova (42170) ist eine separate Chain für Spiele und Social-Apps. BNB Smart Chain (56) und opBNB (204) sind verschiedene Netzwerke mit demselben Gas-Token. Ethereum Classic hat die Netzwerk-ID 1, dieselbe wie Ethereum, aber die Chain-ID 61, und genau für diesen Fall wurde EIP-155 geschrieben.
3. Chain-ID-Liste: Testnets und lokale Netzwerke
Testnets haben ihre eigenen Chain-IDs, und eine Wallet, die auf das falsche umgeschaltet ist, zeigt ein Guthaben von null für Mittel, die auf dem richtigen völlig sicher liegen.
| Netzwerk | Chain-ID | Hex | Hinweise |
|---|---|---|---|
| Ethereum Sepolia | 11155111 | 0xaa36a7 | Von Ethereum empfohlenes Testnet für die Anwendungsentwicklung |
| Ethereum Hoodi | 560048 | 0x88bb0 | Ethereum-Testnet für Staking- und Validator-Tests |
| Ethereum Holesky | 17000 | 0x4268 | Seit September 2025 eingestellt; nutze Hoodi |
| Base Sepolia | 84532 | 0x14a34 | Base-Testnet |
| Arbitrum Sepolia | 421614 | 0x66eee | Arbitrum-Testnet |
| OP Sepolia | 11155420 | 0xaa37dc | OP-Mainnet-Testnet |
| Polygon Amoy | 80002 | 0x13882 | Polygon-PoS-Testnet |
| BNB Smart Chain Testnet | 97 | 0x61 | BNB-Smart-Chain-Testnet |
| Avalanche Fuji | 43113 | 0xa869 | Avalanche-C-Chain-Testnet |
| Hardhat Network (local) | 31337 | 0x7a69 | Standard für ein lokales Hardhat Network |
| Geth private chain (local) | 1337 | 0x539 | Standard für eine private Geth-Chain; das Dev-Netzwerk von Besu nutzt ihn ebenfalls |
Der Status der Ethereum-Testnets stammt von ethereum.org; der Hardhat-Standard steht in dessen Netzwerkreferenz und der von Geth in EIP-155 selbst. Lokale Chains sind die eine Stelle, an der zwei verschiedene Tools unterschiedliche Standardwerte wählen. Beschwert sich also eine Wallet, wenn du dich mit einem lokalen Node verbindest, prüfe, ob es 1337 oder 31337 ist.
4. Warum ist die Chain-ID wichtig?
Weil sie Teil der Signatur ist. Unter EIP-155 ist die Chain-ID eines der Felder, die vor dem Signieren gehasht werden, und der v-Wert der Signatur wird auf die Chain-ID mal zwei plus 35 oder 36 gesetzt. Ein Node auf Chain 137, der eine für Chain 1 signierte Transaktion erhält, kann daraus keinen gültigen Absender ermitteln und verwirft sie. Dasselbe Konto, dieselbe Nonce und derselbe Empfänger existieren auf beiden Chains, aber die Signatur funktioniert nur auf einer.
Alles Weitere folgt daraus. Eine Wallet nutzt die Chain-ID, um den richtigen Netzwerknamen, das Währungssymbol und den Explorer anzuzeigen. Eine dApp nutzt sie, um die aufzurufenden Contract-Adressen auszuwählen, weshalb eine für Base gebaute dApp die Arbeit verweigert, wenn deine Wallet auf Ethereum steht. Eine Bibliothek nutzt sie, um die Signatur zu bilden, weshalb ein falscher Wert in der Konfiguration Transaktionen erzeugt, die nirgends ankommen.
5. Chain-ID vs. Netzwerk-ID
Ethereum-Netzwerke tragen zwei Kennungen, und meistens sind beide dieselbe Zahl, weshalb die Begriffe durcheinandergeraten. Die Dokumentation von Hyperledger Besu bringt den Unterschied in einem Satz auf den Punkt: Die Peer-to-Peer-Kommunikation zwischen Nodes verwendet die Netzwerk-ID, der Signaturprozess von Transaktionen die Chain-ID.
In wenigen bekannten Fällen weichen die beiden voneinander ab. Ethereum und Ethereum Classic haben beide die Netzwerk-ID 1, weil sie bis 2016 ein Netzwerk waren, aber die Chain-IDs 1 und 61. Das Entwicklungsnetzwerk von Besu nutzt die Chain-ID 1337 mit der Netzwerk-ID 2018. Beim Ethereum-Mainnet, Sepolia, Hoodi und jedem Layer 2 in den Tabellen oben stimmen die beiden Werte überein, und nichts, was du in einer Wallet tust, fragt je nach der Netzwerk-ID.
Über JSON-RPC sind es getrennte Aufrufe: eth_chainId gibt die Chain-ID als Hex-String zurück, net_version die Netzwerk-ID als Dezimal-String. Fragt ein Tool im Kontext einer Wallet oder dApp nach einer „Netzwerk-ID“, meint es fast immer die Chain-ID.
6. Wie finde ich die Chain-ID eines Netzwerks?
Vier Wege, vom schnellsten zum maßgeblichsten.
- Die Tabellen auf dieser Seite
- Decken die Netzwerke ab, die im Alltag genutzt werden, mit der Hex-Form neben jeder Nummer.
- chainlist.org oder chainid.network
- Beide lesen die Registry ethereum-lists/chains auf GitHub, die über 2.800 EVM-Chains führt. Die Suche nach dem Namen liefert die Chain-ID, den nativen Token und öffentliche RPC-URLs. Die Hilfeseiten von MetaMask verweisen selbst auf Chainlist, mit dem Hinweis, dass MetaMask die Daten dort nicht pflegt, prüfe den Eintrag also, bevor du ein Netzwerk hinzufügst.
- Die Netzwerkeinstellungen der Wallet
- MetaMask, Rabby, Trust Wallet und die übrigen zeigen die Chain-ID jedes konfigurierten Netzwerks in dessen Details. Das ist die Nummer, mit der die Wallet tatsächlich signiert.
- Der RPC-Endpunkt selbst
- Rufe eth_chainId auf dem Node auf. Was er zurückgibt, ist per Definition die Chain-ID dieses Netzwerks, und genau damit vergleichen Wallets, wenn du ein benutzerdefiniertes Netzwerk hinzufügst:
curl -s -X POST https://mainnet.base.org \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
# {"jsonrpc":"2.0","id":1,"result":"0x2105"}
# 0x2105 = 8453, so this endpoint is BaseDas Ergebnis ist Hex. 0x2105 ist 8453, dieser Endpunkt gehört also zu Base. Jeder JSON-RPC-Anbieter beantwortet diesen Aufruf ohne API-Key, was ihn zum schnellsten Weg macht, um zu bestätigen, dass eine RPC-URL, die dir jemand gegeben hat, wirklich zu dem behaupteten Netzwerk gehört.
7. Wie füge ich ein Netzwerk mit seiner Chain-ID zu MetaMask hinzu?
Ein benutzerdefiniertes Netzwerk hinzuzufügen heißt, die fünf Felder auszufüllen, die EIP-3085 definiert, der Standard hinter dem Aufruf wallet_addEthereumChain, mit dem dApps dasselbe mit einem Klick erledigen:
- Netzwerkname
- Freitext, nur zur Anzeige.
- RPC-URL
- Der JSON-RPC-Endpunkt, mit dem die Wallet spricht. Öffentliche stehen auf Chainlist; die URL deines eigenen Anbieters funktioniert ebenso.
- Chain-ID
- Die Nummer aus den Tabellen oben. Wallets akzeptieren im Formular Dezimal; dApps übergeben sie im API-Aufruf als Hex mit 0x-Präfix.
- Währungssymbol
- Wie der native Token heißt: ETH auf Base und Arbitrum, POL auf Polygon, BNB auf BNB Smart Chain, AVAX auf Avalanche.
- Block-Explorer-URL
- Optional. Erlaubt der Wallet, Transaktionen mit dem Explorer zu verlinken.
Chain-ID und RPC-URL müssen zusammenpassen. EIP-3085 verlangt, dass die Wallet die Anfrage ablehnt, wenn die übergebene Chain-ID nicht mit dem Wert von eth_chainId vom RPC-Endpunkt übereinstimmt, und MetaMask zeigt in diesem Fall einen Fehler im Formular an. Siehst du ihn, ist die Nummer falsch, die URL gehört zu einem anderen Netzwerk oder die URL ist ein toter Endpunkt; teste sie mit dem curl-Aufruf aus dem vorigen Abschnitt.
8. Warum erhalte ich den Fehler „chain ID mismatch“ oder „unsupported chain“?
Der Wortlaut unterscheidet sich je nach Wallet und dApp, aber es gibt nur eine Handvoll Ursachen:
- RPC-URL und Chain-ID passen nicht zusammen
- Du hast 8453 eingetippt, aber eine URL des Ethereum-Mainnets eingefügt, oder umgekehrt. Die Wallet hat den Endpunkt gefragt, eine andere Antwort bekommen und abgelehnt. Korrigiere das, was falsch ist.
- Die dApp unterstützt das Netzwerk nicht, auf dem du bist
- „Unsupported chain“ oder „wrong network“ bedeutet, dass die Contracts der dApp auf anderen Chain-IDs deployt sind. Schalte die Wallet auf eines der Netzwerke um, die die dApp aufführt, meist über ihren eigenen Netzwerk-Button.
- Eine Transaktion wurde für eine andere Chain-ID signiert als die des Nodes
- Der Node lehnt sie mit einem Invalid-Sender- oder Invalid-Chain-ID-Fehler ab, weil die EIP-155-Signatur auf dieser Chain nicht wiederhergestellt werden kann. Das ist ein Konfigurationsfehler in der sendenden Software, nie ein Netzwerkausfall.
- Eine lokale Chain hat ihre ID geändert
- Wird ein Dev-Node mit einer anderen Chain-ID neu gestartet als der, die MetaMask gespeichert hat, führt das zu Mismatches und veralteten Nonces. Entferne das lokale Netzwerk und füge es neu hinzu.
- Hex und Dezimal wurden vermischt
- 0x89 ist 137, aber ein Formular, das Dezimal erwartet, behandelt „0x89“ als Text. Nutze in Wallet-Formularen die Dezimalform und in API-Aufrufen die Hex-Form.
9. Dezimal, Hex und CAIP-2: drei Schreibweisen für dieselbe ID
Chainlist und Wallet-Formulare zeigen Chain-IDs dezimal. JSON-RPC, EIP-3085 und die internen Einstellungen von MetaMask nutzen Hexadezimal mit 0x-Präfix, 137 erscheint also als 0x89, 42161 als 0xa4b1 und 11155111 als 0xaa36a7. Es ist dieselbe Ganzzahl; die Tabellen oben nennen beide Formen.
Multi-Chain-Tools wie WalletConnect ergänzen eine dritte Form, CAIP-2, die der Nummer einen Namespace voranstellt, damit auch Chains außerhalb der EVM ein gemeinsames Kennungsschema nutzen können: Das Ethereum-Mainnet ist eip155:1, Polygon ist eip155:137, Base ist eip155:8453. Der Teil eip155 sagt „das ist eine EVM-Chain-ID“; die Nummer nach dem Doppelpunkt ist dieselbe Chain-ID wie überall sonst.
10. Haben Bitcoin und Solana Chain-IDs?
Nicht im Sinne von EIP-155. Eine Chain-ID ist ein EVM-Konzept, und Bitcoin, Litecoin, Dogecoin, Solana und XRP haben keine, weshalb eine Wallet beim Hinzufügen dieser Coins nie danach fragt.
Diese Netzwerke unterscheiden Mainnet und Testnetze auf andere Weise. Chains der Bitcoin-Familie nutzen für Mainnet und Testnet unterschiedliche Adressformate und Netzwerkparameter, weshalb eine Testnet-Adresse anders beginnt. Solana betreibt getrennte Cluster namens Mainnet, Devnet und Testnet, jedes mit eigenem RPC-Endpunkt. Fragt ein Formular beim Einzahlen von Bitcoin oder Solana nach einer „Chain-ID“, will es wissen, welches Netzwerk verwendet werden soll, und keine Zahl.
11. Chain-IDs im Code verwenden
Jede Bibliothek, die EVM-Transaktionen signiert, braucht die Chain-ID, entweder aus der Konfiguration oder indem sie den Node fragt. Beim ChainGate SDK bringen die gehosteten Netzwerke sie bereits mit, und ein benutzerdefiniertes EVM-Netzwerk nimmt sie als Parameter neben der RPC-URL entgegen:
import { ChainGate, importWallet } from 'chaingate';
const cg = new ChainGate({ apiKey: process.env.CHAINGATE_API_KEY });
const wallet = importWallet({ phrase: process.env.MNEMONIC });
// Hosted networks already know their chain ID
const base = cg.connect(cg.networks.base, wallet);
// Any other EVM network: pass the RPC URL and the chain ID it reports
const scroll = cg.networks.evmRpc({
rpcUrl: 'https://rpc.scroll.io',
chainId: 534352,
name: 'Scroll',
symbol: 'ETH',
});
const scr = cg.connect(scroll, wallet);Der übergebene Wert muss mit dem übereinstimmen, was der Endpunkt für eth_chainId meldet, aus den Gründen in Abschnitt 4. Das Tutorial zum Senden von Krypto in JavaScript führt durch den Rest des Ablaufs, und die ChainGate-Dokumentation listet die gehosteten RPC-URLs.
12. Wie es weitergeht
Ist die Chain-ID geklärt, lautet die nächste Frage auf jedem Netzwerk, was das Senden dort kostet. Der Multi-Chain-Gas-Tracker deckt jedes Netzwerk aus der Mainnet-Tabelle oben mit Live-Gebühren ab, und der Leitfaden zu Gas Fees erklärt die Zahlen, die er anzeigt. Ist eine Transaktion schon unterwegs und du musst sie finden, zeigt der Leitfaden zum Transaktions-Hash, wie du sie im richtigen Explorer nachschlägst. Und ChainGate ist das SDK hinter dieser Seite, mit Wallets, Überweisungen und RPC-Zugriff auf all diesen Chains aus einer einzigen TypeScript-Bibliothek.
Häufig gestellte Fragen
Was ist eine Chain-ID bei Krypto?
Eine ganze Zahl, die eine EVM-kompatible Blockchain eindeutig bezeichnet, definiert in EIP-155. Sie ist in jeder Transaktionssignatur enthalten, sodass eine für ein Netzwerk signierte Transaktion auf jedem anderen ungültig ist. Das Ethereum-Mainnet ist 1, Base 8453, Arbitrum One 42161, Polygon 137.
Was ist die Chain-ID des Ethereum-Mainnets?
1, in Hex 0x1. Seine Testnets sind Sepolia (11155111) und Hoodi (560048); Holesky (17000) ist seit September 2025 eingestellt.
Was ist die Chain-ID von Base?
8453 dezimal, 0x2105 hexadezimal. Das Testnet Base Sepolia ist 84532.
Was ist die Chain-ID von Arbitrum?
Arbitrum One ist 42161 (0xa4b1). Arbitrum Nova ist eine separate Chain, 42170, und das Testnet Arbitrum Sepolia ist 421614.
Was ist die Chain-ID von Polygon?
Polygon PoS ist 137 (0x89), mit POL als nativem Token. Polygon zkEVM ist eine andere Chain, 1101, und das Testnet Polygon Amoy ist 80002.
Was ist der Unterschied zwischen Chain-ID und Netzwerk-ID?
Die Netzwerk-ID dient der Peer-to-Peer-Kommunikation zwischen Nodes; die Chain-ID wird in Transaktionssignaturen verwendet. Auf dem Ethereum-Mainnet und jedem öffentlichen Testnet sind sie dieselbe Zahl, aber Ethereum Classic hat die Netzwerk-ID 1 und die Chain-ID 61, und das Entwicklungsnetzwerk von Besu nutzt die Chain-ID 1337 mit der Netzwerk-ID 2018.
Wie finde ich die Chain-ID eines Netzwerks?
Schlag sie auf chainlist.org oder chainid.network nach, lies sie in den Netzwerkeinstellungen deiner Wallet ab oder sende einen eth_chainId-JSON-RPC-Aufruf an die RPC-URL des Netzwerks. Die RPC-Antwort, in Hex, ist der maßgebliche Wert.
Warum sagt MetaMask, die Chain-ID stimmt nicht überein?
Weil die eingegebene RPC-URL eine andere Chain-ID meldet als die, die du eingetippt hast. EIP-3085 verlangt von Wallets, diese Kombination abzulehnen. Prüfe die Nummer gegen die Liste oder rufe eth_chainId auf der URL auf, um zu sehen, welches Netzwerk es wirklich ist.
Ist die Chain-ID dasselbe wie der Hex-Wert in MetaMask?
Ja. MetaMask und JSON-RPC nutzen Hex mit 0x-Präfix, Chainlist und Wallet-Formulare Dezimal, aber 0x2105 und 8453 sind dieselbe Zahl. Rechne zwischen beiden um, aber mische sie nie in einem Feld.
Baue mit ChainGate
Setze diese Ideen in Code um — ChainGate liefert Wallets, Transaktionen und verwaltetes RPC für Ethereum und 20+ weitere Blockchains in einer einzigen Bibliothek.