以太坊域名服務(或稱ENS)是以太坊的新型實現之一。在介紹ENS之前,先來說說DNS。
什麼是DNS?
DNS全稱為Domain Name System(域名系統)。這是一項可將人類可讀網站域名與IP地址相關聯的服務。例如CoinCodeCap.com的IP地址是35.238.103.41。
眾所周知,IP地址很難記。因此為簡化這一過程,DNS應運而生。它透過將IP地址與人類可讀域名相關聯,使人們的生活變得更加便利。
因此我們可以使用coincodecap.com來訪問CoinCodeCap,無需使用35.238.103.41。GoDaddy就是DNS提供商的最佳示例之一。
什麼是ENS?
ENS全稱為Ethereum Name Service(以太坊域名服務),這是在以太坊上構建的去中心化域名服務。ENS用途與DNS類似。
以下為ENS官網上的說明:
“ENS提供了一種安全且去中心化的方式,將簡單的人類可讀域名解析為鏈上及鏈下的地址資源。”
因此,基本上,ENS可以為任何機器可讀資料(如以太坊地址、後設資料、內容雜湊等)分配一個人類可讀域名。這確實與DNS類似。
打個比方,可以將“vitalik.eth”與以太坊地址相關聯。這樣你就可以使用vitalik.eth傳送以太坊,而不用輸入冗長的十六進位制地址。
使用ENS,你可以關聯鏈下資料。例如,你可以用IPFS和ENS來託管網站。
你可以將子域名與你的ENS主域名關聯。
與ENS相關的關鍵術語
讓我們來看看ENS中的一些關鍵術語。
1.域名(Domain Name):人類可讀的完整域名。如:vitalik.eth
2.標籤(Label):一個域的組成部分。如:vitalik。
3.標籤雜湊(Label hash):單個標籤的雜湊版本。
4.域名雜湊(Name hash):在對域名進行標準化,再進行雜湊以得到恆定長度的十六進位制後產生。
5.節點(Node):唯一標識域名的雜湊。
6.所有者(Owner):域名的所有者。所有者可以為域設定解析器和TTL,並轉移域和子域的所有權。
以太坊域名服務的組成部分
以下為ENS的兩大關鍵部分:
1.ENS登錄檔
2.解析器ENS登錄檔是ENS的一個關鍵部分。這是一個用於記錄域名和子域名的智慧合約。登錄檔還可儲存域的所有者、在域下快取TTL以及解析器。
要記住,所有者可以是外部帳戶,也可以是智慧合約。
解析器可以將域名轉換為地址。
那麼你肯定會想,我們是不是需要一個去中心化Web瀏覽器來訪問ENS。其實不一定。你也可以用普通瀏覽器訪問,只要在域名後關聯.link就可以了。
所以,你可以使用eth.link,像普通網頁一樣開啟它。隨著區塊鏈的廣泛落地以及以太坊的普及,ENS可能會在未來幾年成為主流協議。加密錢包已經在使用ENS域名來簡化以太坊地址,以便使用者支付。