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部署。