Understand the concept of "soul binding token" through EIP-5114
Original Author: Overnight Porridge
In January of this year, Vitalik, the co-founder of Ethereum, published an article titled "Soulbound", which mentioned the source of the concept of soul binding - "World of Warcraft", and the associated non-transferable " The concept of "soul binding NFT".
In May, E. Glen Weyl, Puja Ohlhaver, and vitalik co-authored a paper entitled "Decentralized Society: Finding the Soul of Web3", talking about the various aspects of soul-bound NFT (also known as SBT). Use scenarios, including unsecured lending, social recovery wallets, soul airdrops, DAO defense, etc.
So what exactly does "soul binding" mean, and what does the relevant Token standard say?
first level title
"Soul Binding" in World of Warcraft
image description
(For example, after players form a group to kill the final boss Illidan in the Black Temple, there is a very small chance to get the cool-looking orange weapon Azzinoth Warblade.)
Compared with those weapons and equipment that are forged by players and can be traded, soul-bound equipment of the same level has better attributes and is more difficult to obtain.
So are "soulbound" items really untradable?
No, in fact, clever players have long bypassed this binding in two ways.
The first is the so-called "G group" service. Simply put, the organizer (group leader) forms a team that has professionally experienced game copies, and leaves a few positions for consumption of "soul binding" items. Type game players, once the "soul binding" items they need appear, they can conduct auction activities, and the fees paid by consumers need to be distributed within the "G Group". In this way, "soul binding" "It is tradable in disguise, but only before binding.
image description
(Note: The picture comes from a third-party trading platform)
What about the concept of soul-bound NFT (SBT) proposed by vitalik and others? We can understand it through EIP 5114, the Token standard draft.
first level title
EIP 5114: Soulbound Token (Soulbound Token) Standard
Description: Token attached to the "soul" during casting, and this Token cannot be transferred afterwards.
By Micah Zoltu (@MicahZoltu)
Status: Draft stage (Draft)
Category: ERC
Creation time: 2022-05-30
Summary
Summary
specification
specification
```solidity
interface IERC5114 {
// Fired when a new instance of this Token is created
//This event **cannot** fire twice for the same `tokenId`
event Mint (uint256 indexed tokenId, address indexed nftAddress, uint256 indexed nftTokenId);
//Return the NFT token that owns the token
// If the token has not been minted, this function **must** throw
// This function **MUST** always return the same result when called after each build
// This function **MUST** return the same value as was found for the token in the original `Mint` event
function ownerOf (uint256 index) external view returns (address nftAddress, uint256 nftTokenId);
// returns a censorship resistant URI containing details about this token collection; // the metadata returned by this is merged with the metadata returned via `tokenUri(uint256)`
//collectionUri** must** be immutable and content-addressable (eg, IPF://)
//collectionUri **cannot** point to mutable/censorable content (e.g. https://)
//Data from "tokenUri" takes precedence over data returned by this method
// Any external links referenced by content in `collectionUri` must also ** obey all of the above rules
function collectionUri () external view returns (string collectionUri);
// Returns a censorship-resistant URI containing details about this token instance
//tokenUri **MUST** be immutable and content addressable (eg, ipfs://)
//tokenUri **cannot** point to mutable/censorable content (eg, https://)
// data from here takes precedence over data returned by `collectionUri`
secondary title
function tokenUri (uint256 tokenId) external view returns (string tokenUri);
Fundamental
1. Invariance
By requiring tokens to be permanently immovable, we both guarantee non-separability and non-mergability between sets of soul-bound tokens bound to a single NFT, while allowing users to aggressively cache the results.
2. URI content is required to be addressable
Soulbound tokens are permanent badges/indicators attached to a character. This means that not only can users not transfer ownership, but minters themselves cannot withdraw, transfer or change ownership. This includes converting or removing any remote content as a means of censoring or manipulating specific users.
3. tokenUri data format
secondary title
backward compatibility
secondary title
Safety Precautions
Some project parties may claim to have implemented this EIP, and for users, we need to verify that they have done so.
A token author can create a token that may appear to follow the rules when we do an initial probe of its API surface, but it doesn't.
For example, a contract could allow transfers via some mechanism, but simply not use them initially.
It should also be made clear that a soulbound token is not bound to a human, but to a character.
A character is any participant (or even a group of people) who, over time, collects multiple soulbinding tokens to build a collection of badges.
This persona may transfer to another person or group of people, and anyone who interacts with the persona should not assume that there is a permanent person behind the persona.
Additionally, a Soulbound Token can be bound to another Soulbound Token.
copyright
copyright
first level title
Some Views on Soul Binding NFT
Compared with games such as World of Warcraft, the transferability of blockchain accounts will be lower, because the private key is bound to the user's address, which means that even if a certain blockchain account has a large value, the transfer between users It is also impossible to effectively conduct account transactions through third-party platforms or privately during the period (there is a huge risk).
Nevertheless, we still cannot simply assume that the "soul-bound NFT" is bound to the user itself, but we need to consider the possibility of "soul trading". Therefore, for unsecured lending use cases, it may only rely on the chain Credit value is not enough, and some other soul-bound NFT use cases will more or less have such problems.
In my opinion, "soul airdrop" may be the point that is most closely related to everyone. For now, in order to better build a community, the web3 project party will choose to airdrop free Tokens to early active users, which naturally encourages Sybil attacks (that is, a user uses multiple addresses to interact), the result is that the project side tries to block Sybil accounts, while users try to avoid anti-Sybil measures, which is not good for both parties.
The "soul airdrop" method allows the project party to more accurately target the target airdrop users, which in turn encourages users to carefully cultivate their "souls" instead of spending time and energy on sybil attacks.
In general, "soul-bound NFT", as the core concept of a decentralized society proposed by vitalik and others, is still in a very early stage of development. "Being interesting can be very valuable.
Original link
1、https://vitalik.ca/general/2022/01/26/soulbound.html
2、https://www.defidaonews.com/article/6750230


