Web3 & Me: Complete Guide to the Ethereum Name Service (ENS)
Web3 is here, and so are decentralized web domains. Here's how to get your .ens domains while they're hot using the Ethereum Name Service web app.
Updated Jun 22, 2022
Many companies on MoneyMade advertise with us. Opinions are our own, but compensation and in-depth research determine where and how companies may appear.
When Bitcoin first came along, people became obsessed with it despite it having just two functions: send BTC and receive BTC. What's more, sending BTC to your buddy or a merchant isn't exactly as easy as PayPal due to a lack of human-readable usernames. When blockchain addresses are just long lines of random characters, it presents some issues—they aren't easy to memorize, and one small typo can send your crypto into oblivion.
Ethereum had the same problem in its early days, but thanks to the power of smart contracts, developers were able to come up with a solution: domain names. Just like how the domain naming service gives us the easy-to-remember website URLs we use every day, the Ethereum Name Service (ENS) makes crypto wallet and smart contract addresses easier to read, remember, and navigate to. Here's how ENS works and why you may want to invest in a .eth address.
What is ENS?
What is ENS?
When someone sends a transaction to that .eth domain, the resolver will direct that transaction to the corresponding Ethereum address.
ENS is a decentralized domain name registry for assigning human-readable addresses to Ethereum wallets and smart contracts. ENS domains not only make it easier to identify a wallet or smart contract on the Ethereum blockchain, but they can also be used as links to decentralized webpages. Anyone with enough ETH in their wallet can use the ENS dApp to register a .eth address of their very own—thus turning their 64-character 0x address from random letters and numbers into a succinct readable domain of their choosing.
ENS domains are ERC-721 tokens on the Ethereum blockchain, so they technically use the same token standard as non-fungible tokens (NFT). The main difference is that ENS domains are not purchased for a one-time payment and become yours forever like generative art NFTs. The ENS registry is structured more like the Web2 DNS registry in that the cost of buying a domain is based on how many years you want to own it—currently the going rate for a .eth domain is about 0.0025 ETH per year, not including Ethereum gas fees.
How does ENS work?
How does ENS work?
The ENS protocol uses a very straightforward mechanism to register .eth domains, although it does require several transactions to request a domain, complete registration, and resolve the domain to an Ethereum address. Each of these transactions requires a gas fee based on how much computational power is required to process it. Since gas fees fluctuate, it's recommended to monitor gas levels and wait until they're low to submit transactions. Another gas fee may also be required to edit the content of your ENS domain.
To begin, head over to the ENS app by navigating to app.ens.domain in your browser. To interact with the app, you'll need a Web3 compatible browser and an Ethereum browser extension wallet like Metamask. Even without connecting your wallet to the app, you can use the search function to explore domain name options and see which ones are available. You can also see domain names that have already been registered, the address that owns them, the address they resolve to, and when their registration expires.
Request to register
After you've approved your browser wallet to connect to the ENS app, you'll be eligible to register a .eth domain. Make sure you have enough ETH in your wallet for the registration fee and gas fees before you submit your registration request. Once you've sent enough ETH to your wallet and found an address you'd like to register, you can choose how many years you'd like to register it for and and click the request to register button. After you sign your transaction with your browser extension wallet, you must wait a few minutes while the registry ensures that the domain you want is available.
After the first transaction is signed and the registry approves your request, you'll be prompted to complete your registration by signing another transaction. This transaction will most likely incur the highest gas fee due to the amount of computation it requires. Once the transaction is processed, you'll officially be the owner of a brand new .eth domain—but you're not done yet.
Resolve domain address
Now that you've registered your .eth domain, it's time to resolve it to an Ethereum address of your choosing. You can set the domain to resolve to your own Ethereum address by setting yourself as the controller and putting your Ethereum address in the domain records. You can also set the domain to resolve to another wallet address or even a smart contract address by putting that address in the domain records instead. Now, when someone sends a transaction to that .eth domain, the resolver will direct that transaction to the corresponding Ethereum address.
Another cool feature of ENS domains is that they can function as URLs to a decentralized webpage. While there are limitations to .eth websites, you can create a functional HTML webpage that people can navigate to using your ENS domain. This can be done by coding a webpage in HTML and uploading that HTML file to the InterPlanetary File System (IPFS)—a decentralized peer-to-peer network for distributing data files. Then, all that's left is pasting the IPFS link into your ENS domain's content records, signing the transaction, and paying the gas fee. Your decentralized website should be live after the transaction is processed.
What if one decentralized webpage isn't enough? Well, if you want to get the most out of your ENS domain without having to register another one, the subdomain feature will come in handy. Subdomains enable registrants to add a prefix to their original ENS domain. For example, if I registered moneymade.eth, I could create several subdomains, like crypto.moneymade.eth or stocks.moneymade.eth, with each resolving to a different Ethereum address. Subdomains allow registrants to use one ENS domain for several different applications or even sell subdomains if their particular .eth domain is in high demand.
The ENS registry was originally developed by the Ethereum Foundation, but it became a separate foundation in 2018. As it gained popularity and the ENS ecosystem grew, it needed a new governance structure to maintain adequate decentralization. So, in November 2021, the ENS Foundation launched the ENS token via an airdrop to all its existing domain registrants. ENS is an ERC-20 token, and it can be purchased on most major centralized exchanges like Coinbase.
The ENS token is the governance token of the ENS decentralized autonomous organization (DAO) and is used to vote on decisions that influence the ENS protocol, such as the pricing of .eth domain registrations. Your voting power is proportional to the number of ENS tokens in your wallet, and at least two-thirds of all votes must be in favor for an ENS DAO proposal to gain approval. For a proposal to even be considered, it needs the support of at least 100,000 tokens to go to a vote—constituting 0.01% of the total 100 million ENS token supply.
I will give You all this domain and its glory; for it has been handed over to me, and I give it to whomever I wish.
Domain names are resolved to IP addresses, while Ethereum domains are resolved to Ethereum addresses. This may seem like a small difference to most, but decentralization is nothing to hark at. Classic domain names are at the behest of the non-profit ICANN organization, but there's no centralized control over Web3 domains. While DAOs could be effective for broader decisions, they're not effective at taking assertive or strategic action that keeps Web3 activity above board. What's the solution?