解析即将过审的多权限 NFT 管理协议 EIP-5496_ETH:TOKEN

撰文:Jason,Buidler DAO Co-founder

对于整个 Web3 行业来说,我认为一切可以降低普通用户进入的门槛和成本的都是好东西,对于 NFT 赛道来说,我认为一切可以增强流动性和实用性的也都是好东西。

在此之前对于可租赁 NFT 协议 4907 也专门写了一篇文章,NFT 发展到后小图片时代下一个叙事我认为就在于更贴近生活场景的实用型 NFT。

首先先对于小图片这个事再啰嗦两句,貌似很多人将小图片看作 NFT 的原罪,将 NFT 嘲讽为小图片,但是我不这样认为,小图片对于 crypto 走向大众视野一定是有不可估量的推动作用,不能拿起碗吃饭放下碗骂娘。

在此之前 crypto 其实对于普通人的理解和参与门槛还是非常高的,花花绿绿的 k 线和刺激的涨跌幅度决定了其还是小部分人的金融游戏,但是 NFT 出现后至少贴在上面的那张小图片是实实在在能看得着的东西,就算不懂金融和加密,不知道挖矿和 defi,但是至少能判断图片好不好看,社区有不有趣,小图片 + 头像带来的社区文化极大的降低了普通用户的理解和参与门槛,极强的推动了大量场外人员的加入,所以小图片对于 crypto 的普及绝对有着极大的功劳不可置否。

只是因为 NFT 的低流动性导致产生的僵尸资产远高于 token,这也就是为什么提升 NFT 流动性很重要,其二是 NFT 的资产属性我觉得只释放出了它一半的价值,因它的唯一性和一切皆可 NFT(URI 挂载)所带来的另一半实用价值价值的想象空间远大于 token,但是迄今为止实用价值还没有被完全释放出来,这依赖于基础设施的建设所带来的应用场景探索,另外实用性的提升也会带来其资产价值的升值,这是一个左脚踩右脚 1+1>2 的效果,单有实用性无资产交易价值的 NFT 我觉得也没什么意思。

SPACE ID与ENS合作实现.bnb.eth和.eth.bnb的相互解析:金色财经报道,Web3域名和身份平台SPACE ID与以太坊域名服务ENS达成合作,通过ERC-3668(CCIP读取)将.bnb域名引入以太坊网络,实现.bnb.eth和.eth.bnb的相互解析。在MetaMask上输入xxx.bnb.eth,会在以太坊上解析为用户的BNB Chain地址。[2023/5/5 14:44:15]

NFT 实用性的背后即持有者权益的赋能,目前最常见的赋能大多集中在资产校验到进入社区这个过程,也能看到逐渐的出现了如阿迪达斯发售的可穿戴 NFT,或是一些可订阅 NFT(我们 BuidlerDAO 社区正在提案中)等。

本文中的 EIP-5496 提供了可共享的多重权限,已经进入到 LastCall 状态即将过审,这里小科普一下 EIP 的流程,它的全称是以太坊改进建议,任何人都可以去提交 EIP,描述你发现以太坊的不足并给出对应解决方案,经过初审后会按照时序给你一个编号,并进行如下图所示的生命周期进行讨论审核。EIP 分为很多类型,包括 Core、Networking 、Interface 、ERC、Meta、Informational,每一类解决的问题都不一样,比如 Core 是涉及到核心的共识分叉等底层内容,耳熟能详的 ERC 就是应用级的标准制定,20、721、3535、4337(账户抽象)、5192(灵魂绑定)都属于这一类,所以 ERC 也是离普通用户最近也最好理解的一层。我平时喜欢看 EIP,它既是一本以太坊的史书,可以了解其从诞生至今所有的问题与建议,同时也是一本预言书,每个 EIP 背后都可能蕴含着巨大的机会,看 EIP 也是把握市场方向的方式,建议大家没事的时候也可以多关注一下:https://eips.ethereum.org/all

ENS开发负责人:以太坊已支持CCIP读取与ENS通配符解析解决方案:3月14日,ENS开发负责人Nick Johnson在推特上表示,以太坊已支持CCIP读取与ENS通配符解析解决方案。据悉,跨链互操作协议(CCIP)为ENS采用的跨链解决方案,旨在支持在二层网络上发行链上的域名。[2022/3/14 13:55:55]

