ERC‑7785: Reference Hub
Key specs, resolver docs, and interop resources mentioned across the app.
Overview of the chain registration system
ERC‑7785 defines a deterministic 32‑byte chain identifier derived from a chain’s name and supporting attributes.
This on‑chain Registry aims to replace ethereum‑lists/chains as the canonical source of chain metadata.
bytes32
identifier. Functions: register
, demoRegister
, chainData(bytes32)
.resolve(bytes,bytes)
for reads. Helpers: computeNode
, nodeToChainId
, assign
.- Registry implementation — erc-7785-registry
- ChainRegistry.sol — source
- ChainResolver.sol — source
- Provide ChainData (name, settlement chain ID, version, rollup contract, CAIP‑2 namespace/reference, coin type).
- Send a transaction to
register(ChainData)
; on the Registry or usedemoRegister
to simulate. - The Registry derives
bytes32 chainId
viakeccak256(abi.encode(...fields))
. Read viachainData(chainId)
. - In the Resolver, map a label to
chainId
usingassign
. Helpers:computeNode
→nodeToChainId
. - Resolve reads: call
resolve(bytes,bytes)
(ENSIP‑10) withtext(node, "chain-id")
.
CAIP‑2 Context & Mapping
The CAIP‑2 identifier is the chain selector in the form namespace:reference
(for example, eip155:1
for Ethereum mainnet). This page lets you:
- Resolve a CAIP‑2 identifier to its ChainData via the registry.
- Reverse‑lookup from a CAIP‑2 hash to the chainId and ChainData.
The CAIP‑2 identifier is already present in ERC‑7930 chain‑aware addresses. By incorporating it into the ERC‑7785 chain identifier, we get a direct way to map an ERC‑7930 binary address back to its network using the chain’s CAIP‑2 identifier, and then fetch the authoritative ChainData from the registry.
Reference: ERC‑7785: CAIP‑2 and CAIP‑350 integration
Deployments (Sepolia)
Canonical deployment addresses used across this app.
Core Specs & Proposals
Standards that underpin the registry, resolver, and identifiers.
- ERC‑7785 Proposal — Spec
- Modified ERC‑7785 Proposal. This registry is based on this Spec — Pull Request
- EIP‑155 — Settlement chain IDs
- CAIP‑2 — Chain namespace and reference
- ERC‑7930 — Chain‑aware addresses
ENS Resolvers
Standards and patterns used for reads via ENS.
- ENSIP‑10 — resolve(bytes name, bytes data)
- ENSIP‑11 — Coin types and formats
Interop & OP Stack
Optimism interop explainer.
- OP Docs — Superchain interoperability