Understanding Ethereum Name Service (ENS): A Decentralized Naming System

5tGG...kNBo
28 Aug 2023
94

Ethereum Name Service (ENS) is a distributed, open, and extensible naming system based on the Ethereum blockchain. ENS allows any user to claim a unique name that points to an Ethereum address, content hash, or metadata. In simple terms, ENS aims to map human-readable names like 'alice.eth' to machine-readable identifiers such as a 16 character Ethereum address like '0x123456789...'.

ENS offers a secure and decentralized way to address resources both on and off the Ethereum blockchain using simple, easy-to-remember names. It is one of the most widely used applications on Ethereum with over 300,000 registered names as of August 2023.

How ENS Works


ENS has a simple architecture consisting of smart contracts on the Ethereum blockchain and a defined set of rules that govern ENS namespaces and resource records.

The ENS registry, the central contract that provides lookups from names to addresses, is a key component of ENS architecture. The ENS registry maintains a list of all .eth domains and subdomains and stores three critical pieces of information - the owner, resolver, and TTL (time to live) for each name.

Ownership records track who owns which name and allow the owner to make changes, transfer ownership, or renew an expired name registration.

Resolver records point to the resolver responsible for the name. The resolver, in turn, points to records for that name which could include an Ethereum address, content hash, and other metadata.

TTL records indicate how long a name will remain valid before it needs renewal. TTL starts counting down when a name is first claimed.

The ENS registry is a central on-chain source of truth for all .eth names. When an application wants to find the address or resolver for a .eth name, it queries the ENS registry.

The ENS resolver is a separate smart contract that applications query to get records associated with a name. Resolvers can return many different resource types including Ethereum addresses, content hashes, and text metadata. This enables using a ENS name to point to addresses, IPFS hosted content, metadata, and more.

The ENS registrar oversees registrations in the .eth namespace. It follows a set of rules to determine the availability of names, facilitate new registrations, renewals, and transfers. There are multiple registrars to cover different use cases - auction registrar for premium names, first-in-first-served registrar, bulk registrar for batches of names, etc.

Let's go through the step-by-step process of how a user registers a name using ENS:

  1. User initiates a request to register a name, say 'bob.eth', by interacting with the ENS registrar contract.
  2. The registrar checks if 'bob.eth' is available. If yes, it facilitates the auction or purchase process as per its rules.
  3. Once the name acquisition is complete, the registrar tells the ENS registry to allocate 'bob.eth' to the user's wallet address. This creates an ownership record that gives the user full control over the name.
  4. The user now becomes the controller of 'bob.eth' and can make further configurations like:
    • Pointing it to an Ethereum address by setting the resolver and address records
    • Setting a resolver and adding metadata like email, url, social media handles
    • Setting up subdomains like 'wallet.bob.eth'


5.An application querying for details of 'bob.eth' follows this resolution process:

  1. i) Query ENS registry for owner and resolver
  2. ii) Query resolver for address record
  3. iii) Fetch address details from the blockchain


This enables the application to display relevant information like Bob's wallet balance, transaction history etc. associated with 'bob.eth'.

The user can renew, transfer, or revoke 'bob.eth' by interacting with the registrar as long as they remain the controller. ENS names are NFTs (ERC-721 tokens) internally, so ownership can be proved on-chain.

Key Benefits of ENS


ENS offers some significant advantages over traditional domain name services:

  • Censorship Resistance - ENS is decentralized and no single entity can revoke or censor an ENS name.
  • Ownership Provenance - Ownership and control of ENS names can be cryptographically verified on-chain.
  • Interoperability - ENS integrates with wallets, browsers, apps and protocols across the Ethereum ecosystem.
  • Usability - Simple and easy to remember .eth names are far more user-friendly than long hex addresses.
  • Extensibility - ENS is an open standard where anyone can build scalable decentralized apps on top.
  • Cryptography - Domains are cryptographically secured on the blockchain. Records are verified via digital signatures.
  • Payments Integrations - ENS enables receiving payments and donations via blockchain transactions.


Some popular ways ENS is being used:

  • As decentralized website hosting through IPFS + ENS
  • Redirecting names to meta-transactions profiles on social media
  • Integrations with email services to provide email aliases
  • Human readable cryptocurrency wallet addresses
  • Linking domain names to decentralized avatar NFTs
  • Self sovereign identity management


Technical Architecture


Under the hood, ENS makes extensive use of decentralized storage, content addressing, multi-signature wallets, smart contract based accounts, and other Web3 building blocks.

The ENS registry is fundamentally a key-value lookup table mapping names to addresses stored on the Ethereum blockchain. To scale for over 300,000 names and unlimited subdomains, ENS organizes the namespace into a tree structure inspired by DNS domains.

The '.eth' root node is owned by the ENS DAO collective and new node labels (names) branch off the roots into domains and subdomains like 'bob.eth' and 'wallet.bob.eth'. Hierarchical naming enables ENS to scale exponentially while optimizing on-chain data storage.

ENS uses resolvers to fetch records by querying chain addresses. Resolvers are modular allowing different implementations tailored for DNS-SEC, Tor onion addresses, ZKP identity hubs etc. Resolvers can also plug into decentralized storage like IPFS for fetching profile data or content.

