今日,一项名为「ERC721R」的全新 NFT 代币标准正式发布,该功能在 NFT 的智能合约内增加了无需信任的退款功能,允许铸造者在特定期限内自由“退货”。
具体来说,采用了 ERC721R 标准的 NFT 在发行之时会设定一个特定时长(项目方自行设定,比如说是一个月时间)的退款周期,在此期间,用户铸造 NFT 所支付的费用将会托管在智能合约内,在退款周期结束之前,项目方无权从智能合约内提取资金,用户(以及二级市场的买方)则可在该周期之内选择退货,将 NFT 还给项目方,同时拿回相应的铸造费用(不包含 gas 费)。
在 ERC721R 的介绍中,该标准的开发者们强调了这么一句话——“NFT 领域需要更强的责任感。”
对于项目方来说,集成 ERC721R 将是一次展示自己责任感的极佳宣誓机会,其需要在退款周期之内向买方市场证明自身的发展能力,证明“我们的货就值这个价”。
而对于用户以及二级市场买家来说,ERC721R 在某种意义上可以理解为筛选项目的一个新维度,同时这也可以视作一个很好的“后悔药”。与未集成该标准的 NFT 相比,ERC721R 受保护的铸造价格显然更具吸引力,当面对一些短线铸造量或交易量极速增长的项目时,用户甚至可以先行铸造或买入,待进一步调研之后再决定是持有还是退款。
考虑到一些 NFT 可以需要铸造费用来维系项目运营,ERC721R 在具体的施行上也支持项目方自己做一些微调,比如仅锁定 90% 的资金,或是仅支持向前 90% 的用户发起全额退款。不过,ERC721R 的开发者们认为这种情况可能并不多见,因为既然项目方能够在没有资金的情况下把 NFT 给发出来,就意味着他们对资金的需求并不会太过强调。
当前,已有一些项目已表态将支持 ERC721R 标准,比如「Curious Addys Trading Club」以及「Crypto Fighters」等等,感兴趣的项目可通过“传送门”提交意向,进而与该标准集成。
整体来看,ERC721R 的设计上矛头直指了 NFT 领域(尤其是 pfp 领域)极为常见的“破发”问题。
随着 NFT 的热度在过去一年间快速攀升,市场早已鱼龙混杂,充斥着大量粗制滥造甚至是纯属诈骗的项目。在过去一段时间内,也有一些其他项目在通过各种努力来试图解决 NFT 的破发问题(比如 HOURAI 做的 DeFi 代币托底),但从普及潜力考虑,ERC721R 显然是一次质的突破,任何对自身的未来发展有绝对信心的项目只需简单集成,即可打消用户的“破发”顾虑。
从 Azuki 团队推出的 ERC721A,到今天的 ERC721R,我们看到越来越多的开发者们正在针对 NFT 领域里一个又一个的问题给出行之有效的解决方案,这或许就是 NFT 行业持续发展的最有力证明吧。
——————————分割线——————————
4 月 12 日 17:30 更新:
GoPocket 核心开发者 Ben 发推称,ERC721R 代码段存在严重 Bug,由于缺少对退款接收地址的限制条件,开发者可通过 BUG 在退款周期内抽走合约中的资金,进而绕开该协议的约束,实现 RugPull。
Ben 表示,正常情况下,在 refundEndTime 解锁过期后 NFT 开发者调用 withdraw() 函数来取走筹集的 ETH,这一步没有问题。问题出在退款 refund() 函数上:NFT 的买家调用 refund() 后会将他铸造的 NFT 转到 refundAddress(该地址由开发者指定并控制),然后从 NFT 合约中拿到相应数量的 ETH,但如果 refundAddress 本身就 mint 了 NFT 呢?骗子项目方可以设置一个 refundAddress,然后用该地址 mint 一个 NFT,下一步他直接调用退款函数 refund(),因为所有的 NFT 都会退款到该 refundAddress,所以他在拿到了一些 ETH 的同时还持有着这个NFT,他可以不断调用 refund() 来掏空合约里的钱。
Ben 认为,这个 Bug 直接让 ERC721R 变得形同虚设,开发者还是可以携款跑路,而且在这种“七天无理由退货叙事”下隐藏得更深,新的 NFT 项目在 ERC721R 更新之前不应该直接使用其代码。
——————————分割线——————————
本新闻仍在持续更新中,关于该标准以及 Bug 相关进展,会继续补充至文内。