Standard cryptocurrency deposit and withdrawal flows are designed around static addresses. ENS names break this model by introducing a mutable binding between a human-readable name and an underlying address. An integration that resolves a name to an address at deposit time and then reuses that address indefinitely will eventually send funds to an expired name's new registrant. The operational playbook for ENS must treat name resolution as a time-sensitive, verifiable action, not a one-time configuration step.

Exchange and Custody Integration Checklist
Why ENS Integration Requires a Specific Operational Playbook
Integrating ENS into an exchange or custody platform is not a simple address lookup; it is a stateful, multi-contract resolution process with distinct failure modes that can lead to permanent loss of funds.
The core technical risk is the multi-step resolution process defined by the ENS registry, resolver contracts, and offchain CCIP-Read gateways. A compliant integration must handle wildcard resolution, verify the addr record against the correct coin type, and detect name expiry by checking the registrar controller state. For multi-coin addresses, the resolver's addr(node, coinType) interface must be queried with the correct chain identifier, and the absence of a record must be treated as a hard failure, not a fallback to an Ethereum address. Incorrect coin-type handling has already caused cross-chain fund loss events.
Beyond the smart contract layer, CCIP-Read (EIP-3668) introduces a trust model where offchain gateways supply resolution data. Custodians must decide which gateways to trust, how to handle gateway timeouts, and whether to cache signed responses. A gateway compromise or a DNS hijack of the gateway endpoint can cause a custodian to resolve a name to an attacker-controlled address. Chainscore Labs helps exchange and custody teams build a versioned integration checklist that maps each resolution step to a specific risk control, ensuring that deposit and withdrawal pipelines remain safe as ENS standards, resolver libraries, and gateway implementations evolve.
Integration Quick Facts
Key operational changes and risk vectors for centralized platforms integrating ENS deposits and withdrawals.
| Area | What changes | Who is affected | Action |
|---|---|---|---|
Address Resolution | ENS names resolve to multi-coin addresses via CCIP-Read gateways | Exchange deposit systems, custody wallets | Verify gateway trust model and response signing before enabling resolution |
Name Expiry | Expired .eth names can be re-registered by a new owner | Deposit address mapping, user account systems | Monitor name expiry and warn users before deposits to expired names are accepted |
Multi-Coin Support | A single name can resolve to different addresses per chain | Multi-chain deposit flows, cross-chain settlement | Validate chain-specific address records to prevent cross-chain fund loss |
Normalization | ENSIP-15 defines strict name normalization to prevent homoglyph attacks | UI/UX teams, address input parsers | Implement ENSIP-15 normalization before hashing names to prevent phishing |
Resolver Interface | New resolver versions introduce ABI-based record storage | Integration engineers, SDK consumers | Migrate from deprecated PublicResolver v1 to current resolver interface |
CCIP-Read Callback | Offchain resolution requires a callback transaction with gas | Wallet and deposit flow developers | Estimate gas for callback correctly and handle gateway timeout errors |
Name Wrapper | Wrapped names use ERC-1155 and can have fuses burned | Custody solutions, NFT marketplaces | Update custody logic to handle ERC-1155 wrapped names and irreversible fuse changes |
Gateway Availability | CCIP-Read gateways can experience downtime or return malformed data | Infrastructure and reliability teams | Monitor gateway latency and availability; implement fallback resolution paths |
The Resolution Stack: More Than Just a Lookup
Why treating ENS integration as a simple database lookup creates systemic risk for exchanges and custodians.
Integrating ENS deposits and withdrawals is not a one-time lookup of a name to an address. It is a continuous, multi-layered resolution process that must account for name expiry, resolver changes, and the trust model of offchain gateways. Exchanges that treat ENS resolution as a static mapping risk crediting deposits to stale addresses or failing to detect expired names, leading to direct loss of user funds.
The resolution stack for a single .eth name can involve the ENS registry, a Public Resolver, the CCIP-Read (EIP-3668) offchain gateway infrastructure, and the DNSSEC oracle for DNS-imported names. Each layer introduces its own failure modes: a gateway can return a malicious or stale response, a resolver can be upgraded to a new contract, and a name can expire between the time a deposit is detected and when it is credited. A safe integration must verify the current owner and resolver at resolution time, validate the TTL of offchain responses, and implement a re-check window for expiry before finalizing large deposits.
For custody platforms, the risk compounds when handling multi-coin addresses (EIP-2304) or wrapped names (Name Wrapper). A wrapped name's resolution path may be permanently altered by burning fuses, and a multi-coin address record can point to a non-Ethereum chain where the custodian has no control. Teams must build an integration model that treats every resolution as a time-bound assertion, not a permanent fact. Chainscore Labs reviews exchange and custody integration architectures against this full resolution stack to identify gaps in expiry handling, gateway trust assumptions, and multi-coin address validation before they become loss events.
Affected Teams and Systems
Core Integration Risk
Centralized exchanges and custodians are the primary audience for this checklist. Incorrect ENS resolution logic can lead to irreversible loss of user funds if deposits are routed to expired names, malicious resolvers, or addresses that do not match the user's intent.
Required Actions
- Implement strict name expiry checks before crediting deposits.
- Validate that the resolved address matches the chain and coin type the user selected.
- Do not cache resolution results beyond the name's expiry time.
- Verify CCIP-Read gateway responses against a known trust model before accepting offchain data.
- Test deposit flows against expired, multi-coin, and wildcard names.
Chainscore Support
Chainscore Labs can review your exchange's ENS integration logic, test edge cases in your deposit pipeline, and verify your CCIP-Read gateway trust assumptions to prevent fund-loss scenarios.
Core Integration Impact Areas
Critical control points for centralized exchanges and custodians integrating ENS deposits and withdrawals. Each area addresses a specific failure mode that can lead to fund loss, stuck transactions, or user-impacting resolution errors.
Operational Risk Matrix
Evaluates failure modes and operational risks for centralized exchanges and custodians integrating ENS deposits and withdrawals. Each row identifies a specific risk, its potential impact, and the required action to prevent fund loss or service disruption.
| Risk Area | Failure Mode | Severity | Affected Systems | Mitigation Action |
|---|---|---|---|---|
Expired Name Resolution | Deposits resolved to an expired name are sent to an address no longer controlled by the depositor | Critical | Deposit engines, withdrawal systems | Check name expiry before resolving address; reject deposits to expired names or implement a grace-period policy |
CCIP-Read Gateway Trust | Offchain gateway provides a malicious or incorrect address during resolution, directing funds to an attacker | Critical | Resolution libraries, deposit flows | Verify gateway response signatures against a known set of trusted signers; do not trust unauthenticated gateway data |
Multi-Coin Address Ambiguity | User intends to deposit on one chain but the resolver returns an address for a different chain, causing cross-chain loss | High | Multi-chain deposit UIs, resolver integration | Explicitly request the coinType matching the deposit chain; surface the resolved chain to the user for confirmation |
Normalization Inconsistency | Exchange normalizes a name differently than the ENS registry, leading to resolution of an unintended name | High | Name input sanitization, hashing functions | Implement ENSIP-15 normalization strictly; validate the namehash against the registry before processing |
Resolver Contract Risk | Deprecated or malicious resolver contract returns manipulated data, leading to fund misdirection | High | Address resolution logic | Maintain an allowlist of canonical Public Resolver deployments; verify resolver address against known deployments per network |
Wildcard Resolution Loops | A wildcard resolver misconfigured by a name owner causes infinite resolution loops, crashing the deposit service | Medium | Resolution engine, gateway clients | Implement strict timeout and recursion limits in CCIP-Read call handling; monitor for excessive callback patterns |
Name Wrapper Fuse Lock | Custodian burns PARENT_CANNOT_CONTROL fuse on a wrapped name, permanently losing the ability to return the name | Medium | Custody operations, key management | Train operational staff on fuse semantics; never burn fuses on names held in custody without an explicit, audited process |
Integration Readiness Checklist
A versioned operational checklist for centralized exchanges and custodians integrating ENS deposits and withdrawals. Each item identifies a specific risk vector, the verification signal that confirms safe handling, and the operational rationale. Teams should re-validate this checklist against the latest ENS contract deployments and CCIP-Read gateway behaviors before enabling user-facing ENS resolution.
What to check: Verify that the integration correctly resolves an ENS name to its canonical Ethereum address using a standards-compliant resolution flow (ENSIP-1, EIP-137). The flow must handle the case where a name has no resolver set or the resolver returns an empty address record.
Why it matters: An incorrect or truncated resolution flow can silently map a user's ENS name to the zero address or a stale address, leading to irreversible loss of funds during deposits. This is the highest-severity integration risk.
Readiness signal: The integration's test suite includes negative test cases for names with no resolver, names with a resolver that does not support the addr interface, and names where the addr record is explicitly set to 0x0000.... The deposit flow must halt with a clear user-facing error in all three cases, never defaulting to a fallback address.
Canonical Resources and References
Use these canonical ENS resources to validate exchange and custody integration controls before enabling name-based deposits, withdrawals, or account labeling. Teams should verify current deployments, resolver behavior, and governance status against the linked sources during each release cycle.
Looking to build on a specific blockchain?
We build smart contracts, DeFi applications, wallets, tokenization platforms, and blockchain infrastructure across the major ecosystems teams choose today. That includes Ethereum, Arbitrum, Optimism, Polygon, Avalanche, Solana, Sui, Aptos, Hedera, Stellar, and NEAR, with support for additional EVM and non-EVM networks based on your product requirements.
EVM ecosystems
- Ethereum
- Arbitrum
- Optimism
- Polygon
- Avalanche
- Cronos