它认为 NFT 除了图片和资产属性外,在不同的场景下都有实用性可以拓展,权益可能是存在于链上如投票权、浏览权、空投权等,或者在链下如购物优惠、餐厅折扣、机场贵宾室使用权等,在 EIP-5496 的眼里每个 NFT 都可以包含多种权益,并且这个权益应该具备几种可选特性:

可验证:权益可以被验证通过

可转移:权益可以被转移给他人

可共享:权益可以被共享给多人

可截止:权益可以被设置有效期

因为作为发行方对于 NFT 的权益赋能可能会有很多,拥有 NFT 的人不一定想使用他们的权益,而传统的 ERC721 只记录 NFT 的拥有权和转让过程,NFT 的权益是不被记录在链上的,EIP-5496 可以让项目方将权益写入链上,并授予特定人群,并且权益拥有者可以独立管理每个权限,从而对于项目方和 holder 均具有权益的管理能力,释放了 NFT 在权益实用性领域的价值。

BitDNS入选火种源计划,将为BitCherry生态应用提供域名解析服务:据官方消息,2021年4月14日,BitDNS成为首批加入BitCherry分布式商业生态的合作伙伴。BitDNS将为BitCherry链上应用提供分布式域名解析服务,实现一键去中心化,帮助企业和个人用户更加便捷、安全的参与数字资产交易,管理链上价值数据信息。BitCherry将携手BitDNS打造去中心化的网络生态系统,建立安全便捷的链上分布式商业生态体系。[2021/4/14 20:18:34]

目前对于项目方来说如果想将 NFT 持有者进行多层权益赋能的方式是空投多类 NFT,如一家航空公司向 Crypto Punk 持有者空投了一系列 NFT 并赋以权益,吸引他们加入航空公司的会员,但是新空投的 NFT 和其主 NFT 不是绑定关系,所以如果 Crypto Punk 主 NFT 被转移,空投的 NFT 依然在原主人手里继续享受权益,而新的主 NFT 持有者则不能自动的享受权益,所以 EIP-5496 可以将权益和底层主 NFT 绑定,并允许用户自主的管理权限。

协议最难的在于如何能够在尽可能简单的程度下,去支持拓展出更多复杂的业务场景,它要求优雅且克制,而不是一昧追求着强大和牛逼,所以接下来我们通过其技术实现看一下到底 EIP-5496 都做了什么事,以及他的设计原则是什么,代码比较多我摘录一些核心内容为大家讲解。

动态 | EOS疑似将推出基于EOS的HandShake DNS解析服务:EOS疑似将推出基于EOS 的 HandShake DNS解析服务,一位开发者的Github显示正在开发EOS-handshake服务。Cosmos社区总监Chjango Unchained4月30日发推表示发现EOS开发者正在复用 Handshake 的开源代码。EOS或许会加入域名解析服务,生态会进一步扩大。(IMEOS)[2019/4/30]

首先在合约中它将权益全部 ID 化,在此之前我以为设置权益的过程,是直接将 NFT 的权益都有什么写入到合约中,比如一个 NFT 有 3 个权益,它并不是通过 string 文本的形式去写【可以打折】【可以使用产品】【可以获得空投】,而是直接设置该 NFT 的权益 ID 为 1、2、3,对没错就在合约里设置好有 3 个权益,而并不会直接将权益内容写进去,这也就是我认为其作为协议优雅和克制之处,权益 ID 化的好处是:

1、我作为协议只需要你来设置有几个权益,每个权益的 ID 是什么,至于具体的权益内容则交给合约外部即链下来决定,就像是一台电脑有 3 个 USB 接口,它可以用来插 U 盘也可以插鼠标,插什么用户自己去决定。

2、权益 ID 化后对于验证权益会非常的方便,比如一个产品要求 NFT 持有者只有具备「可以使用产品」的权益才可以使用,那么当用户打开该产品时,产品代码里需要写一个逻辑去校验用户是否持有该 NFT 且具备对应权限,则需要去做权限名称的逐字匹配少一个字都不行,「可以用产品」和「可以使用产品」对于代码来说就是完全两种不同的权限,但是如果 ID 化,则只需要校验当前 NFT 是否具备「2」权限即可。

