NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

深入來聊聊最適合遊戲的NFT標準ERC1155,以及為他設計的提供租賃功能的EIP5006。

原文: 《NFT租賃提案EIP-5006步入最後審核!讓海外大型遊戲的鏈改成為可能》

內容概要

NFT租賃場景的EIP-4907被納入以太坊標準,NFT該如何應用的問題,正在從協議底層得到認可和解答。近期同樣由NFT 租賃市場Double Protocol 提案的針對1155型的NFT租賃標準EIP-5006 ,也已經步入最後審核階段(last call),如無意外將在2022-08-01結束審核。

雖然兩份提案出自同一團隊,但實現與用戶使用方式截然不同!這是為什麼呢?

特別說明! !此標準有風險,鑑權不完全,如需使用注意需重寫權限管理部分(見文末)

通過本文你將理解

  • 為什麼需要豐富的NFT標準

  • 三大主流資產標準的核心差異

  • 5006將如何實現1155型NFT的租賃邏輯

  • 新標準能為”大型遊戲鏈改”提供怎樣動能

1、背景

為什麼需要豐富的NFT標準呢?

721標準的NFT為什麼不夠用?

說句玩笑話,如今的gamefi可謂好玩的不賺錢,賺錢的不好玩。

常見的gamefi項目中,721標準的NFT協議只是起到確權和屬性功能的作用。如下列4中游戲內的NFT道具,猶如只為少數高氪玩家所用的屠龍刀或者深淵通行證。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

但是要遊戲好玩,就不能只有屠龍刀這類高淨值的資產。如今大型遊戲豐富的玩法要做好鏈上改造,更是依賴千奇百怪的場景。 gamefi中要玩法升級,構建完善世界觀離不開各類道具屬性、功能、組合、升級、損耗、多種類數量等等特性,才能避免走向類似axie一般的玩法單一逐步枯竭的終局。

因此即使eip-4907為NFT除了所有者確權之外,帶來了用戶租賃的概念,這是個應用層很好的開始,見前文【源碼解讀】以太坊新標準EIP-4907是怎樣實現NFT租賃的?

但也依舊不能打破721標準下的NFT太過於精簡,無法在足夠宏偉的gamefi場景中得到很好應用的痛點。

而一款活得久的遊戲最小經濟模型,也往往需要3種玩法角色的互相作用達成一種穩定供給平衡。例如Ember Sword 土地項目中的三種角色

  • 基礎生產者PvE:採集資源,打怪升級

  • 挑戰愛好者PvP:贏得高淨值NFT和代幣獎勵

  • 進階創造者UGC:提供藝術創作,做基礎物資與高級資產的連接人。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

所以豐富協議基礎,是Gamefi乃至NFT走向應用價值的必經之路,而1155標準則是較早(2018-06-17)確定主打應用場景的NFT標準。

那咱們深入來聊聊最適合遊戲裡的NFT標準ERC1155,以及為他設計的提供租賃功能的EIP5006。

2、三大主流資產標準的核心差異

業界常說ERC1155等於ERC721+ERC20,要理解標準協議的差異,只需要看他核心存儲的數據是什麼

其實我們可以這麼理解,區塊鏈作為全球的底層賬本,確保了智能合約這種code is Law的能力,即是將規則代碼化,通過固定暴露的接口限定了任何人對他的使用方式,而智能合約裡定義的存儲數據,則是全球共享的數據庫。

2.1 概念普及:20和721是如何定義資產關係的?

其實標準ERC20協議,核心是管理了兩個對應關係,資產和授權關係,這裡只看資產關係

  • _balances :每個地址有多少Token餘額數量

下方則是代碼對數據存儲的定義,猶如一個Excel表格的行與列,Key與value

 mapping(address => uint256) private _balances;

同樣的ERC721則是管理了兩個資產上對應關係

  • _balances :每個地址有多少個NFT

  • _owners :每個NFT的ID對應的所有人地址

mapping(address => uint256) private _balances; mapping(uint256 => address) private _owners;

所以常說NFT 是一個ID走天下,實現了具有唯一資產的確權性,確實畢竟他也只有一個ID。

詳細了解721協議及功能細節

見前文: 【源碼解讀】你買的NFT到底是什麼?

下圖為3大資產標準中合約的方法,都是圍繞資產關係與授權關係的管理

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

2.2 ERC1155多重代幣標準-Multi Token Standard

