Skip to main content

The story of ENS

Learn how ENS grew from an Ethereum Foundation idea into a community-run protocol, and why .eth avoids DNS collisions.

What is ENS?

The Ethereum Name Service (ENS) is the decentralised naming protocol built on the Ethereum blockchain. It adheres to open-source standards and uses a set of decentralised smart contracts to translate blockchain addresses into human-readable names.

You can share your ENS name instead of a long, hard-to-remember crypto address. ENS is not only a naming service for Ethereum: it serves the wider blockchain ecosystem, including 100+ networks. It can name crypto wallets (cross-chain), content hashes, metadata and even smart contracts. Developers assign ENS names to apps and wallets, so users can recognise what they're interacting with onchain.

Zooko's triangle problem

ENS solves all three points of Zooko's Triangle problem — the problem of making a network protocol that is

  • human meaningful

  • secure

  • decentralised

ENS names are programmable and recorded on the Ethereum blockchain.

It works similarly to DNS, in that ENS names resolve long random number and letter combinations into human-readable labels. Because this is done on the Ethereum blockchain, it is secure, decentralised, and transparent.

It is built on the foundation of Open Source programming, which means anyone can examine the code. The software code is published in the open, on the public blockchain ledger.

The beginning of ENS

The blockchain needed a naming system from early on. Ethereum launched in 2015, and by April 2016 former Google engineer Nick Johnson had presented the concept of ENS within the Ethereum Foundation.

In May 2017, the first ENS names were minted, starting with rilxxlir.eth. Its top-level domain (TLD) is .eth, a reserved "special use domain" within the ICANN (Internet Corporation for Assigned Names and Numbers) namespace.

.eth is already reserved for the country of Ethiopia, though not in use. That prevents future naming collisions with DNS and helps ENS integrate with existing DNS systems.

In 2018, ENS branched off from the Ethereum Foundation into its own project, with an EF grant to keep building the protocol.

It adheres to the concept of the Infinite Garden. ENS is part of that Infinite Garden ethos, reflecting the "nurture and grow, but do not control". The core team at ENS Labs was funded through grants, and had no VC investors.

From DNS to ENS

In the early days of the Internet, you found information by IP (Internet Protocol) address. You had to know the machine-readable address of the server that held it.

An IP address is four sets of numbers from 0 to 255, separated by dots — 142.250.64.142, for example, belongs to Google's servers. Easy for computers; hard for people to remember.

DNS, or Domain Name Servers, bridged the gap between what machines need and what people can remember. DNS maps domain names to IP addresses: instead of typing 142.250.64.142 into a browser, you type google.com.

Go ahead and type 142.250.64.142 into a web browser — it routes to the same place as google.com.

ENS does for the blockchain what DNS does for the web: it maps blockchain addresses to human-readable labels.

For example, vitalik.eth maps to the Ethereum address 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Send cryptocurrency to either, and it arrives at the same place.

A DNS name can hold multiple records for different services — an MX record, for example, points to the mail server that handles the domain's email.

ENS names work the same way, and the records aren't limited to Ethereum addresses. You can create any number of records, and smart contracts on the blockchain resolve them.

A name might hold a Bitcoin address, a content record, social handles and an avatar. Developers resolve these records programmatically using Resolvers on the blockchain — to build custom profiles that pull together a user's addresses, assets and decentralised identifiers, for example.

For more information on ENS records, see What is the ETH Address on my ENS name? & Edit your ENS profile.

ENS does not seek to replace DNS. It builds on the groundwork DNS established, using decentralised, secure, censorship-resistant blockchain technology.

By design, ENS is forward-compatible with DNS, which prevents name collisions with the existing DNS namespace.

ENS also extends beyond .eth: you can import a DNS name into ENS, so a .com can use the blockchain.

An imported DNS name stores records on the blockchain just like a .eth name. Import mywebsite.com, and people can send cryptocurrency or NFTs straight to mywebsite.com.

For more information on integrating DNS names with ENS, see Gasless DNS import & Onchain DNS import.

ENS and the blockchain

ENS runs on decentralised smart contracts, so it has no need for the centralised operators and systems DNS relies on.

DNS depends on root servers to answer queries: a lookup asks the root zone, which points to the TLD servers, which locate the resource. At most 13 root name server addresses do this job for the whole Internet.

ENS has no root servers. Records resolve through immutable, transparent smart contracts on Ethereum, with Resolver contracts translating names to addresses and other data.

The code is public and runs on a decentralised network, which makes ENS names censorship-resistant — no geographical restrictions apply.

To view the ENS Contracts GitHub repo, visit GitHub: ens-contracts

ENS is an important set of infrastructure, built as a public good for humanity and not for profit.

Its development is driven by the community and for the community. No single entity or organisation controls the protocol.

It is not possible for ownership of an ENS name to be infringed or censored as outlined in the ENS DAO Constitution.

Changes to the protocol are decided by the ENS DAO (a Decentralised Autonomous Organisation) through governance voting — see the governance process.

Did this answer your question?