由于去中心化域名和账户体系可以承载应用、网站和用户身份,因此有理由相信,这是Web3世界中不可或缺的一环。撰文:潘致雄
如果回忆一下初次进行的加密货币转账时的体验,特别是在确认收件人地址时,相信你可能会被这几个问题困扰过:这串像乱码一样的地址到底对不对?是需要一个一个字母校验准确性吗?字母大小写乱了要不要紧?漏了一个字母怎么办?如果转账错误可以回滚交易吗?
而相比之下,我们使用的所有常规的互联网产品中,大多数时候只要确认一个简单的姓名、用户名、昵称、手机号或邮箱,就能放心的确认对方的身份或地址。
就好像「用户体验」这件事一直都没提到加密货币世界的优先级中,如此普遍的需求竟然10年后仍旧没有解决。
不过,好在已经有越来越多的初创团队开始探索这个领域了,他们的核心是提供「翻译」的服务,在「计算机语言」和「人类可读语言」之间进行互相的「无损」转译。
这也是为什么现在给以太坊创始人VitalikButerin转账的时候不需要记录下他原始的以太坊账户地址,而是只要记住「vitalik.eth」就行,后者就是一个典型的人类可读的用户名。
其实以比特币和以太坊为首的区块链网络,由于账户底层采用了非对称加密技术,也就是常说的公私钥加密,所以这套系统天然就是对于计算机友好的,也就导致了人类的可读性相当不友好。
为了解决这个问题,这些团队利用了区块链的智能合约功能,或者直接利用公链本身,构建一套「映射」和「翻译」系统,将用户常用的区块链原生的底层地址映射到人类可读的「用户名」,作为用户对外部世界公开的一个「身份」。
目前在构建这类用户可读账户系统的底层协议中,有EthereumNameService、FIO、DAS等几个项目,他们各有自己的特点:ENS最流行、FIO提供了更丰富的功能、DAS的互操作性更出色。
另一个场景:域名系统,即业务入口
而除了账户系统之外,还有一个非常庞大的应用场景,就是「域名系统」。
因为区块链网络不仅仅可以承载用户的资产,在智能合约的加持下还可以提供各类业务或服务,特别是互联网或金融类的业务,也有不少人将基于去中心化技术栈构建的互联网服务称为Web3。
所以这些业务的服务入口,也就是Web2.0中常用的「网站」形式,就可能会发生一些基础设施层面的根本性变化。
简单来说,传统的Web2.0应用,主要是由「域名」和「服务器」组成。然后,通过传统的DNS体系,将域名和服务器所对应的「IP地址」进行映射,这样普通用户也就可以通过「google.com」访问到谷歌的网站了。
而到了Web3的世界中,为了将这两者去中心化,「服务器」提供的存储和计算能力就可以通过IPFS、以太坊、Dfinity等各种去中心化技术组合实现,而社区也寄希望于通过区块链网络将「域名」去中心化。
最早的尝试的Namecoin已经是一个超过十年前的项目了,它通过分叉比特币的代码,创建出了一个以「.bit」结尾的顶级域名的区块链网络,希望更多下游应用集成他们,试图独立并颠覆现有的DNS体系。
不过他们也碰到了自己的问题,毕竟项目的概念过于超前,所以直到8年后才出现几个同类的项目,比如UnstoppableDomains、Handshake等。另外,像ENS和DAS也是同样支持这类应用的,而且ENS也是目前最广泛使用的去中心化域名。
横向对比
在这些去中心化域名和账户系统的协议中,Namecoin和ENS是其中最核心的两个。Namecoin首次利用区块链进行域名的管理,而ENS在以太坊智能合约的加持下成为了一种全新的账户体系和去中心化应用协议栈的一部分。
加上那些新型的协议,所有这些项目都可以分为两大核心场景:专注于域名、专注于账户系统,也有些项目会同时支持两类场景。
「专注于域名」的项目用户场景更多是替代或补充现有的DNS体系,通过与IPFS等协议的集成,可以实现完全去中心化的前端网站的功能,所以他们更关注于与网页浏览器进行合作,提高用户体验。目前ENS和UnstoppableDomains是被浏览器集成最多的协议。
「专注于账户体系」的项目更多的是赋予用户使用该账户体系的场景,比如在去中心化应用中直接集成,而且更需要关注于与加密货币钱包等入口级产品进行合作和集成,提高用户体验。目前也就ENS被广泛的集成在主流的加密货币钱包以及DApp中,而FIO声称获得了许多加密货币钱包的支持,但是实际的采用度上仍处于早期,社区关注度也下滑至几乎不可见。
而另一个核心差别在于注册名称的所有权模式,有的是永久所有权,而有的是租赁模式,需要按年支付一定的租赁费。
可注册永久所有权的协议对用户而言更友好一些,相当于一次支付永久使用,而租赁模式对协议本身更友好,持续的收入可以用来进行协议的维护和功能迭代。
除此之外,各个协议还有是否选择自建公链,具体的注册价格等多种维度的区别。
始祖:Namecoin
Namecoin是比特币最早的Fork之一,甚至早于狗狗币,区块创世时间仅比比特币晚了2年3个月。其非匿名创始人VincentDurham早已退休,协议已交由其他开发者维护。
不过Namecoin可以算是一个失败的尝试了,目前疏于维护也没有具体的应用,所以对这段历史没有兴趣的话完全可以跳过这部分内容直接查看下一章。
所以Namecoin很多参数直接参考了比特币,共2100万个原生代币NMC,但其代币最小单位「swartz」是为了纪念RSS协议和Markdown协议开发者、Reddit联合创始人AaronSwartz,他此前也在博客中描述过一种后来被Namecoin实现的方案。
与那些利用比特币代码再做类似的加密货币不同的是,Namecoin是希望通过区块链技术来存储类似于DNS的记录,也就是将「.bit」与其他具体的IP地址、系统内地址的「映射关系」记录在Namecoin的区块链上。
所以也可以将Namecoin区块链看作是一个维护「.bit」这个顶级域名记录的数据库。至于他们为什么选择「.bit」这个域名,可能是因为这个词代表了计算机领域中二进制的最小单位「比特」。
而对于大多数的传统顶级域名来说,其实是由一家名叫ICANN的非营利机构专门负责管理和维护的,它全称为InternetCorporationforAssignedNamesandNumbers。该机构成立于1998年,位于美国加州,除了管理和协调顶级域名之外,还负责管理全球IP地址的分配。
Namecoin目前还是独立于ICANN体系的,他们选择的「.bit」幸好还不是一个传统的顶级域名,所以未来还是存在兼容或者接入ICANN可能性的。
不过相比中心化管理的ICANN而言,Namecoin的特点还是非常明显的,和比特币一样,它的账本基于分布式存储,网络安全依赖算力,更重要的是它的域名注册过程抗审查,也无需许可。
用户场景:ZeroNet
Namecoin诞生的十年间,最重要的一个用户场景来自于它被「去中心化网络」ZeroNet集成,成为了该网络内的「域名」。
使用起来也很简单,用户可以在注册Namecoin的域名时,将ZeroNet网络内的页面链接映射至某特定「.bit」域名中,然后其他用户就可以使用「xxxxx.bit」访问ZeroNet内的页面了。
对于Namecoin而言,它只是存储了bit域名和第三方系统页面唯一标识符的数据在Namecoin网络的区块链中,而第三方系统只需要运行Namecoin节点就可以获取所有这些关联关系。
说起ZeroNet本身,其实也是一个比较极客和小众的项目,它采用了比特币的密码学技术和BitTorrent的P2P网络技术组建出一个去中心化的网络,在该网络内用户可以无需许可的创建网站或服务,网站内容也会被去中心化分布式存储,也可离线访问。用户只需运行一个ZeroNet的客户端就可以接入该网络。
ZeroNet协议于2015年至2019年之间还在积极开发,但后来却疏于维护管理了。该协议未曾发行代币,且由于过于自由可能会被用在非法暗网等场景中,已被部分国家通过技术手段屏蔽。
如何接入现有基础设施?
Namecoin作为一个独立于ICANN体系的协议,目前还没有办法直接复用现有的互联网基础设施,特别是域名解析的流程。
对于传统域名而言,比如用户在访问「.com」域名时,会通过各级缓存或者DNS服务实现域名与IP地址的解析,这些已经是大多数设备的默认流程了,用户无需感知,拆开即用。
但是对于bit域名的使用者而言,还需要运行特定的软件或者服务才可以实现,这部分会增加用户的上手门槛。
Namecoin区块链数据本身的安全性是由密码学保证的,所以用户需要先运行一个Namecoin的全节点,将所有域名的记录下载到本地。然后还需要运行一个官方的NMControl的工具,它类似于一个本地的DNS服务器,将会兼容和处理所有与互联网之间的连接。
它还是可能会存在一些兼容性上的问题,比如它依赖Python,所以在Windows系统的环境中有点不太友好。官方表示,「NMControl拥有很好的兼容性,但并不完美。」
但距离成为一款大众产品,它还有很多改进空间。
行业标杆:EthereumNameService
毫不夸张的说,以太坊域名服务已经逐渐演变成加密货币市场中影响力最大的账户体系和去中心化域名系统,虽然它仍旧是一个规模很小,用户体验非常初期的项目。
ENS早期是一个由以太坊基金会孵化的项目,它基于以太坊的智能合约实现,所以不需要维护额外的区块链网络,甚至连货币体系也是复用了ETH,最近才公开将发行协议代币。后来随着项目的完善并拥有了持续的现金流,已独立于以太坊基金会运作。
相比较前辈Namecoin,ENS进一步拓展了用途,不仅局限在去中心化域名领域,而是间接地成为了一款具有社区共识的账户体系。
除了很多DeFi以及DApp通过「.eth」域名部署去中心化的前端网站版本之外,很多加密社区的KOL将自己的ENS账户作为推特的名字,而且也有不少应用采用ENS的二级域名作为协议的账户系统。
另外,ENS的去中心化域名的解析能力也已经被集成在了几个加密货币友好的网页浏览器中,比如Brave和Opera等。
另外ENS还提出了另一个神奇的解决方案,相比Namecoin,ENS可以更方便地接入传统互联网的基础设施,兼容所有现有的浏览器。这个方案实现起来其实很简单,就是ENS团队购买了eth.link这个传统的域名,为所有访问ENS域名的用户提供解析服务。
也就是说,用户只要在ENS域名后加上「.link」即可。举个例子,对于有原生解析能力的浏览器来说,访问「uniswap.eth」网址就可以进入Uniswap的去中心化版本的网站,而对于没有原生解析能力的浏览器来说,访问「uniswap.eth.link」也可以访问该网站,因为「eth.link」的持有者是ENS团队,他们可以决定其二级域名「uniswap.eth.link」访问到哪些资源。
不过,eth.link本身是否可访问可能会因国家或地区而异。而且这可能会带来一些中心化的风险,比如eth.link服务器或许会被攻击。所以ENS提供的这个服务是目前阶段下妥协了安全性和用户体验的一种解决方案,长期来看还是需要依赖以太坊区块链的全节点才能确保数据的绝对安全。
反向解析:账户体系初见成效
ENS的反向解析功能在各个去中心化应用中的集成,意味着用户和应用都在将ENS看作是一种底层的账户体系。
有必要先解释一下,对于以太坊的用户而言,通常是先创建一个0x开头的以太坊地址,作为用户的收款地址。然后才考虑注册一个ENS的名称,比如vitalik.eth,将vitalik.eth映射到这个0x开头的以太坊地址,这种被称为正向解析。
>正向解析:vitalik.eth———>0xd8dA...6045
而反向解析则是用户拿着0x的账户地址登录应用后,比如Uniswap的网站,用户就不会看到这串0x开头的地址,而是直接映射到了用户的ENS地址上。
>反向解析:?0xd8dA...6045———>vitalik.eth
这也就意味着用户和应用开始将ENS名称作为自己默认的一种用户名了。更有意思的是,设置过反向解析的地址,会在以太坊用户最大的区块浏览器Etherscan上直接显示ENS账户名。
在反向解析功能刚推出后,社区其实并未大规模意识到该功能的用处,但是ENS团队举办了相关社区活动,鼓励更多应用和用户设置反向解析,所以才被各个应用和用户了解。
第三方协议集成:Web3应用的默认账户系统?
另外ENS也成为了不少协议集成使用的账户系统,一般是通过二级域名的方式实现的,比如三大Web3应用Mirror、Radicle和Argent。
Mirror是去中心化的内容发布平台,文字内容通过存储在Arweave实现永久存储,而业务逻辑和账户系统则是搭建在以太坊之上。由于Mirror拥有Mirror.xyz这个传统域名,而ENS又和xyz域名开展了深度合作,所以xyz域名也可以运作在ENS的体系之中。
Mirror账户系统神奇的地方在于包含了双重功能:既可以作为以太坊地址的映射,也可以作为网站的链接。
用户可以注册一个mirror.xyz的二级域名作为用户的账户名和网址,比如LindaXie的Mirror账户是「linda.mirror.xyz」,在ENS中该账户会解析至一个以太坊地址,而且可以直接在网页浏览器访问该链接进入LindaXie的Mirror页面。
Radicle的做法也比较类似,它是一个去中心化的代码管理工具,在Radicle系统中用户可以注册一个「radicle.eth」的二级域名,作为整个Radicle网络的用户名和唯一标识符。
Argent是一个基于智能合约的加密货币钱包,用户可以注册一个「argent.xyz」的二级域名作为用户的账户名,方便用户使用钱包工具。巧合的是,上述三个项目的官方网站都是.xyz结尾的,是因为ENS早期对于.xyz的支持更友好,目前已经开放至更通用的域名系统了。
新秀:DAS、UnstoppableDomains、Handshake和FIO
除了以上这两个最早的域名系统外,还有几个比较新型的协议也值得关注,特别是DAS、UnstoppableDomains、Handshake和FIO。
DAS:专注互操作性,支持任意区块链
DAS的全称是DecentralizedAccountSystems,它采用Nervos作为该系统的基础设施,也正因为采用了Nervos,它相比以太坊可以实现很多独特的功能,比如可以使用任意公链的私钥来注册和管理DAS。
从具体用例来说,DAS目前已经支持了通过ETH和TRX的私钥来管理和控制DAS协议,这也就意味着以太坊用户可以直接管理到Nervos网络中和DAS相关的智能合约,而不需要生成Nervos的地址。
能实现这个功能是因为Nervos协议的底层设计上更抽象,可以兼容任意区块链的特定密码学算法。比如此前另一个名为PortalWallet的团队曾演示过可以通过以太坊地址收发Nervos网络中的资产,就是因为Nervos可以支持以太坊的公私钥算法。
从钱包支持上来说,DAS应该说是仅次于ENS的了,已经支持了多个主流钱包,包括TokenPocket、imToken、HuobiWallet、AlphaWallet、HyperPay、BitKeep等,像NFTScan,NFTGo这些应用都已经集成了DAS。
另外DAS也采用了「.bit」域名,毕竟这个域名不是Namecoin团队的专利,也没有被ICANN注册过,所以大家也都可以使用,虽然可能会对Namecoin的老用户造成一些困扰,但其实应该已经没有Namecoin的老用户了。
DAS最核心的场景除了可以作为统一的加密货币收款账户,支持收发多链的资产之外,还可以作为个人信息的主页,或作为去中心化网站的域名等。但从团队的愿景和产品名称上来说,DAS更像是一个账户系统,而域名只是附带的一种功能。
在上线主网后DAS的数据增长也是值得关注的,根据官方最新的数据显示,近三个月独立注册的地址数超过了5000个,注册的账户超过了2.5万个,而且目前仅开放了4位以及以上总量的35%,后续应该会随着系统成熟逐渐开放更多可注册账号。
UnstoppableDomains:永久所有权域名
UnstoppableDomains推出了可购买永久所有权的「.crypto」顶级域名,而且UnstoppableDomains在浏览器集成中有非常大的优势,它也几乎支持了ENS支持的浏览器。除此之外,UnstoppableDomains还自己开发了网页浏览器,可以提供更完美的用户体验。
UnstoppableDomains并没有推出独立的区块链,而是基于其他区块链的智能合约即可,比如「.cryptp」的域名服务就是以太坊网络中的智能合约系统,从这个角度来说,它可以比较方便的借鉴ENS协议。
Handshake:可拍卖任何顶级域名
Handshake的野心则更大一些,希望从命名空间的初始开始,搭建出一个完全平行于ICANN的体系,在这个系统中,无论用户想注册「.crypto」还是「.eth」都可以,但是要先进行拍卖,所以它可以提供无限种可能性的域名结构。而且它为了迁移现有的DNS体系,还为那些全球最知名的网站进行了预留,这些域名的持有者只要通过密码学的验证就可以获取在Handshake中的域名。
Handshake是独立的公链,并采取PoW挖矿机制,也有专业的团队推出了Handshake的矿机。不过这可能会带来的一个问题是,原本只需要处理业务逻辑的协议,还需要额外担心网络的算力以及被攻击的可能性,而ENS和UnstoppableDomains只需要依赖以太坊的安全性即可。
FIOProtocol:专注于加密货币钱包集成
FIOProtocol是一个专注于和钱包合作的去中心化账户系统,因为它的全称是FoundationforInterwalletOperability。它最重要的合作方是钱包,因为它是加密货币的入口级应用。与钱包深度集成可以为FIO协议提供更完整的用户体验,比如对于交易功能而言,可以提供「请求交易」、「上下文交易」等功能。
FIOProtocol也推出了自己的区块链网络,采用dPoS共识,这可能会成为它承载高性能的优势,也可能会成为质疑它安全性的劣势。
总结
基于区块链的去中心化域名和去中心化账户系统已经诞生了10年,先驱Namecoin虽然还在运行,但是已经成为了一个小众的项目,用户采用度也比较低。
后来ENS则是走了一条更实用主义的路线,而且随着以太坊生态的快速扩张,也获得很多的红利,许多第三方应用利用它搭建特定的账户系统,成为了以太坊生态不可或缺的一种基础设施。
也正因为它与以太坊生态如此深度的绑定,可能会限制它成为一个更通用的协议,毕竟用一个以太坊域名「.eth」收发Solana、Mina、BTC、BSC之类的资产,总感觉怪怪的。
所以从这个角度来说,「.crypto」、「.bit」或者可自定义顶级域名的协议会更大气一些,他们的域名通用性更好一些。除此之外,这些协议还在从钱包集成、互操作性、所有权模式探索更多可能性。
不过还好这个赛道的项目数量没有像DeFi这么多,也没有特别同质化。无论未来这类协议是一家独大还是多协议并存,其实并不重要,但是我相信在Web3的世界中,一定需要这样的去中心化域名和账户体系,承载应用、网站和用户身份,但目前的这些项目还是处于非常早期的探索阶段,在协议集成、用户体验、与Web2世界的接入,还有很多很多改进空间。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。