通過 EIP-5114 了解「靈魂綁定代幣」 的概念

今年一月份,以太坊聯合創始人 vitalik 發表了一篇題為《Soulbound》的文章,裡面提到了靈魂綁定這一概念的出處——《魔獸世界》,以及由此聯想到的不可轉讓的「靈魂綁定 NFT」的概念。

到了 5 月份,E. Glen Weyl、Puja Ohlhaver 以及 vitalik 又聯合撰寫了一篇題為《去中心化社會:找尋 Web3 的靈魂‌》的論文,談及了靈魂綁定 NFT(又稱 SBT)的多種使用場景,其中包括無抵押借貸、社交恢複錢包、靈魂空投、DAO 防禦等。

那麼“靈魂綁定”到底意味着什麼,以及相關的代幣標準講了一些啥?

本文先通過《魔獸世界》的規則來解釋靈魂綁定這個概念,再通過 Micah Zoltu 撰寫的《EIP-5114:靈魂綁定代幣‌》標準草案來幫助大家進一步認識靈魂綁定 NFT(SBT)的意義。

魔獸世界里的“靈魂綁定”

在《魔獸世界》這個遊戲當中,很多頂級裝備或遊戲道具都是存在“Soulbound”這個設定的,簡單理解就是玩家在拾取后,這些物品就會和遊戲角色進行綁定,無法在交易市場進行流通。

通過 EIP-5114 了解「靈魂綁定代幣」 的概念

例如,玩家組團殺死黑暗神殿中的最終 BOSS 伊利丹之後,就有極小的機率獲得外表酷炫的橙色武器埃辛諾斯戰刃。

相比那些由玩家鍛造出來、可交易的武器裝備,同等級的靈魂綁定裝備屬性要更好,也更難以獲得。

那麼“靈魂綁定”物品真的就是不可交易的嗎?

並非如此,實際上,聰明的玩家們早就通過兩種方式繞過了這種綁定。

第一種是所謂的“G 團”服務,簡單說就是組織者(團長)組建一隻專業過遊戲副本的團隊,並空出幾個位置留給對“靈魂綁定”物品有需求的消費型遊戲玩家,一旦出現了他們需要的“靈魂綁定”物品,就可以進行拍賣活動,而消費者支付的費用,最後需要在“G 團”內部進行分配,通過這種方式,“靈魂綁定”變相實現了可交易,但僅限於綁定前。

除此之外,即便是“靈魂綁定”后的裝備、物品或坐騎,也可以通過賬戶交易的方式進行轉移,也就是說,魔獸世界里的“靈魂綁定”概念,並不是指完全不可轉移的意思,它只是和遊戲角色進行了綁定。

通過 EIP-5114 了解「靈魂綁定代幣」 的概念

(註:圖片來自某第三方交易平台)

那 vitalik 等人提出的靈魂綁定 NFT(SBT)的概念又是什麼樣的呢?我們可以通過 EIP 5114 這個代幣標準草案來進行了解。

注意,該 EIP 目前還是 Draft 階段,因此後期可能會出現一些更改,此外,Tim Daubenschütz 等人也撰寫了一個類似的 EIP-4973 代幣標準‌,因此哪個標準最終會被社區廣泛接受,目前還存在較大的不確定性)。

EIP 5114:靈魂綁定代幣(Soulbound Token)標準

描述:在鑄造時附着在“靈魂”之上的代幣,此後無法轉移這種代幣。
作者:Micah Zoltu (@MicahZoltu)
狀態:草案階段(Draft)
類別:ERC
創建時間:2022-05-30
要求:EIP 721

摘要

靈魂綁定代幣是指在鑄造時綁定到另一個非同質化代幣(NFT,例如一個 EIP-721 代幣)的代幣,並且在鑄造后不能進行轉移。

規範

