This means you can set up your one ENS name (whether it’s a .ETH name, or a DNS name on ENS like .XYZ) to receive the native coins of 109 blockchains, as well as any tokens or assets that live on those blockchains. For example, having an Ethereum address in your ENS name’s records allows you to receive not only ETH but also any ERC-20 token, NFT, or other Ethereum-based asset; the same is true for a BNB address, TRX address, et al.
ENS can in principle be used to store your address for any blockchain. However, our multi-coin standard stores addresses in binary to save on storage and gas. To handle encoding and decoding addresses, we have an address encoding library. Practically speaking, our Manager and most wallets only support the blockchain addresses supported in that library.
When multi-coin support launched on ENS about a year ago with the help of a grant from BinanceX, we started with support for the addresses of 10 blockchains. We’ve been gradually expanding support in our address encoding library and Manager over the last year, with a big expansion in the last few months with the help of Gitcoin bounties. A big thanks to all the people who contributed!
With this update, we now consider our multi-coin support to be deep enough to encompass nearly all blockchain assets that the vast majority of users would want to receive with their ENS name. Combined with the 171 services with ENS integrated, this is an important step towards our goal of enabling users to use cryptocurrency without having to deal with un-user-friendly addresses.
How to add addresses to your ENS name’s records
Adding addresses to your ENS name’s records is easy:
1. Visit the ENS Manager App and connect your Ethereum wallet
2. Search for your ENS name
Or, if you don’t already have one, register one.
3. Click “Add/Edit Record”
4. Click “Add Record” and select “Addresses”
5. Click “Coin” and either select or type in the blockchain abbreviation you’d like to add
6. Paste in the blockchain address in the text field and click “Save” (you’re not done yet!)
7. Repeat steps 4 through 6, adding as many addresses as you’d like
8. Click “Confirm” at the bottom of the page to add all of the records to the Ethereum blockchain in one transaction
List of supported blockchains
You can see the most up-to-date list on the address encoding library Github repo. Here’s a list of the 109 blockchains whose addresses are supported as of this writing, in alphabetical order:
ABBC, ADA, AE, AIB, AION, ALGO, AR, ARDR, ARK, ATOM, AVAX, BCD, BCH, BCN, BDX, BNB, BPS, BSV, BTC, BTG, BTM, BTS, CCA, CCXX, CELO, CKB, CLO, DASH, DCR, DGB, DIVI, DOGE, DOT, EGLD, ELA, EOS, ETC, ETH, ETN, EWT, FIL, FIO, FIRO, FLOW, GO, GRIN, GXC, HBAR, HIVE, HNS, HNT, ICX, IOST, IOTA, IOTX, IRIS, KAVA, KMD, KSM, LRG, LSK, LTC, LUNA, MONA, NANO, NAS, NEAR, NEM/XEM, NEO, NMC, NRG, NULS, ONE, ONT, POA, PPC, QTUM, RDD, RSK, RVN, SERO, SOL, SRM, STEEM, STRAT, SYS, TFUEL, THETA, TOMO, TRX, TT, VET, VIA, VLX, VSYS, WAN, WAVES, WICC, XDAI, XHV, XLM, XMR, XRP, XTZ, XVG, ZEC, ZEL, ZEN, ZIL
Is there a blockchain we don’t support that you wish we did?
We will also expand the library as new blockchains with significant usage emerge (and we have a few PRs under review right now).
How does multi-coin support work if ENS is on Ethereum?
ENS runs solely on Ethereum but can store any arbitrary data. In addition to storing an Ethereum address, your one name can store an IPFS hash, Tor .onion address, profile info with text records, or even your project’s own record type. You can also store other cryptocurrency addresses.
This works because ENS just stores the addresses, whereas wallets send the transactions on the appropriate network. For example, if I send DOGE to the DNS-on-ENS name brantly.xyz in a wallet with ENS support like Coinbase Wallet, the wallet looks up the name in ENS on Ethereum, retrieves the DOGE address from the name’s ENS records, and then the wallet sends the transaction to that address on the Dogecoin network.