Ethereum Name Service or ENS is one of the emerging implementations of Ethereum. Before getting into ENS, let’s first understand DNS.
What is the Domain Name System (DNS)?
It stands for Domain Name System. It is a service that keeps a record of the human-readable website name associated with their IP address. For example, the IP address of CoinCodeCap.com is 184.108.40.206.
As you can see, the IP addresses are difficult to remember. Therefore, to make it easier, DNS was introduced. It made life easier by associating IP addresses with a human-readable name.
What is ENS?
ENS stands for Ethereum Name Service, which is a decentralized naming service built atop Ethereum.
The purpose of ENS is similar to DNS. According to the information from the official website of ENS.
ENS offers a secure & decentralized way to address resources both on and off the blockchain using simple, human-readable names.
So basically, ENS assigns a human-readable name to any machine-readable data like Ethereum address, metadata, content hashes, etc. As you can see, it is similar to the DNS.
For example, it is possible to associate “vitalik.eth” with an Eethereum address. So, instead of typing the long hexadecimal address, you can use vitalik.eth to send ether.
With ENS, you can associate off-chain data. For example, you can host a website using IPFS and ENS.
You can have subdomains associated with your primary ENS domain name.
Important Terminology associated with ENS
Let’s have a look at some of the important terminologies involved in ENS.
- Domain Name: It is the complete human-readable name. ex: vitalik.eth
- Label: It is a component of the domain. Ex: vitalik.
- Label hash: it is the hashed version of every label.
- Name hash: It is produced when the domain name is normalized and then hashed to give constant length hexadecimal.
- Node: A hash that uniquely represents a name.
- Owner: The owner of the domain name. The owner is responsible for setting the resolver and TTL for the domain. It can transfer the ownership of domain and subdomain.
Components of Ethereum Name Service
Two most important parts of ENS are –
- ENS Registry
ENS Registry is a crucial part of ENS. It is a smart contract that keeps a record of the domain name, subdomain name. The registry is also responsible for storing the owner of the domain, caching TTL under the domain, and the resolver (which we will talk in a while).
It is important to keep in mind that the owner can be an externally owned account, or it can be a smart contract.
Resolver is the place where all magic happens. Resolver is responsible for the actual process of translating names into addresses.
Now you must be wondering, do we need a decentralized web browser to access ENS. The answer is not necessarily. You can access it from a standard browser just by associating .link after the domain name. So, you can use eth.link, and it will open up like a regular webpage.
With the wide adoption of blockchain and gain in popularity of Ethereum, it may be possible that ENS may become the mainstream protocol in the coming years. Crypto wallets are already using ENS names to simplify the Ethereum address for user-friendly payments.
If you want to learn more about the Crypto ecosystem, sign up for the weekly newsletter.