当前位置:okx > 头条 > 以太坊新标准EIP-4907是如何实现NFT租赁的?

以太坊新标准EIP-4907是如何实现NFT租赁的?

小欧2022-07-08 10:01:26头条38

在这周,NFT租赁市场 Double Protocol 提交的可租赁 NFT 标准“EIP-4907”通过了以太坊开发团队的最终审核,成为第 30 个 ERC 标准“Final”的状态。

让我们一起来阅读这极简的源代码,来缕清其他是如何实现NFT租赁的?

为什么需要租赁?

NFT 的爆发毋庸置疑,而伴随普及引发了对其资产实用性的需求,尤其是在元宇宙和边玩边赚 (P2E) 的场景下,仅仅单纯的资产所有权并不足以支撑更多的应用玩法的诞生。

一直的痛点是供给不平衡,导致的好项目少,浮于金融玩法的韭菜项目多,既然如今web3有大量web2行业精英在涌入,也必然需要快速的新标准推出,来将创造力的供给释放。

NFT流动性的紧缺,使得他风风火火的同时也备受诟病,他之前产权一体化的金融化操作,市场各类安全问题欺诈、剽窃、钓鱼、跑路、资产被盗层出不穷。

而Eip-4907,想要解决的就是分离NFT的资产价值和使用价值,释放出NFT的市场流动性

源码解读

由于Eip4907极其简单,因此对代码的解读无论是否技术同学均可来尝试理解其细节设计。

2.1 、实现原理:

他作为 ERC-721 的扩展,EIP-4907 增加了一个变量UserInfo,让应用可以查询此NFT当前被租出去的目标地址“user”和出租时间”expires"。如果发现已经超出出租时间,则租赁关系宣告失效。

代码极为简单仅有72行,使用这个标准,就是在原来的ERC721之上新增

  • 1个事件(用于通知链下应用称为事件)

  • 3个方法(用于实现链上数据管理功能)

分别是

  • UpdateUser 事件:当NFT转移,租赁校色设置时,发出租赁用户改变的通知

  • setUser 方法:NFT所有者授权者可用,设置此NFTID的出租用户和过期时间

  • userOf 方法:任何人可用,查询此NFTID的出租用户

  • userExpires 方法:任何人可用,查询此NFTID的过期时间

2.1 、数据结构:

理解ERC标准协议的最佳方式就是理解他管理数据的最底层数据结构


其实NFT只是通过2个映射(_owners,_balances),即一种字典形式的key-value对应关系的存储结构去记录数据

以太坊新标准EIP-4907是如何实现NFT租赁的?-第1张图片

而Eip-4907则是新增了一个数据对象UserInfo在所有权的概念之外增加“用户”的维度

以太坊新标准EIP-4907是如何实现NFT租赁的?-第2张图片

数据结构简单,就意味着管理的方法实现也非常简单

2.2、设置用户setUser 方法

设置用户仅有3个步骤

  • 【审计】此交易的发起者其是否持有此NFTid或是有Approved自动扣款权利

  • 【设置】设置UserInfo中用户的用户地址和到期时间

  • 【通知】发出设置成功的UpdateUser事件

以太坊新标准EIP-4907是如何实现NFT租赁的?-第3张图片

2.3、查询NFTid的用户信息

媒体处处宣传的超时自动失效,而无需二次链上交易登记失效节约gas的逻辑就在这了。

查询的逻辑很简单,按指定的NFTID查询_users的user信息即可,但他增加了,if判断,当前块的时间block.timestamp是否会超过设置的过期时间expires,所以此查询仅在时间内有效。

以太坊新标准EIP-4907是如何实现NFT租赁的?-第4张图片

2.3、查询NFTid的用户过期时间信息

此处无需类似user查询时候判断是否过期,因为得知上一次过期时间,也是加快NFT用户使用率的一种方式。

以太坊新标准EIP-4907是如何实现NFT租赁的?-第5张图片

2.4、租赁关系的强制性设计

此eip4907的协议,对标准交易方法Transfer增加了一部分内容,通过_beforeTokenTransfer实现,就是强制在进行Transfer交易转移后就删除掉这部分对用户的信息,并且发出事件通知已经用户失效了。

以太坊新标准EIP-4907是如何实现NFT租赁的?-第6张图片


“以太坊新标准EIP-4907是如何实现NFT租赁的?” 的相关文章

区块链分析公司Chainalysis于10日宣布免费提供新的加密制裁监控工具

区块链分析公司Chainalysis于10日宣布免费提供新的加密制裁监控工具

区块链分析公司Chainalysis于10日宣布免费提供新的加密制裁监控工具,可识别受制裁的加密钱包。这个识别工具是建基在智能合约上的预言机(oracle),人人都可使用。Chainalysis表示,由于区块链的透明度属性,俄罗斯或金融菁英很难在不被发现的情况下通过加密货币大规模规避制裁。不过,与传...

Coinbase Cloud 停止支持 Terra (LUNA) 基础设施

根据在 Coinbase Cloud 的 Twitter 帐户上分享的官方公告,将停止对 Terra 基础设施的支持。1/ 通过与客户和生态系统参与者的交谈,我们正在做出一个艰难的决定,以减少对 Terra 生态系统的支持。我们将停止对现有 Terra 链的支持,并且目前不打算支持潜在的新 Terr...

Ripple 首席执行官表示,透明度在加密行业中“至关重要”

Ripple 首席执行官 Brad Garlinghouse 在最近的一次采访中谈到了加密货币监管和市场动荡在最近接受Fox Business采访时,Ripple 首席执行官Brad Garlinghouse表示,当被问及 Tether 稳定币时,整个行业必须更加透明。“从早期的 Ripple 和...

V神针对UST崩盘发表新文章:2个评估算法稳定币的思想实验

V神针对UST崩盘发表新文章:2个评估算法稳定币的思想实验

什么是算法稳定币?首先,V神先说明算法稳定币是一个具有以下属性的系统:1.它发行一种试图锚定一个特定的价格指数的稳定币,通常目标是1美元,但也有其他选择。透过一些价格目标机制,当价格偏离任一方向时,会持续推动价格向稳定指数(1美元)靠近,这使得ETH和BTC不是稳定币。2.价格目标机制是完全去中心化...

Shiba Inu 创始人删除所有社交媒体信息

Shiba Inu的项目负责人表示,创始人突然离职后社区将继续前进Shiba Inu 加密货币的化名创始人 Ryoshi今天早些时候删除了他所有的推文以及个人博客文章。“我不重要,总有一天我会毫无征兆地离开。乘坐 SHIBA 向上攀登,”“狗狗币杀手”的创造者写道。Shiba Inu 创始人似乎选择...

基于反身性的代币经济学设计不可持续,DeFi需要结构性的改变

基于反身性的代币经济学设计不可持续,DeFi需要结构性的改变

你喜欢熬夜去思考因果关系困境吗?  比如祖父悖论。假如你回到过去,在自己父亲出生前把自己的祖父杀死,但祖父死了就没有父亲,没有父亲也不会有你,那么是谁杀了祖父呢?或者你的存在表示祖父并没有因你而死,那你何以杀死祖父?  如果你也喜欢DeFi的话,那么你一定也会...