What is and how to use the Ethereum Name Service (ENS)

Antonio Madeira
21 Nov 2017

One of the biggest challenges cryptocurrencies face in order to achieve mainstream adoption its ease-of-use. Interacting with online banking platforms may be complicated enough for some, even with the option of tying names to bank accounts. With cryptocurrencies, all we have is a weird segment of letters and numbers which means that users are forced to keep contact lists and are prone to make mistakes when sending coins.

Ethereum is no different, its hexadecimal addresses make it a bit harder to interact with Ether, thankfully a solution is being built and its called ENS, short for Ethereum Name Service. The ENS is an Ethereum-based dapp built on smart contracts. It allows users to register a unique domain name for their wallet address, allowing the transfer of funds to be made directly to a name instead of an address (currently in development).

While this is an extremely useful feature, it doesn't end there. The ENS will also be used for Swarm and IPFS content hashes, and other identifiers, allowing users to easily browse and access files on these networks while providing metadata about names, such as ABIs for contracts, and whois information for users. In a sense, ENS has similar goals to DNS, the Internet’s Domain Name Service, but has significantly different architecture, due to the capabilities and constraints provided by the Ethereum blockchain.

Since the ENS is built on Ethereum smart contracts, it does not suffer from the same lack of security the DNS system does, allowing names to work as intended. Anyone can register a .eth domain name for themselves by participating in an auction process, mediated by the blockchain. Users are required to wait for the name to become available, then they must bid on said name and reveal their bid later. The highest bid will win the name and sees the auctioned ETH locked in a smart contract for a one-year period during which he will be able to add extra data, create subdomains, lease, loan, sell it or do anything with another smart contract.

Today, we're going to show you how to get your own name so that others can easily send Ether to you. In order to register a name, you'll need an Ethereum browser. We're using MetaMask, a handy Chrome app that turns your browser into an Ethereum-enabled one. For this guide, we assume that you already have a wallet. If you don't, then click here check out our guide on MetaMask. Let's get to it.

Step 2: Now enter the name you want to keep in order to see if it's active

If the name is ready for bidding, you'll see this:

Step 3: Choose how much ETH you want to bid

Step 4: Tick the "I Understand" box

Step 5: Click "Bid"

Step 6: Now, a MetaMask windows will popup. You'll see the details of the transaction. The funds will be sent to a smart contract where they will be locked for at least a year, giving you control of the unique name. Confirm the details of the transaction and click "Accept"

Your bid has been placed. You'll see a warning prompting you to download the data related to the bid. This will ensure that you can restore your bid in case of data loss.

Now, you'll see that in 2 days, 12 hours, you'll need to reveal your bid. Once the time comes, you'll have a maximum of 48 hours to reveal your bet.

In two/three days, we'll update the guide with the process of revealing a bid explained.