Non-transferable NFTs/Tokens (hereafter referred to as NTTs for convenience) have been discussed at length in multiple EIPs[1][2][3][4] and Vitalik’s Soulbound post[5]. All the EIPs consider the NTTs as bounded to a crypto wallet address. However, I think there are two problems with that approach:
-
People might want to migrate their assets from one wallet to another due to various reasons, for example: in case of compromise, rotating private keys, etc.
-
Some people may create dummy wallets to store the NTTs and sell that wallet itself. This would defeat the purpose of the whole credential use case of NTTs.
Some of the implementations in the mentioned EIPs do talk about the reassignment of the NTT at the discretion of the owner of the contract to tackle the 1st problem but I am not sure how effective that would be since convincing the owner of the contract that the wallet in which to transfer the NTT is also owned by the same current owner of the NTT should be difficult.
This brings us to the current topic of discussion: what if we bind an NTT to the ENS of a user as also mentioned in Vitalik’s post[5] i.e. NTTs owned by ENS domain names and not wallet addresses. This would solve the 1st problem since people can change as many wallets as they want as long as they have the domain name with themselves the NTTs will be theirs. And it would mitigate the 2nd problem to some extent assuming that people would not want to trade their ENS domain names as easily as their crypto wallet address.
On the implementation side, this is what I think:
ENS domain names can not be assigned as owners of any ERC20/ERC721/ERC1155 token because they do not have any unique public address. So none of the existing interfaces can be used to create the above-mentioned NTTs. This I think would mean that wallets/marketplaces would not have the support to show these NTT right away but they can implement the new standard if they want.
The goal of this topic is to discuss whether such a standard is needed and can benefit users and the technical challenges in implementing it.
cc: @dtedesco1
References:
[1] https://ethereum-magicians.org/t/eip-4974-fungible-non-tradable-tokens-or-exp/8805
[2] https://ethereum-magicians.org/t/eip-4973-account-bound-tokens/8825
[3] https://ethereum-magicians.org/t/eip-4671-non-tradable-token/7976