源码解读:以太坊新标准EIP-4907是如何实现NFT租赁的?_NFT:RaiseR

内容概要

在这周,NFT租赁市场DoubleProtocol提交的可租赁NFT标准“EIP-4907”通过了以太坊开发团队的最终审核,成为第30个ERC标准“Final”的状态。让我们一起来阅读这极简的源代码,来缕清其他是如何实现NFT租赁的?为什么需要租赁?

NFT的爆发毋庸置疑,而伴随普及引发了对其资产实用性的需求,尤其是在元宇宙和边玩边赚(P2E)的场景下,仅仅单纯的资产所有权并不足以支撑更多的应用玩法的诞生。一直的痛点是供给不平衡,导致的好项目少,浮于金融玩法的韭菜项目多,既然如今web3有大量web2行业精英在涌入,也必然需要快速的新标准推出,来将创造力的供给释放。NFT流动性的紧缺,使得他风风火火的同时也备受诟病,他之前产权一体化的金融化操作,市场各类安全问题欺诈、剽窃、钓鱼、跑路、资产被盗层出不穷。而Eip-4907,想要解决的就是分离NFT的资产价值和使用价值,释放出NFT的市场流动性源码解读

以太坊L2网络总锁仓量为105.7亿美元:金色财经报道,L2BEAT数据显示,截至8月5日,以太坊Layer2上总锁仓量为105.7亿美元。其中锁仓量最高的为扩容方案Arbitrum,约59.3亿美元,占比56.15%;其次是OP Mainnet,锁仓量为29.4亿美元,占比27.88%;第三为zkSync Era,锁仓量为4.64亿美元,占比4.39%[2023/8/6 16:20:48]

由于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、数据结构:

Topia发布首个Layer2 DA协议:金色财经报道,自从Celestia引入模块化区块链架构以来,数据可用性(DA)已经成为一个独立的模块来解决区块链可扩展性的挑战。随着Ethereum的Layer2越来越丰富,Layer2的数据可用性问题也变得越来越紧迫。最近,Topia在Montenegro Edcon Super Demo上推出了第一个Layer2共享数据可用性层协议,旨在为Ethereum的Layer2带来一个互联的数据可用性层,并为未来成千上万的Layer2连接数据可用性。[2023/5/20 15:15:52]

理解ERC标准协议的最佳方式就是理解他管理数据的最底层数据结构例如:前文你买的NFT到底是什么?其实NFT只是通过2个映射,即一种字典形式的key-value对应关系的存储结构去记录数据

德国及美国相关机构关停混币器ChipMixer服务器,并没收1909枚BTC和7TB数据:金色财经报道,据欧盟执法合作署 (Europol) 称,德国和美国相关机构已从加密货币混合器 ChipMixer 处没收 4400 万欧元资金。欧洲刑警组织周三表示,有关当局关闭了该平台的基础设施,没收了四台服务器、7TB 数据和 1909.4 比特币 (BTC)(4770 万美元)。据悉,本次调查行动的理由系 ChipMixer 允许其客户隐藏犯罪行为踪迹,例如勒索软件攻击和支付欺诈以及一些更严重的违法犯罪行为。[2023/3/15 13:06:11]

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

加密矿企Bitfury孵化AI芯片公司Axelera完成2700万美元A轮融资:10月26日消息,加密矿企Bitfury孵化的AI芯片公司Axelera宣布完成2700万美元A轮融资,本轮融资由Innovation Industries领投,Imec.xpand、比利时联邦控股和投资公司参投。此外,荷兰企业局向Axelera授予了由经济事务和气候政策部委托的670万美元贷款。

Axelera于2019年由Bitfury Group孵化,之前作为BitfuryAI运营,2021年开始独立运营,主要开发基于内存计算的芯片,通过在RAM中执行计算以减少存储设备产生的延迟,但该公司的产品进度并不快,预计要到2023年上半年才能向客户发货。(techcrunch)[2022/10/26 16:39:31]

数据结构简单,就意味着管理的方法实现也非常简单2.2、设置用户setUser方法

设置用户仅有3个步骤此交易的发起者其是否持有此NFTid或是有Approved自动扣款权利设置UserInfo中用户的用户地址和到期时间发出设置成功的UpdateUser事件

2.3、查询NFTid的用户信息

媒体处处宣传的超时自动失效,而无需二次链上交易登记失效节约gas的逻辑就在这了。查询的逻辑很简单,按指定的NFTID查询_users的user信息即可,但他增加了,if判断,当前块的时间block.timestamp是否会超过设置的过期时间expires,所以此查询仅在时间内有效。

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

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

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

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

总结

没想到吧,这么快就代码讲完了,因为确实他写完了,对的,不像是之前的通过限制转移权的方法EIP-5058,见前文其实他EIP-4907只是多了个变量,并称之为租赁用户而已,可以声明,但是其他应用认不认就是另一码事了,毕竟其强制性有限,转移就能强行终止出租授权当然你或许会问,为什么这么简单反而火速成为了难得一见,且每次都能掀起一番波浪的Final标准呢?这也就是web3的哲学:越简单,越优雅,剩下的交给共识。我个人认可这样的哲学与趋势web3过去爆发或是得益于金融操作,但是好的生态不能只是金融价值,还需要更有商业价值,需要更广大的用户融入于生活生产形成价值闭环,货币终究只是手段而不是目的本身引用:

https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4907.md前文回顾

OpenSea免费创造的NFT都没上链竟能出现在我的钱包里?你买的NFT到底是什么?EIP-5058能否防止NFT项目方提桶跑路?当我们在看Etherscan的时候,到底在看什么?当奈飞的NFT忘记了web2的业务安全

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

水星链

[0:15ms0-1:43ms