Ethereum Name Service(ENS)是一個基於以太坊區塊鏈的分佈式、開放且可擴展的命名系統。
ENS的工作是將像‘alice.eth’這樣的人類可讀名稱映射到機器可讀標識符,比如以太坊地址、其他加密貨幣地址、內容哈希和元數據。ENS還支持“反向解析”,使得可以將元數據如規範名稱或接口描述與以太坊地址關聯起來。
ENS的目標與互聯網的域名服務DNS相似,但由於以太坊區塊鏈提供的能力和約束,它具有顯著不同的架構。與DNS一樣,ENS基於點分隔的層級名稱系統運作,稱爲域名,域名的所有者對其子域擁有完全控制權。
頂級域名,如‘.eth’和‘.test’,由稱爲註冊商的智能合約所擁有,這些註冊商指定了其子域分配的規則。任何人都可以按照這些註冊商合約規定的規則,獲得一個域名以供自己使用。ENS還支持將用戶已擁有的DNS名稱導入以在ENS上使用。
由於ENS的層級性質,任何在任何級別擁有域名的人都可以配置子域名——無論是爲自己還是爲他人。例如,如果Alice擁有'alice.eth',她可以創建'pay.alice.eth'並按照自己的意願進行配置。
ENS已在以太坊主網絡和多個測試網絡上部署。如果您使用像ensjs這樣的Javascript庫或終端用戶應用程序,它將自動檢測您正在與之交互的網絡,並使用該網絡上的ENS部署。