```solidity
interface IERC5114 {
//在創建這類代幣的新實例時激發
//此事件 ** 不能 ** 為同一個 `tokenId` 激發兩次
event Mint (uint256 indexed tokenId, address indexed nftAddress, uint256 indexed nftTokenId);
//返回擁有該 token 的 NFT token
//如果 token 還沒有被鑄造,這個函數 ** 必須 ** throw
//此函數 ** 必須 ** 在每次生成后調用時始終返回相同的結果
//此函數 ** 必須 ** 返回與原始 `Mint` 事件中為 token 找到的值相同的值
function ownerOf (uint256 index) external view returns (address nftAddress, uint256 nftTokenId);
//返回一個抗審查的 URI,其中包含有關此 token 集合的詳細信息;
//由此返回的元數據與通過 `tokenUri(uint256)` 返回的元數據合併
//collectionUri** 必須 ** 不可變且內容可尋址(例如,IPF://)
//collectionUri** 不能 ** 指向可變/可審查的內容(例如 https://)
//來自“tokenUri”的數據優先於此方法返回的數據
//`collectionUri` 中的內容引用的任何外部鏈接也必須 ** 遵守上述所有規則
function collectionUri () external view returns (string collectionUri);
//返回一個抗審查的 URI,其中包含有關此 token 實例的詳細信息
//tokenUri ** 必須 ** 是不可變的並且內容可尋址(例如,ipfs://)
//tokenUri ** 不能 ** 指向可變/可審查的內容(例如,https://)
//來自此的數據優先於 `collectionUri` 返回的數據
//`tokenUri` 中的內容引用的任何外部鏈接也必須 ** 遵守上述所有規則
function tokenUri (uint256 tokenId) external view returns (string tokenUri);

基本原理

1、不變性
通過要求 token 永久不可移動,我們既保證綁定到單個 NFT 的靈魂綁定 token 集合之間的不可分離性和不可合併性,同時允許用戶積極緩存結果。
2、需要 URI 內容可尋址
靈魂綁定 token 是附加到一個角色上的永久徽章/指示器。
這意味着不僅用戶不能轉讓所有權,而且鑄造者本身也不能撤回、轉讓或更改所有權。
這包括了轉換或刪除任何遠程內容,作為審查或操縱特定用戶的手段。
3、 tokenUri 數據格式
“collectionUri()”和“tokenUri(uint256)”指向的數據格式被有意排除在本標準之外,以支持將來可以迭代的單獨標準。
無論數據格式的細節如何,不變性約束是唯一定義的東西,以確保維護這個 token 的精神。

向後兼容性

這是一種新的 token 類型,並不意味着向後兼容除現有可行靈魂(如 EIP-721 代幣)之外的任何現有代幣。

安全注意事項

一些項目方可能會聲稱實施了這個 EIP,而對於用戶而言,我們需要驗證他們是否如實做到了這一點。
代幣作者可以創建一個 token,當我們在對其 API 表面進行初始探測時,它可能看起來遵循了規則,但實際上並非如此。
例如,合約可允許通過某種機制進行轉賬,而只是最初不使用它們。
還應該明確的是,靈魂綁定代幣並不是綁定的人類,而是綁定到了一個角色。
而角色是指隨着時間的推移,收集多個靈魂綁定代幣以建立徽章集合的任何參與者(甚至可以是一群人)。
這個人物角色可能會轉移給另一個人或另一組人,並且與角色交互的任何人,都不應假設該角色背後有一個永久不變的人。
此外,一個靈魂綁定代幣可以綁定到另一個靈魂綁定代幣。
理論上,如果鏈中的所有代幣同時創建,它們可能會形成一個 loop 循環。如果檢測到循環,嘗試走這樣一條鏈的軟件應該注意制定退出策略。

版權

通過 [CC0](../LICENSE.md) 放棄版權和相關權利。

關於靈魂綁定 NFT 的一點看法

相比魔獸世界這類遊戲,區塊鏈賬戶的可轉讓性會更低,因為私鑰與用戶地址是綁定的,這意味着即便某個區塊鏈賬戶存在着較大的價值,用戶之間也無法有效通過第三方平台或私下的方式進行賬戶交易(存在着巨大的風險)。

儘管如此,我們依舊不能簡單假設「靈魂綁定 NFT」 就是與用戶本身進行了綁定,而是需要考慮“靈魂交易”的可能性,因此,對於無抵押借貸用例而言,可能僅僅依靠鏈上信用值是不夠的,而其他的一些靈魂綁定 NFT 用例,或多或少都會存在這樣的問題。

在筆者看來,「靈魂空投」可能會是和大家最息息相關的一個點,就目前而言,web3 項目方為了更好地建立社區,會選擇給早期活躍用戶空投免費的代幣,而這自然鼓勵了女巫攻擊行為(即一個用戶使用多個地址進行交互),結果是,項目方想法設法去拉黑女巫賬戶,而用戶則在想法設法躲避反女巫措施,這對雙方而言都是不利的。

而「靈魂空投」的方式,可以讓項目方更準確地瞄準目標空投用戶,這反過來也鼓勵用戶精心培養自己的“靈魂”,而不是將時間與精力放到女巫攻擊上面。

總的來說,「靈魂綁定 NFT」作為 vitalik 等人提出的去中心化社會的核心概念,它依舊處於非常早期的發展階段,另一方面,對於用戶來說,想辦法讓自己的“靈魂”變得有趣,可能會是非常有價值的。

相關資料:

1、https://vitalik.ca/general/2022/01/26/soulbound.html

2、https://www.defidaonews.com/article/6750230

3、https://github.com/ethereum/EIPs/pull/5114/files

本文鏈接:https://www.8btc.com/article/6755628

轉載請註明文章出處

(0)
上一篇 2022-06-06 17:09
下一篇 2022-06-06 17:27

相关推荐