This EIP standardizes an interface for smart contracts to hold of EIP-721 and EIP-1155 tokens on behalf of ENS domains.
Currently, if someone wants to receive a token, they have to set up a wallet address. This EIP decouples NFT ownership from wallet addresses.
ERC721TokenReceiver, as defined in EIP-721.claimTo MUST check if msg.sender is the owner of the ENS node identified by bytes32 ensNode (and/or approved by the domain in implementation-specific ways). The compliant contract then MUST make a call to the safeTransferFrom function of EIP-721 or EIP-1155.
Any ensNode is allowed.
ENS was chosen because it is a well-established scoped ownership namespace. This is nonetheless compatible with other scoped ownership namespaces.
We didn't expose getters or setters for ensRoot because it is outside of the scope of this EIP.
No backward compatibility issues were found.
Needs discussion.
Copyright and related rights waived via CC0.