去中心化身份與 ENS 完整指南
深入解析 DID 的技術原理、ENS 的運作機制、以及它們在實際應用場景中的價值,包括域名服務與身份驗證。
去中心化身份與 ENS 完整指南:域名服務、身份驗證與應用場景
概述
去中心化身份(Decentralized Identity,簡稱 DID)是區塊鏈領域近年來快速發展的重要賽道。傳統網路身份仰賴中心化機構發放的帳戶,帶來了隱私洩露、帳戶被刪除、跨平台身份割裂等問題。去中心化身份旨在將身份的所有權歸還給用戶,透過區塊鏈技術實現可驗證、可攜帶、、抗審查的身份系統。
以太坊名稱服務(Ethereum Name Service,簡稱 ENS)是以太坊生態系統中最成熟的身份基礎設施之一。作為類似 DNS 的去中心化域名系統,ENS 允許用戶將複雜的以太坊地址轉換為人類可讀的名稱(如 alice.eth),同時也是 DID 架構的重要組成部分。本文深入解析 DID 的技術原理、ENS 的運作機制、以及它們在實際應用場景中的價值。
去中心化身份(DID)的技術基礎
傳統身份系統的問題
在傳統網路架構中,用戶身份由服務提供商(如 Google、Facebook、各類網站)發放和管理。這種模式存在根本性缺陷:
- 身份割裂:用戶需要在數十個平台註冊帳戶,每個平台的身份相互孤立
- 隱私風險:中心化機構掌握用戶數據,容易成為攻擊目標
- 帳戶風險:平台可以單方面刪除用戶帳戶,導致身份蒸發
- 驗證低效:每次使用新服務都需要重新驗證身份,浪費時間
DID 的核心概念
去中心化身份試圖透過以下設計原則解決上述問題:
自主權身份(Self-Sovereign Identity,SSI):用戶完全擁有和控制自己的身份數據,無需依賴任何中心化機構。身份數據存儲在用戶控制的錢包或去中心化存儲系統中。
可驗證憑證(Verifiable Credentials,VC):類似於現實中的護照或駕照,由發行人數位簽名的結構化數據。驗證者可以獨立在區塊鏈上驗證憑證的真實性,無需聯繫發行人。
去中心化識別符(DID):全球唯一的去中心化身份標識符,格式類似於 did:ethr:0x1234...。DID 的解析結果是一個 DID 文件,包含與該身份關聯的公鑰、服務端點和其他元數據。
DID 技術標準
W3C DID 規範:World Wide Web Consortium(W3C)制定的 DID 技術標準,定義了 DID 的格式和解析機制。核心組成部分:
- DID 格式:
did:method:identifier
- method: DID 方法名(如 ethr、web)
- identifier:特定方法下的唯一識別符
- DID 文件(DID Document):與 DID 關聯的 JSON-LD 結構文檔,包含:
- @context:語境定義
- id:DID 本身
- verificationMethod:驗證方法(如公鑰)
- authentication:身份驗證方式
- service:服務端點
- DID 解析:透過 DID 方法將 DID 解析為 DID 文件的過程
DID 方法:不同的區塊鏈或身份系統定義了各自的 DID 方法:
| 方法名 | 區塊鏈 | 特點 |
|---|---|---|
| did:ethr | 以太坊 | 基於以太坊地址,簡易高效 |
| did:web | DNS | 將傳統域名映射為 DID |
| did:ion | Bitcoin | 比特幣二層網路,無需 Token |
| did:sol | Solana | Solana 生態 |
| did:cheqd | Cheqd | 專為 SSI 設計 |
以太坊名稱服務(ENS)詳解
ENS 的定位與發展歷程
ENS(Ethereum Name Service)是以太坊基金會於 2017 年資助開發的去中心化域名系統,於 2021 年 11 月正式上線主網。其核心功能是將人類可讀的名稱(如 vitalik.eth)映射到機器可讀的標識符(如以太坊地址、內容哈希、IPFS CID 等)。
ENS 的發展里程碑:
- 2017:以太坊基金會宣布 ENS 項目
- 2018-2020:測試網運行和合約審計
- 2021 年 5 月:名稱拍賣開始
- 2021 年 11 月:正式上線
- 2023-2024:二級市場活躍,生態應用普及
ENS 架構解析
ENS 採用多層合約架構實現域名管理:
Registry 合約(ENS Registry)
ENS 系統的核心是 Registry 合約,負責維護域名所有權和解析記錄的映射。主要功能:
- 註冊新域名(當前僅透過拍賣)
- 轉讓域名所有權
- 設置域名解析器
- 管理子域名權限
Resolver 合約
Resolver 負責處理名稱解析邏輯,將名稱轉換為區塊鏈標識符。ENS 採用模組化設計,允許用戶自定義解析邏輯:
- Address Resolver:將域名解析為以太坊地址
- Content Hash Resolver:解析為 IPFS 或 Swarm 內容哈希
- ABI Resolver:解析合約 ABI
- Text Resolver:存儲任意文本記錄
Registrar
ENS 採用「註冊商」(Registrar)機制管理域名註冊。.eth 是最常用的頂級域名,由合約控制:
- 拍賣註冊商(Auction Registrar):2021 年採用拍賣方式註冊
- 報名註冊商(Name Wrapper):2023 年升級,支援標準 ERC-721 NFT 形式的域名所有權
域名結構與命名規則
ENS 域名採用層級結構:
vitalik.eth
└─頂級域名(TLD):.eth
└─二級域名(SLD):vitalik
長度限制:
- 完整域名最長 1024 字符
- 每個標籤最長 64 字符
- 二級域名最短 3 字符
特殊字符:
- 僅支援字母、數字和連字符
- 不區分大小寫
- Unicode 支援正在開發中
域名註冊與購買流程
ENS 域名透過拍賣機制註冊,流程如下:
步驟一:報價
用戶對心儀的域名提交報價(Blind Bid)。報價金額將被鎖定在合約中,為期 48 小時拍賣期。
步驟二:拍賣結束
48 小時後,用戶揭露自己的報價。最高出價者獲得域名,所有報價將被退還(扣除第一年的註冊費用)。
步驟三:註冊
獲勝者完成註冊,域名歸屬於用戶錢包。註冊期限最長 5 年,到期前可續期。
費用結構:
ENS 域名定價基於名稱長度:
- 3 字符:每年 640 ETH
- 4 字符:每年 160 ETH
- 5+ 字符:每年 32 ETH
2023 年升級後,費用結構有所調整,短名稱費用顯著降低。
ENS 作為 DID 基礎設施
ENS 域名本身可以被視為一種 DID(did:ens:<name>),是構建去中心化身份的重要基礎設施:
鏈上身份綁定:
ENS 域名可以關聯多種區塊鏈標識符:
- 以太坊地址(主要地址和備用地址)
- 比特幣地址
- .solana 地址(Solana 地址)
- IPFS/Swarm 內容哈希
Profile 展示:
透過 ENS 的 Text 記錄功能,可以存儲豐富的個人信息:
- Avatar(頭像)
- URL
- GitHub
- Description
錢包應用(如 MetaMask、Rainbow)會自動解析 ENS 域名並展示關聯的 Profile 資訊,提升用戶體驗。
身份驗證場景:
ENS 域名可用於:
- 接收 ETH 和代幣支付
- 登入 Web3 應用
- 驗證帳戶所有權(透過錢包簽名)
- 建立 Web3 社交圖譜
主流 DID 協議與項目
ENS 與其他 DID 方案的比較
| 特性 | ENS | Spruce ID | Ceramic Network | Polygon ID |
|---|---|---|---|---|
| 域名系統 | 是 | 是 | 否 | 否 |
| 區塊鏈依賴 | 以太坊 | 多鏈 | 多鏈 | Polygon |
| 可驗證憑證 | 部分支援 | 原生支援 | 原生支援 | 原生支援 |
| 數據存儲 | 鏈上+IPFS | 去中心化存儲 | 去中心化網路 | 鏈下 |
| 隱私保護 | 低 | 高 | 中 | 高 |
Spruce ID
Spruce ID 是一家專注於 DID 的公司,提供數位身份驗證解決方案:
核心產品:
- Kepler:去中心化存儲系統,支援將身份數據存儲在星際文件系統(IPFS)
- SpruceID:身份驗證工具包,支援 DID 登入
技術特點:
- 支援 did:ethr 和 did:web 方法
- 提供 SDK 方便應用整合
- 強調用戶隱私和數據主權
Ceramic Network
Ceramic Network 是一個去中心化的數據網路,專為可驗證數據設計:
StreamID 與 Model:
- 每條數據稱為 Stream,由 StreamID 標識
- 數據模型(Model)定義數據結構
- 支援多方編輯和版本控制
應用場景:
- 去中心化社交網路(如 Lens Protocol 基於 Ceramic)
- 數據市場
- 身份憑證
跨鏈 DID 解決方案
隨著多鏈生態的發展,跨鏈 DID 成為重要趨勢:
Space ID:
- 支援多區塊鏈的域名服務
- .bnb、.arb 等域名
- 與 ENS 互補
Lens Protocol:
- Web3 社交圖譜協議
- Profile NFT 代表用戶身份
- 支援跨應用的身份攜帶
ENS 實際應用場景
支付場景
ENS 最直接的應用是簡化加密貨幣支付:
地址簡化:
傳統以太坊地址(0x1234...abcd)難以記憶和輸入。透過 ENS,使用者可以分享簡單的名稱(如 alice.eth)接收付款,錢包會自動解析為完整地址。
多幣種收款:
ENS 支援設置多個地址,用戶可以使用同一個域名接收 ETH、USDC、USDT 等多種資產。
範例配置:
- eth.address: 0xABC... (主要 ETH 地址)
- usdc.address: 0xDEF... (USDC 收款地址)
- bitcoin.address: bc1q... (比特幣地址)
網站與內容托管
ENS 支援將域名解析為內容哈希,實現去中心化網站托管:
IPFS 托管:
- 將網站內容上傳至 IPFS
- 獲取內容哈希(CID)
- 在 ENS 中設置 contenthash 記錄
訪問方式:
用戶在瀏覽器輸入 alice.eth,錢包或瀏覽器插件會:
- 查詢 ENS 解析記錄
- 獲取 IPFS CID
- 從 IPFS 節點獲取並顯示內容
優點:
- 抗審查:內容分佈在全球 IPFS 節點
- 免托管費用:無需傳統伺服器
- 永續存在:只要有節點托管,網站不會消失
去中心化社交
ENS 在 Web3 社交領域扮演重要角色:
用戶名統一:
在 Web3 社交協議中,ENS 域名可用作用戶名。例如:
- 在 Mirror 發表文章
- 在 Lens Protocol 互動
- 在 Warpcast 發布訊息
身份驗證:
ENS 域名可以綁定 Twitter、GitHub 等社交帳戶,實現跨平台身份驗證。
DeFi 應用
ENS 在 DeFi 領域有多項應用:
借貸平台:
- Aave、MakerDAO 等支援使用 ENS 域名作為帳戶標識
- 簡化借貸流程中的地址輸入
交易所:
- Uniswap 等 DEX 支援 ENS 域名顯示
- 中心化交易所逐步支援 ENS 入金
NFT 市場:
- OpenSea、Blur 等支援 ENS 域名展示
- 拍賣時可以使用域名作為出價標識
ENS 進階功能與最佳實踐
Name Wrapper(域名包裝)
2023 年,ENS 推出 Name Wrapper 功能,將域名升級為 ERC-721 NFT:
優勢:
- 標準化:域名成為可交易的 NFT
- 靈活性:支援子域名單獨交易
- 安全性:增加所有權保護機制
運作方式:
包裝後的域名稱為「Wrapped Name」,繼承原域名的所有記錄,同時獲得 NFT 的全部功能(轉讓、抵押、交易)。
子域名 minting
ENS 域名所有者可以創建子域名:
應用場景:
- 為團隊成員分配個人域名
- 為產品創建品牌子域名
- 建立名稱空間管理系統
技術實現:
子域名透過 Registry 合約的 setSubnodeOwner 功能創建,創建者可設定子域名的管理權限。
與 DNS 集成
ENS 支援與傳統 DNS 系統集成:
.xyz、.com 等傳統域名:
透過 CCIP-Reading(Cross-Chain Interoperability Protocol),可以將傳統域名解析到以太坊地址。
反向解析:
ENS 還支援反向解析,將以太坊地址映射回 ENS 域名。
身份驗證技術細節
錢包簽名驗證
基於 DID 的身份驗證通常透過加密簽名實現:
流程:
- 服務端發起挑戰(Challenge)
- 用戶使用錢包私鑰對挑戰進行簽名
- 服務端驗證簽名,確認地址所有權
- 驗證通過後,頒發訪問令牌或關聯身份
優勢:
- 無需密碼
- 無需中心化帳戶
- 驗證即時完成
可驗證憑證(VC)
可驗證憑證是 DID 生態的核心組成:
結構:
{
"@context": ["https://www.w3.org/2018/credentials/v1"],
"type": ["VerifiableCredential", "EmailCredential"],
"issuer": "did:ethr:0x1234...",
"credentialSubject": {
"id": "did:ethr:0x5678...",
"email": "user@example.com"
},
"proof": {
"type": "EcdsaSecp256k1Signature2019",
"created": "2024-01-01T00:00:00Z",
"proofPurpose": "assertionMethod",
"verificationMethod": "did:ethr:0x1234...#key-1",
"jws": "..."
}
}
驗證邏輯:
- 解析 issuer 的 DID 文件
- 獲取驗證公鑰
- 驗證 proof 簽名
- 檢查憑證是否過期或被撤銷
選擇性披露:
先進的 VC 系統支援「選擇性披露」:
- 零知識證明:證明某項屬性為真,而不透露具體值
- 範圍證明:證明值在某一範圍內
- 這增強了隱私保護
隱私保護機制
去中心化身份需要平衡身份驗證和隱私保護:
匿名憑證(Anonymous Credentials):
- 使用戶能夠證明自身屬性而不暴露身份
- 基於密碼學承諾和零知識證明
Sybil 攻擊防範:
- 防止單一用戶創建多個虛假身份
- 透過人格證明(Proof of Personhood)或社交圖譜驗證
鏈上與鏈下數據結合:
- 敏感數據存儲在鏈下
- 僅在鏈上存儲數據哈希或承諾
- 驗證時透過 zk-SNARK 證明數據有效性
風險與挑戰
技術風險
智能合約漏洞:
ENS 合約尽管经过多次审计,但仍存在被攻击的风险。2021 年曾发现 ENS 解析器的重入漏洞。
私鑰管理:
DID 的安全性完全依赖用户私钥。一旦私钥丢失,用户将失去对身份的控制,且几乎无法恢复。
域名到期:
ENS 域名需要定期续费。若忘记续期,域名将被释放并可以被他人注册。
採用障礙
用戶門檻:
- 需要使用加密钱包
- 理解區塊鏈地址概念
- 支付 Gas 費用
生態碎片化:
- 多个 DID 协议并存
- 缺乏互操作性标准
- 应用支持程度不一
監管風險
KYC/AML 要求:
- 可验证凭证可能需要符合监管要求
- 身份验证服务可能面临合规压力
域名抢注:
- 商标侵权风险
- 域名投机行为
- 争议解决机制不完善
未來發展方向
錢包即身份
「钱包即身份」(Wallet as Identity)是重要趋势:
- 钱包不再仅是资产管理工具
- 成为用户的数字身份代理
- 聚合多个 DID 和 VC
去中心化社交圖譜
基于 DID 的去中心化社交网络正在兴起:
- 用户拥有自己的社交数据
- 可携带的关注关系
- 抗审查的内容发布
Lens Protocol、Farcaster 等项目正在这一领域探索。
企業採用
企业正在逐步采用 DID 技术:
- 供应链溯源
- 数字身份证明
- 跨境贸易便利化
互操作性
DID 生态系统正在向互操作方向发展:
- 跨链 DID 解析
- 统一身份标准
- 桥接传统身份系统
結論
去中心化身份是 Web3 时代的重要基础设施,ENS 作为以太坊生态的域名服务,为用户提供了简洁、易用的身份标识方案。从简单的地址映射到复杂的可验证凭证,DID 技术正在逐步重塑数字身份的形态。
ENS 的价值不仅在于将「0x1234...」转换为「alice.eth」,更在于它为去中心化身份系统奠定了基础。通过 ENS,用户可以建立跨应用的身份统一性,实现真正的数字自主权。
然而,DID 的大规模采用仍面临技术门槛、用户体验和监管不确定性等挑战。随着技术的成熟和标准的完善,去中心化身份有望成为数字世界的基础设施,与传统身份系统形成互补。
对于普通用户,建议从注册一个 ENS 域名开始,体验去中心化身份的基础功能。对于开发者,可以探索 ENS SDK 和 DID 协议的集成,为应用添加去中心化身份支持。对于企业,关注 DID 技术的演进,寻找与现有系统结合的机会。
參考資料
- ENS Documentation. docs.ens.domains
- W3C Decentralized Identifiers (DIDs). w3.org/TR/did-core
- Ethereum Name Service: Technical Deep Dive. blog.ens.domains
- Verifiable Credentials Data Model. w3.org/TR/vc-data-model
- SpruceID Documentation. docs.spruceid.com
相關文章
- 以太坊生態系地圖 — 錢包、RPC、瀏覽器、資料服務與開發工具全覽。
- 企業區塊鏈應用場景完整指南 — 深入分析以太坊在企業領域的主要應用場景,包括供應鏈管理、金融服務、數位身份、醫療保健與公共部門等領域的實踐。
- 以太幣與法幣的制度差異 — 比較貨幣發行、審查阻力與長期可預期性。
- 以太坊治理爭議與未來挑戰 — 分析以太坊治理過程中的重大爭議事件、社群分裂原因與未來發展方向。
- 助記詞備份與演練 — 建立可實際恢復的備份流程,避免單點失誤。
延伸閱讀與來源
- Ethereum.org 以太坊官方入口
- EthHub 以太坊知識庫
這篇文章對您有幫助嗎?
請告訴我們如何改進:
評論
發表評論
注意:由於這是靜態網站,您的評論將儲存在本地瀏覽器中,不會公開顯示。
目前尚無評論,成為第一個發表評論的人吧!