1155即多重代幣標準,則是管理了1個“嵌套的”資產對應關係

依舊是使用_balances 作為名字,但他的結構則是NFT-ID 對應地址(所有者) 再對應token數量

比如愛死機NFT項目中

見前文: 當奈飛的NFT忘記了web2的業務安全

有9個NFT-ID,我mint得到了4號1個,那數據中會存儲,4號NFT中我的地址持有1個。

 mapping(uint256 => mapping(address => uint256)) private _balances;

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

這麼一看,其實1155簡直是天然適合應用型的NFT標準,因為一個ID可以被多人持有若干份

好比公司的股票發行1W份,分別給1k人持有,雖然持有量影響權益,但都可以叫股東。

好比mirror上鑄造的文章NFT,可以被多人mint走,其收益成為作者的創作收益。

2.3 小結

結合了上述的三種主流資產標準,目前大量遊戲都在將生態內的道具做了資產化。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

並且現在越來越多的遊戲內出現了1155類型的NFT,應用在遊戲內UGC創作場景(如The SandBox和Voxels中的可穿戴裝備和部分消耗性裝飾品資產)

並且OpenSea的為了降低UGC創造新NFT的成本,特地設計基於1155標準的懶惰鑄造(Lazy Mint)特性的共享商店合約,讓創作的NFT只在確定有交易之後才在鏈上形成真正的鑄造,從而大幅度降低使用者成本

雖然筆者並不認同這種改變過多原始標準的設計

見前文: 【解密】OpenSea免費創造的NFT都沒上鍊竟能出現在我的錢包裡?

但是毫無疑問,從2年來每日交易次數來看,確實打開了低成本創作的想像空間。想必未來圍繞Dapp和鏈層之間潤滑劑的中間件相關產業會越來越豐富

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

雖然已經有場景在湧現,但如果從交易規模和總市值維度出發,參考研報數據如下,可以說應用型NFT相對於PFP(頭像類NFT)依舊處於萌芽階段。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

3、EIP-5006 將如何實現1155型NFT的角色租賃?

3.1 簡述721極簡的租賃實現

回溯之前對721標準下角色租賃實現的解讀,

見前文: 【源碼解讀】以太坊新標準EIP-4907是怎樣實現NFT租賃的?

可以發現,之所以如此迅速通過以太坊基金會的審核,來自於簡約而不簡單的實現方式

核心原理是在前文提及的721標準的核心數據之外,額外增加了一個關聯屬性,即指定ID的用戶和過期時間,其他的代碼則是提供了三個接口:

  • 設置承租人 User 的地址與到期時間

  • 查詢NFT-ID當前的User

  • 查詢NFT-ID 當前的租賃到期時間

必須強調的是,毫無任何強制性手段來限制這個user該怎麼用,即不涉及租賃收益計算,也不為nft定價做價值衡量,甚至是這個user可以理解為被租用戶還是藉貸抵押品,都不做標准上定義。

唯一的強制性只在防止BUG上,當我賣掉自己的NFT那麼之前的授權將失效。

都不定義,所以剩下的問題就交給共識,代碼裡只存放最底層規則,即user是他

3.2 1155的租賃實現大不相同

租賃功能面對721標準:一個ID對應一個user和expires到期時間很合理,但1155標準:他這個ID的所有者可不只一個,所以EIP-5006仿照1155的數據結構,額外增加了3種數據來表示嵌套的資產角色租賃關係。

最終呈現出來的特點是

  • 1:不再考慮被租賃的時間!等於是無限期,也完全由owner來控制時間

  • 2:由於租賃無限期,因此所有者需要再次合約交互才能來消除掉租賃狀態。

  • 3:賣出NFT之前,如果超過租出去導致凍結的數量,則需要先消除租賃的部分

通過源代碼可見,他最核心數據是_allowances:

代表著每個NFT-id的每個所有者,分別有哪些租賃用戶分別租了多少。

基本等於是在原始的1155核心數據上,再嵌套一層補充上租賃者和出租量的數據。

 /** mapping(tokenId => mapping(owner => mapping(user => amount))) */ mapping(uint256 => mapping(address => mapping(address => uint256))) private _allowances;