For the registry and resolvers to remain resilient to attacks, ENS employs decentralized governance via the ENS DAO. Decision making about protocol upgrades, new features, registrar economics are made transparently on-chain via the DAO's governance token.

Cryptography is used under the hood for security. To mitigate spoofing, ENS names are minted as NFTs with ownership proofs. Records employ digital signatures for verification. Hashes and Merkle proofs enable validating state efficiently across subnets.

ENS interfaces with wallets and apps via its PublicResolver smart contract. The PublicResolver provides a simple lookup API for querying ENS records. ENS also offers a Javascript library for convenient integration.

With extensive adoption and a robust architecture built for Web3, ENS aims to replace IP addresses and enable human-friendly decentralized naming for blockchain resources and beyond.

Governance through ENS DAO


The ENS ecosystem is managed as a public good via decentralized governance under the ENS DAO.

The DAO treasury funds ENS development and operations. ENS DAO token holders can shape ENS by:

  • Voting on protocol upgrades and parameters
  • Signaling preference on proposed features
  • Participating in gauge weighted votes to elect working groups
  • Staking tokens in governance contracts to align incentives


This on-chain governance enables ENS to evolve transparently based on community feedback.

The ENS Improvement Proposals (EIPs) process lets anyone suggest an upgrade. EIPs are discussed publicly before a vote by token holders.

The DAO's structure balances power across stakeholders like developers, node operators, governance participants, and community members.

Day to day management is handled by working groups empowered to make decisions about areas like marketing, security, integrations etc.

By decentralizing control, ENS aims to stay neutral, transparent, censorship-resistant in the interest of all users.

Use Cases


Some emerging use cases that highlight ENS' possibilities:

1. Human-readable cryptocurrency addresses
Long hex addresses used by Ethereum wallets are hard to read, share, and transact with. ENS enables assigning names like 'bob.eth' to replace the hex address '0x123456789..'. This improves usability.
2. Website and data hosting
ENS can integrate with decentralized storage systems like IPFS to host websites, blog posts, documents and more on the peer-to-peer network while using the '.eth' name as the link. This provides censorship-resistance and verifiable ownership.
3. Decentralized social profiles
ENS names can point to decentralized social network profiles on platforms like Spectrum and Lens. This establishes a persistent user identity across services.
4. NFT profiles
ENS names can be associated with NFT avatars, collectibles or metaverse identities. So 'alice.eth' can verifiably own her NFT profile across spaces.
5. Email and messaging
With email services built on ENS, users can create uncensorable email aliases mapping to their wallets. Messages and payments can be sent to 'bob.eth' seamlessly.
6. Airdrops
ENS enables targeted token airdrops to domain holders by filtering on '.eth' ownership records on-chain.
7. Sign-in with Ethereum
ENS is building sign-in services to let users login to websites using their wallets and ENS names rather than traditional passwords.
8. DAO Governance
ENS names can represent an on-chain DAO allowing for transparent proposal voting and execution using multi-sig wallets.

By bridging human-readable names with machine-executable contract logic, ENS unlocks censorship-resistant dapps, verifiable ownership of digital assets, and interoperable identity management.

Criticisms and Challenges


However, there are some criticisms and challenges facing ENS:

  • The '.eth' namespace is not universally recognized across all blockchains. Alternate naming systems like Unstoppable Domains use '.crypto'.
  • Registrations can get expensive during launch phases or for premium names sold via auctions.
  • User experience needs simplification for mainstream adoption.
  • Overall decentralization depends on a distributed base of registrars, wallets, browsers supporting ENS.
  • Governance tokens lead to speculative behavior instead of active governance participation.
  • Lack of email service integration diminishes utility for average users.


Despite these limitations, ENS offers a compelling vision of an open, transparent, and user-owned naming infrastructure for a more decentralized internet.

Future Outlook


ENS is well positioned to become a key element of the Web3 stack with steady growth in registrations, rising commercial adoption, and a clear roadmap.

Here are some upcoming developments that could expand ENS' utility:

  • Integration with Layer 2 scaling solutions like Optimism and Polygon to reduce gas costs
  • DNSSEC support to bridge DNS domains with blockchain names
  • Expanded browser support for seamless ENS resolution


-RegisterMessage signing to verify off-chain statements and credentials

  • Decentralized email built on ENS for enhanced privacy
  • Interoperability with DNS roots like .com to unify naming across chains


ENS offers a compelling vision for the future of domain names - open, transparent, community governed. With Web2 giving way to Web3, ENS appears well positioned to emerge as the decentralized internet's naming layer.

Ethereum Name Service offers a robust, decentralized, and extensible naming system native to Ethereum and the broader Web3 ecosystem. By mapping human-readable names like 'bob.eth' to machine-readable identifiers, ENS enhances usability, verifiable ownership, discovery, and interoperability across a wide range of emerging blockchain use cases.

Backed by a transparent on-chain governance process, ENS gives users control over naming without centralized authorities. As Web3 gains momentum, ENS could provide the critical infrastructure for decentralized apps and services that preserve user rights over identity, property, and freedom of expression.

Write & Read to Earn with BULB

Learn More

Enjoy this blog? Subscribe to CapitalThink

5 Comments

B
No comments yet.
Most relevant comments are displayed, so some may have been filtered out.