
textERC-6551: The NFT Game-Changer
Original title:
Author: William M. Peaster
Original compilation: GWEI Research
ERC-721 is the token standard that popularizes NFTs on Ethereum as unique, verifiable digital assets.
But what if we could turn a simple NFT into a full-fledged Ethereum account?
Now it is possible! That's because the new token standard ERC-6551 has just come out, pushing Ethereum NFTs into new realms of utility and functionality.
Beginners Guide to ERC-6551
first level title
Basics of ERC-6551
Correlation
ERC-6551 is a new token standard launched on the Ethereum mainnet on May 7, 2023. It significantly enhances the functionality of ERC-721 NFTs, allowing them to function as their own smart contract accounts, making them more versatile and useful than ever before.
Why?
The motivation for ERC-6551 comes from the increasing use of NFTs as a form of on-chain identity. So far, ERC-721 tokens cannot act as proxies or own other on-chain assets, which is out of sync with real-world use cases for non-fungible assets.
Therefore, ERC-6551 solves this problem by granting each ERC-721 token the full functionality of an Ethereum account, while maintaining compatibility with existing ERC-721 contracts. This is accomplished by deploying a unique smart contract account (called a "token-bound account") for each ERC-721 token via permissionless registration.
Note that a single NFT can also have multiple token-bound accounts via ERC-6551. In this sense, one NFT can now contain multiple wallets and so on.
The system introduced in ERC-6551 mainly consists of 1) a permissionless registry for deploying token-bound accounts, and 2) a standard interface for interacting with these accounts.
via EIP-6551
image description
What can I do?
For example, let's say you've been accumulating NFT wearables in a new web3 game. Instead of keeping them in your regular Ethereum wallet, you can now store them in an NFT of your choice, such as player avatars from the same game. Not only is this more interesting and familiar on a psychological level, but if you're ready to move on from the game, you might consider selling player avatars + accumulated wearables as a cohesive unit on the NFT marketplace via ERC-6551 .
via Benny Giang
image description
This is just a hypothetical example, but there are really many possibilities here. As another example, PFP projects can now incentivize and value the extended utility of their collections by airdropping rewards to any holder of a token-bound account in their collections.
Additionally, the fact that ERC-6551 allows NFTs to have multiple token-bound accounts and supports multi-chain token-bound accounts provides an additional layer of utility that is sure to spark a new wave of experimentation and innovation throughout the NFT space .
Precautions
Not all NFT items are supported. That is, projects whose smart contracts do not rely on the ownerOf method are not compatible with the ERC-6551 standard, such as Cypherpunks.
In addition to the lack of full ERC-721 support, ERC-6551 presents two major security concerns that warrant vigilance for the NFT ecosystem:
1. Avoid Fraud: Decentralized marketplaces need to be alert to potential fraud. For example, a user sold an NFT that purportedly held a certain amount of ETH, but then withdrew the ETH after the sale, leaving the buyer's account empty. Some suggested ways to prevent this type of scam include tracking token-bound account nonces and ensuring asset commitments remain the same during transactions. However, preventing fraud is not directly addressed in ERC-6551 and needs to be implemented at the market level or via external smart contracts.
2. Prevent ownership cycle: ERC-6551 may cause NFT to be transferred to its own token binding account, resulting in permanent inaccessibility of all assets in the account. This creates a "loop of ownership" that is difficult to prevent on-chain due to the infinite search space required. While enforcing protection against these loops is outside the scope of ERC-6551, it is recommended that applications take interface measures to limit such transfers.
people's opinion
Benny Giang, co-author of ERC-6551 and co-founder of Future Primitive: "The idea is simple... what if NFTs had their own wallet? Inspired by Soul-Bound Tokens (SBT), our idea is the opposite, we Call it a token-bound account (TBA), and instead of binding the NFT to the wallet, we bind the wallet to the NFT.”
Gami, Nouns DAO member and founder of Gnars DAO and Tings DAO: "ERC 6551 (token-bound accounts) is how I see Nouns since joining [Nouns DAO]. Would love to see us support it in some way ...makes the concept of "entrepreneur" entirely possible. Nouns can be sold along with the things they acquire and build during their travels. "
0x Beans.eth, Solidity Engineer: "ERC-6551 is probably one of the more interesting application-level Ethereum improvement proposals... many interesting properties emerge, such as tradable accounts... ENS is a step towards on-chain identities, NFTs with full Ethereum accounts are the next step I think. This EIP is closely related to EIP 4337 (Account Abstraction). The reference implementation essentially creates ETH accounts and binds them to a token on the coin."
How to use ERC-6551
One of the services provided by Tokenbound, an open-source tool suite centered around the ERC-6551 standard, is an account browser interface that you can use to deploy and interact with ERC-6551 accounts with other people.
If you are interested in deploying your token-bound account to an NFT of your choice, you can follow these steps:
Go to https://tokenbound.org and connect the wallet of your choice
Click the 「My NFTs」 button Click the 「My NFTs」 button
Select the NFT you want, and click the "Deploy Account" button
Confirm the deployment transaction with the wallet and wait for the transaction to complete
That's it! You will now see a "Use Wallet" option in the dashboard for the selected NFT; at the time of writing, I got a "coming soon..." message, so expect full functionality shortly
In fact, keep in mind that ERC-6551 has just arrived on mainnet, so the tools around it are just beginning to be developed. Expect to see various UX and UI advancements here. In the meantime, I recommend taking some time to check out the FAQ at the bottom of tokenbound.org before diving in.
The arrival of ERC-6551 is a historic milestone in the NFT field, opening up a world of new possibilities by turning NFT into your own smart contract account. This brings more versatility to NFTs, but also aligns them more closely with real-world use cases, making them more useful and relevant to users. Zoom out and watch ERC-6551 adoption and experimentation increase in the coming months!