摩根士丹利分析师深度报告全解析:比特币“见底”规律及六大必读趋势:摩根士丹利分析师Sheena Shah 19日发表最新研报。主要观点包括:今天正在经历的比特币熊市早就在2000年的纳斯达克市场上演过,只不过是以15倍速度在“快进”;熊市看到唯一交易量增加的数字货币可能就是USDT,尽管USDT的可靠性遭遇广泛质疑,因为交易员们面对各种币的大跌只能暂时先买回USDT;日元升值可能促使日本散户增加对比特币的投资;千币齐跌,但区块链行业依旧火热,对于传统VC来说,参与ICO也有三大好处;比特币与其它币之间的相关性随价格下跌而上升,市场上涨时,它们的相关性反而下降;比特币在不同交易所的价差显示,价格触底反弹的日子,价差会有规律的突然拉大。[2018/3/20]

3、权益的内容变更是比较频繁的,将权益内容放在链下,只将权益 ID 数量放在链上,若项目方对于权益进行改变则不会花 gas 费。

但权益 ID 化之后也同样带来的问题是无法直观的看到这个 NFT 到底都有什么权益,只有 1、2、3 这几个 ID 数字, 还需要第三方产品去单独做一个权益内容的设置和查询功能去索引到对应 ID。

具体的权益数据管理它使用了两个结构体做双层嵌套,首先定义了 PrivilegeRecord,里面存储了用户地址和到期时间两个字段,然后又定义了 PrivilegeStorage,里面存储了最新一次的到期时间,并用 mapping 的方式去将权益 ID 和 PrivilegeRecord 进行了绑定。

_setPrivilegeTotal 函数用于设置全部的权益数量,这个数量会用在赋权的过程中,即只有 3 个数量,那赋权的时候 ID 肯定要小于 3 的。

下图为核心的设置权益的代码,首先设置权限时,需要传入 4 个参数,被设置的 NFT tokenid,要设置的权限 ID,被赋权的用户地址,权限到期时间。在赋权时需要进行 3 个校验条件,分别文是否拥有权限、到期时间是否大于 30 天和权益 ID 是否在总权益范围内,协议对于权益的时间限制必须要超过 30 天的原因我觉得还是比较奇怪的,不知道为什么作为协议要加这么个性化的限制,按理来说应该将这个限制给到项目方自己决定的。

privilegeBook 也是一个 mapping 的数据类型用于管理每一个 NFT 被赋权的情况,代码中对 privilegeBook 进行设置将某个 NFT 的某个权益的某个人设置为被赋权用户地址,然后再更新到期时间。

下图也是很核心的用于判断用户是否持有对应权益的接口,这个接口将作为其他第三方产品验证权益的关键途径,可见传入了三个参数 tokenId、权益 ID 和用户地址,先判断当前权益是否还在有效期内,这里获取了其最新的到期时间来判断是否大于当前区块的时间戳,若存在有效期的话则校验当前 tokenid 的对应权限 ID 的 user 是否为传入的用户地址。

下图为获取某个 NFT 的权益最新的到期时间。

以上就是 EIP-5496 的内容,总体看下来我觉得对于 NFT 在实用性角度是做出了贡献的,但同时它也有自身的局限性,通过上述代码分析可以看到它的权限颗粒度是到了某个具体 NFT 层面,即以 tokenid 为单位,也许是我还没有研究的很透彻,但是如果我想对于某一批甚至整个 collection 的 NFT 均设置权限是非常麻烦的,有 1 万个 NFT 就要设置 1 万次呀,不知道提案人是如何考虑这个问题的,也欢迎大家交流探讨。

总之如文章开头所说,NFT 已经过去了 PFP 的阶段,下一个叙事到底要由什么开启,有待于基础设施和上层应用的创新带来下一次破圈后的增量用户涌入。

金色早8点

金色财经

去中心化金融社区

CertiK中文社区

虎嗅科技

区块律动BlockBeats

深潮TechFlow

念青

Odaily星球日报

腾讯研究院

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:0ms0-5:966ms