內容概要
在這周,NFT?租賃市場DoubleProtocol提交的可租賃NFT標準“EIP-4907”通過了以太坊開發團隊的最終審核,成為第30個ERC標準“Final”的狀態。
讓我們一起來閱讀這極簡的源代碼,來縷清其他是如何實現NFT租賃的?
為什么需要租賃?
NFT的爆發毋庸置疑,而伴隨普及引發了對其資產實用性的需求,尤其是在元宇宙和邊玩邊賺(P2E)的場景下,僅僅單純的資產所有權并不足以支撐更多的應用玩法的誕生。
一直的痛點是供給不平衡,導致的好項目少,浮于金融玩法的韭菜項目多,既然如今web3有大量web2行業精英在涌入,也必然需要快速的新標準推出,來將創造力的供給釋放。
Scopescan新增Polygon網絡:8月16日消息,Scopescan發布公告,已上線Polygon網絡,可進行地址跟蹤、交易信號獲取、實體追蹤等功能。[2023/8/16 21:27:53]
NFT流動性的緊缺,使得他風風火火的同時也備受詬病,他之前產權一體化的金融化操作,市場各類安全問題欺詐、剽竊、釣魚、跑路、資產被盜層出不窮。
而Eip-4907,想要解決的就是分離NFT的資產價值和使用價值,釋放出NFT的市場流動性
源碼解讀
由于Eip4907極其簡單,因此對代碼的解讀無論是否技術同學均可來嘗試理解其細節設計。
2.1、實現原理:
他作為ERC-721的擴展,?EIP-4907增加了一個變量UserInfo,讓應用可以查詢此NFT當前被租出去的目標地址“user”和出租時間”expires"。如果發現已經超出出租時間,則租賃關系宣告失效。
CZ:UST愿景很好,執行很差:2月14日消息,加密KOL Miles Deutscher發布推特稱,UST一直以來都具備正確的愿景,只是執行地很糟糕。但對強大的去中心化穩定幣的需求并沒有消失。Binance創始人CZ對此評論表示,不幸的是,這是真的。[2023/2/14 12:05:23]
代碼極為簡單僅有72行,使用這個標準,就是在原來的ERC721之上新增
1個事件
3個方法
分別是
UpdateUser事件:當NFT轉移,租賃校色設置時,發出租賃用戶改變的通知
setUser方法:NFT所有者授權者可用,設置此NFTID的出租用戶和過期時間
userOf方法:任何人可用,查詢此NFTID的出租用戶
DigiDaigaku超級碗活動期間出現釣魚鏈接,用戶需警惕資產被盜:2月13日消息,推特用戶Tedtheeast表示,DigiDaigaku上了超級碗,吸引了一批流量到NFT圈,同時也導致很多人被釣魚鏈接盜NFT。如果被盜可以采取下列措施:
1. 首先確保是因為簽名(signature)而不是授權(approval)導致的被盜,區別在于是否支付Gas費。可以在區塊鏈瀏覽器檢查。也可以在http://revoke.cash上取消任何看起來可疑的授權,同時http://revoke.cash也有針對瀏覽器的錢包插件,可以提示惡意網站。
2. 確保助記詞沒有泄露,如果是助記詞泄露,那除了換錢包沒有任何其他辦法。
3. 因簽名導致的NFT和ETH被盜,是一次性的。畢竟對于很多人來說,錢包不是隨便說換就換的,通常除了NFT以外還有其他的DeF代幣在stake或者還沒unlock,還有其他鏈上的資產。
4. 對于已經被盜的資產,it is what it is,最重要的還是提高自身的安全意識,點任何鏈接/授權/簽名之前,一定要仔細查看。
慢霧科技創始人余弦評論稱,“聽說DigiDaigaku超級碗活動這兩天很火,好些人因為其中夾帶的釣魚信息給盜走了不少資產。一定要冷靜,尤其是熱鬧的活動。簡單分析了下,這波和之前懷疑‘朝鮮黑客’的那波沒直接關系。但簽名釣魚手法上,各組織越來越卷,該有的手法都逐步會有,總有一款適合你……”
據此前報道,NFT項目DigiDaigaku母公司Limit Break稱,將鑄造限量Dragons NFT,并斥資650萬美元在2月12日超級碗LVII上播放30秒的互動廣告,屆時將向限量觀眾發放免費的NFT。[2023/2/13 12:03:53]
userExpires方法:任何人可用,查詢此NFTID的過期時間
CZ:Binance從未使用BNB作為抵押物,也從未承擔過債務:11月9日消息,CZ 在其社交平臺表示,從此次 FTX 事件中可以得到兩個教訓:1. 不要使用自己創建的 Token 作為抵押品。2. 如果你經營加密貨幣業務,請不要借貸。不要有效地使用資本。要保證大量的儲備金。
此外,Binance 從未使用 BNB 作為抵押物,也從未承擔過債務。[2022/11/9 12:35:54]
2.1、數據結構:
理解ERC標準協議的最佳方式就是理解他管理數據的最底層數據結構
例如:前文你買的NFT到底是什么?
其實NFT只是通過2個映射,即一種字典形式的key-value對應關系的存儲結構去記錄數據
而Eip-4907則是新增了一個數據對象UserInfo在所有權的概念之外增加“用戶”的維度
數據結構簡單,就意味著管理的方法實現也非常簡單
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的業務安全
原文作者:Bankless分析師?BenGiove 原文編譯:DeFi之道 2021年的數據分析來自于JamesWang的“以太坊2021年第一季度報告”.
1900/1/1 0:00:00尊敬的用戶: ????Asproex將于新加坡時間2021年10月29日15:30正式上線GLD,屆時將開通GLD/USDT交易對.
1900/1/1 0:00:00原文標題:《NeverLetaGoodCrisisGotoWaste:Smrti''sQuarterlyLetters-2Q2022》原文來源:SmrtiLab原文編譯:0x711&cz.
1900/1/1 0:00:00尊敬的用戶: 作為全球領先的區塊鏈資產衍生品交易平臺,PandaFe熊貓一直致力於為全球用戶打造一個安全、友好、公平的交易環境.
1900/1/1 0:00:00尊敬的用戶: 為了更好地提升我們的服務質量,優化用戶體驗,PandaFe熊貓積極迭代優化產品,細緻處理好每一個細節,一切以用戶的體驗為導向.
1900/1/1 0:00:00親愛的PandaFe熊貓用戶:PandaFe熊貓於2022年1月18日正式上線XRP/USDT永續合約交易對.
1900/1/1 0:00:00