Original Title: "ERC-6551 Analogical Interpretation"
Source: zhixian, Founder of UniPassWallet
Yesterday I was asked several times about the relationship between ERC-6551 and AA, and I found that everyone had various misunderstandings about it when we talked about it. I recorded some analogies used in today's discussion, hoping to help everyone's understanding. As usual, this short essay is not a serious technical article, and in order to facilitate understanding, imprecise analogies will be used.
First of all, ERC-6551 is not a token standard. It is not in the same category as ERC-721 and others. Instead, it is more like ERC-4337, which is an application layer standard and similar to an AA standard. If we had to compare it to something, it would be similar to the social recovery standard of ERC-7093. Both are considering how AA should be used. So, you could say "UniPass v2 is compatible with AA accounts of 4337/6551/7093," but there is no such thing as "ERC-6551 compatible NFT."
You may be confused when you see this: wasn't it said that each NFT is bound to an account? How did it become the AA standard? This is the power of narrative - the perception of the audience can vary greatly depending on the perspective of the description of the same thing.
From the perspective of an NFT holder: My address A has an NFT with an associated address X. I can use A to control the transfer of X. When I transfer the NFT to address B, A loses the ability to control X, and B gains this ability. Therefore, account X is bound to this NFT.
From the perspective of an AA account developer: Implement an authentication method related to NFT in the AA account. If the key initiating the transfer request is an Ethereum address and that address owns a pre-registered NFT, the authentication will pass and the account can be unlocked.
Of course, "innate binding" can also be achieved by encoding the unique ID of the NFT into the generated address. If you happen to be a contract writer, you can actually quickly implement a similar function AA account through the Safe Module.
Actually, if you have read its Abstract, you should be able to easily discover this conclusion:
This proposal defines a system which gives every ERC-721 token a smart contract account. These token bound accounts allow ERC-721 tokens to own assets and interact with applications, without requiring changes to existing ERC-721 smart contracts or infrastructure.
I believe everyone has already understood that ERC-6551 describes an AA account rather than an NFT. So next, we will use the best tool for AA popularization - smart locks - to make an analogy explanation.
First of all, we can compare private keys to fingerprints. They correspond to the concept of "identity" in both the crypto world and the physical world. If they are obtained by a third party, others cannot distinguish whether it is "themselves" or "others" who are performing the operation, so we generally do not share them with others.
Let's start with the simplest type of account in the AA industry: an AA account controlled by a single key (EOA), such as a single-signature Safe account. Its unlocking logic is to verify the signature of the key, and if it matches, the account can be unlocked. By analogy, it is like the logic of unlocking a smart door lock with a fingerprint. This kind of logic that is strongly tied to identity is actually not suitable for some scenarios, such as a locker in a public bathhouse. In this case, a "key card" is needed as an unlocking credential that is not related to a specific person, that is, "recognizing the card, not the person."
Finally, we map "a person using a key card to open a storage locker and taking 100 US dollars" to "an address using an NFT to unlock and bind the address, and transferring 100 USDT" - Congratulations, you now understand the basic principles of ERC-6551!
ERC-6551 is essentially a system that treats each ERC-721 NFT as a key card and pairs it with a storage locker.
Do you feel like it comes to a sudden stop? Because, to put it in analogy, it's not really complicated. In fact, there are some settings in the actual Spec that are similar to the Entry Point in ERC-4337, as well as the handling method for "circular references" (locking the key card in the locker). These are not related to the basic principles that everyone understands, so we won't go into them.
This standard, although the idea is relatively simple, is to change the perspective of the narrative. However, sometimes changing the perspective can make the design of some scenes more natural. For example, the logic of NFT game equipment wearing can be changed to "bind the equipment NFT to the character NFT's binding address" (thanks to the case provided by Stwith). Therefore, ERC-6551 can be said to be a protocol that greatly promotes the popularity of AA. I hope that similar protocols or use cases can become more and more, so that everyone can feel the charm of AA.
Finally, if you are unfamiliar with the concepts of AA/EOA, here is a glossary I wrote previously that you can refer to.
Original Link
Welcome to join the official BlockBeats community:
Telegram Subscription Group: https://t.me/theblockbeats
Telegram Discussion Group: https://t.me/BlockBeats_App
Official Twitter Account: https://twitter.com/BlockBeatsAsia