為了使用,提供了4個接口來管理1155的租賃關係

  • setUser:設置某個NFT-id下的某個所有者,設置多少個token數量給某個用戶

  • balanceOfUser :查詢哪個NFT-ID的哪個用戶租賃到多少

  • balanceOfUserFromOwner:查詢某個NFT-ID的某所有者下的某個用戶租賃到多少個

  • frozenAmountOfOwner:查詢某個NFT-ID的所有者其持有的token,已經被租出去多少個了(要凍結掉防止重複出租)

整體來說,不失優雅

雖然使用上和4907差異有所差異(無過期時間)影響了使用成本,也導致所有者更高的應用成本,但依舊是收斂最小的強制性,僅通過對owner的frozen數據的管理來防超額出租的BUG。

3.3 風險點特別說明

此標準目前的實現是有風險的,因為在標準中,對setUser函數定義為公開且為虛函數(表示他可支持繼承重寫)但函數內並未明確限制, ”誰“有權可以去修改”誰的“租賃關係,導致任意用戶可修改任意租賃關係,因此如有項目想使用5006,需要注意繼承後重寫此setUser設置租賃用戶函數。

4、能為大型遊戲的鏈改提供怎樣動能?

當然如果排除他權限上的風險,那可以想像EIP-5006一旦定為標準,將再次掀起NFT走向應用上的熱潮,為何這麼判斷呢?

ERC-4907 的核心價值是為鏈上”原生租賃“提供了技術支撐,實現了NFT 的所有權和使用權的分離,是解決NFT流動性短缺問題的重要基礎設施。

EIP-5006 的核心價值則是將進一步強化圍繞”用戶創作應用場景上“所有權和使用權的分離,明確NFT擴大應用價值的方向,將會湧現更多豐富的玩法、應用場景和衍生品。

正如本文背景部分所述,好的生態內不能只有官方一級發售屠龍刀,好的生態裡,必須引導創作者UGC經濟在整體生態內形成”生產>加工>消費“的循環。

721型NFT的定義往往只來自於官方,極致的稀有度讓所有權的作用遠超過使用權。

而1155型的NFT再結合原生租賃5006的推出,將會讓GameFi生態裡重資產的資金周轉率會大幅提升。因為真正能夠貢獻在線時長的這些海量基礎玩家們,可以用一種比較低信任的方式(非強制性轉移型租賃)去租到遊戲裡的裝備或資源(活動入場權益)等。

這將帶來游戲的DAU和用戶體驗的上升。

目前看Land類型的遊戲,top5中4家已經支持UGC創作,部分使用1155做資產標準。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

同時,各類圍繞遊戲內置可視化編輯器輔助UGC的gamefi項目也在井噴而出。

實用性NFT協議的豐滿,有了更多用鏟子的人,自然就會有更多賣鏟子做鏟子的人。而市場的痛點和需求點倒逼各類NFT應用層的協議豐富起來。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

最後,對比採用強制性限制的租賃標準,參見前文: EIP-5058 能否防止NFT項目方提桶跑路?這種4907和5006的依賴於社會共識的標準將最終佔領市場

code is Law 代碼即是法律,法律威嚴神聖不可侵犯,在區塊鏈的世界,也應該堅持如此,一旦確定規則就原則上不允許反悔。

總之做好定義,剩餘的放心交給社會共識吧

再次強調

當前合約代碼有風險(不算BUG),筆者向項目方提Issues,項目方回复已確認此風險,提交了新修復提案,如使用項目方使用請務必注意權限問題。

NFT租賃提案EIP-5006即將通過,讓大型遊戲鏈改成為可能

引用:

https://eips.ethereum.org/EIPS/eip-1155
https://eips.ethereum.org/EIPS/eip-4907
https://eips.ethereum.org/EIPS/eip-5006
https://etherscan.io/nft/0xfd43d1da000558473822302e1d44d81da2e4cc0d/4
對話:和ERC-4907 項目方早期建設者Winkrypto 一起探討NFT 市場新邏輯-- Buidler DAO
https://mp.weixin.qq.com/s/9ncBsGH7Q1ygJHcU6U9UTQ
文中提及BUG討論過程
https://github.com/ethereum/EIPs/pull/5204
分享至:

作者:十四君

本文為PANews入駐專欄作者的觀點,不代表PANews立場,不承擔法律責任。

文章及觀點也不構成投資意見

圖片來源:十四君如有侵權,請聯絡作者刪除。

關注PANews官方賬號,一起穿越牛熊
PANews APP
過去24小時全網合約爆倉3.29億美元,多空雙爆
PANews 快訊