Demystify ERC-6551

Rootz Labs
Rootz Official Pub Hub
5 min readJul 16, 2023

Written by @Lucas @Carrie Chan from Rootz Lab

ERC-6551 is a new Ethereum standard for token bound accounts, which creates a smart contract wallet for every ERC-721 NFT. The update is based on the Proposal 6551 (EIP-6551) created by Future Primitive — an on-chain product studio led by Benny Giang and Steve Jang.

Why do we need ERC-6551?

Pain points of current NFT market users:

  • Inability to own other assets such as tokens or other NFTs.
  • Inability to interact with other smart contracts.
  • Inability to change state, where user input or external factors have no effect.

Concept and Key Points

Allocate a unique contract account for each ERC-721 token, allowing ERC-721 tokens to own assets and interact with apps.

  • Accounts are bound to NFTs. The ownership of a bound account transfers with the transfer of the NFT, creating a tradable wallet.
  • Each NFT can own other assets, including ETH and other ERC-20, 721, and 1155 tokens.
  • Can be used for both existing and future NFTs. Existing NFTs do not require changes at the contract level.
  • Implements the EIP-1271 standard for signing and verification, enabling interaction with other smart contract dApps.
  • ETH-based, while other public chains may have similar properties, ERC-6551 primarily addresses pain points of NFT users in the ETH ecosystem.

💡 For example, if you have a Metamask wallet (address: A) that contains an ERC-6551 NFT-linked account (address B), the ownership of wallet B can be transferred. If Peter mints an Apple NFT and later receives $FRUIT tokens as an airdrop, the POAP received through an IRL event will be transferred to the account/wallet of the Apple NFT. When Peter sells his NFT, all properties will be transferred. All transaction history/sources will also be recorded in the Apple NFT, allowing potential buyers to review them.

Technical Details:

Tokenbound toolkit: A unique contract account is created for ERC-721 tokens through the Registry contract, which is not owned by anyone. The Registry deploys a proxy contract as the token-bound account (TBA) for the token, inheriting all metadata and attributes of ERC-721. In theory, another Registry contract can be created.

Features

  • Composability: ERC-6551 enables the combination of multiple NFTs and ETH assets. When transferring ERC-6551 NFTs, the associated assets are also transferred. It allows nesting of ERC-6551 NFTs like Russian dolls.
  • Provenance: ERC-6551 enables the transfer of information related to external and user changes along with the NFT. This allows access to transaction and utility information, including transaction history.
  • Verification and authentication: Access to the token-bound accounts of ERC-6551 tokens is only granted to individuals with the corresponding cryptographic tokens. This ensures that only authorized individuals can interact with the accounts, making it user-friendly and simple.

Team

  • Benny Glang, Founder of Cryptokitties, Dapperlabs
  • Steve Jang, Founder of Bitski

Use Cases and Existing Projects

Currently, potential use cases for ERC-6551 include:

  1. DEX: Binding trading accounts with tokens allows only individuals who possess the relevant tokens to transact using the account, providing a user-friendly verification method.
  2. Gaming
  • Game equipment combination: ERC-6551 opens up more possibilities for combining NFT-based game assets, such as leveling up game equipment combinations, making them more valuable and scarce as a token-bound wallet.
  • NPC (network playable characters): NPCs composed of NFTs, with each NFT carrying multiple attributes based on algorithms determined by player actions.

Projects -Parallel: A trading card game on OpenSea, one of the largest game NFT projects with 5.8 million items. They have implemented a PFP game using ERC-6551 and AI. ERC-6551 is mainly used for avatars, where each avatar is a token-bound wallet that can own ERC-1155 and $PRIME tokens.

3. NFT member engagement/loyalty programs and identity:

  • DAOHOUSE: Badges and credentials stay with Metamask and can now stay with ERC-6551 NFTs when sold. This allows the creation of on-chain identities and reputations as NFTs, with each NFT account containing transferable information.

4. Infrastructure and Tooling:

  • IYK: A tool that enables users to immortalize autographs on their digital items using blockchain technology. They recently launched a digital signature feature where users can mint a digital signature as an NFT digital art.

5. Social:

ERC-6551 is currently being explored for its potential impact on building decentralized social networks.

6. NFT trading platforms and exchanges

In the future, when trading NFTs, non-contract browser platforms will need to be aware of the underlying assets in token-bound wallets, including support for token prices. This ensures that assets cannot be temporarily withdrawn by sellers during transactions. The founder mentioned communication with existing exchanges to either update them or develop new NFT trading platforms.

Other projects highlighted:

Games:

  • AquaNet: AI-generated social media accounts based on “small images” (NFTs) with automatically generated posts in the style of the AI. It brings a new meaning to the artistic style of “small images” by allowing abstract ones to have abstract posts.
  • Fukuro: A platform for selling NFTs, ERC-20 tokens, and other asset combinations. It could potentially become a blind box platform, where users can try their luck to discover items ranging from 1 Bored Ape Yacht Club (BAYC) and 10 ETH to a worthless image and no ETH.
  • Piggybank: An on-chain savings account where the characteristics change according to the amount of money stored. It suits individuals who frequently reset their funds and allows them to regularly deposit ETH into the account, ultimately receiving the accumulated ETH when they “burn” the savings account.
  • Tokenbound Titans: A blockchain game where “small images” with data engage in battles. It also realizes the transformation of “game characters” into “game accounts,” storing loot under the “small images.”

Security Considerations and risks

Security concerns may arise due to the transfer of wallet ownership with NFT ownership, increasing the risk of theft or hacking of the wallet and its assets. One solution mentioned by the founder is combining a cold wallet with a token-bound smart contract wallet to delegate ownership to the cold wallet and ensure security.

  • Security: Token-bound wallets that can interact with dApps increase the possibility of hacking. Additionally, the binding of accounts and NFT validation increases the risk of ownership.
  • Potential issues of fraud: Changes to the state of an NFT (beyond NFT price, such as claim and art changes) may not be reflected on the marketplace. For example, if Bob wants to interact with Alice’s NFT#001 for 11 ETH, and NFT#001 currently owns 10 ETH. If Alice transfers out the 10 ETH before the transaction, Bob will only receive NFT#001. The transferred information will not be displayed on the marketplace.

--

--