Non-EVM ecosystems
- Solana
- Sui
- Aptos
- Hedera
- Stellar
- NEAR
Additional ecosystems
- Polkadot
- Cosmos
- TON
- Cardano
- Algorand
- Tempo
Also available for Base, appchains, custom EVM networks, and cross-chain product architecture.
Frequently Asked Questions
Common operational questions from centralized exchanges and custodians integrating ENS deposits and withdrawals. Covers resolution safety, multi-coin address handling, CCIP-Read trust models, and name expiry detection.
What to check: Your resolution flow must call addr(node) on the resolver contract for the name's node hash, not rely on cached offchain data or third-party APIs as the sole source of truth.
Why it matters: Incorrect resolution logic can result in funds being sent to an address the user does not control. Attackers can exploit stale or unverified resolution data to redirect deposits.
Signal that confirms readiness:
- Your system computes the namehash according to EIP-137 and queries the resolver contract directly onchain.
- You handle the case where
addr(node)returns0x0(no address set) by blocking the deposit and notifying the user. - You verify the returned address matches the user's intended destination before signing the transaction.
Delivering blockchain solutions for 5+ years.
We have partnered with 50+ leading DeFi protocols, NFT ecosystems, and fintech innovators to build secure, scalable, and capital-efficient blockchain products.
Selected Partners & Clients
“I've been working with Chainscore Labs for last 3+ years, they've consistently delivered with strong ownership across multiple projects. The team is reliable and detail-oriented.”
How to get started?
If you're looking for blockchain integration, ChainScore Labs has 5+ years of experience helping teams build and integrate exchanges, wallets, smart contracts, tokenization solutions, and protocol-connected products, we can help you choose the right path, integrate securely, and get to production faster. Our team consists of experienced blockchain developers and architects who can help you with your blockchain integration needs.
Exploration & Strategy
Define your product goals and choose the right blockchain architecture for your use case.
Architecture & Design
Design the smart contracts, tokenomics, and security parameters of your system.
Development & Integration
Build and integrate with wallets, oracles, and front-end dApps for a seamless experience.
Security & Launch
Comprehensive audits followed by a risk-managed mainnet deployment to protect your users.
Discover our
blockchain development services.
We build production-grade blockchain solutions for top-tier projects across DeFi and Web3.
Need a blockchain engineering team?
Send the project context and we will respond with next steps, scope questions, and a practical path to delivery.


