ERC-6551类比式解读

23-07-06 15:04
阅读本文需 7 分钟
总结 AI 总结
看总结 收起
原文标题:《 ERC-6551 类比式解读 》

原文来源: 知县( @frank_lay2 ),Unipass 创始人


昨天被问了好几次 ERC-6551 跟 AA 的关系,聊起来才发现大家对它的理解有各种各样的偏差。我把今天讨论里用到的一些类比记录下来,希望能对大家的理解有点帮助。老规矩,这篇小作文不是严肃的技术文章,为了便于理解会使用并不精确的类比。


快速了解 ERC-6551


首先,ERC-6551 不是 Token 标准,它跟 ERC-721 等不是一个范畴的概念,而是更像 ERC-4337——是的你没听错,它更像一个 AA 标准,只不过是应用层的标准。如果说最像的,应该是(私货预警)ERC-7093 的社交恢复标准,都是在考虑 AA 应该怎么用。所以你可以说「UniPass v2 是 4337 / 6551 / 7093 兼容的 AA 账户」,但是并不存在「ERC-6551 兼容的 NFT」这种说法。


看到这里你可能一脸问号:不是说给每个 NFT 绑定一个账户吗,怎么就变成 AA 标准了?这就是叙事的力量了——同样一件事情,描述的角度不同,受众的认知就会天差地别。


站在 NFT Holder 的角度: 我的地址 A 里有一个 NFT,它有个关联的地址 X,我可以用 A 控制 X 转账;当我把 NFT 转到地址 B 之后,A 失去了控制 X 的能力,同时 B 获得了这个能力,所以 账户 X 是跟这个 NFT 绑定的。


站在 AA 账户开发者的角度: 在 AA 账户里实现一种 NFT 关联的鉴权方式,如果发起转账请求的 Key 是一个以太坊地址,并且该地址拥有某个预先登记的 NFT,那么鉴权通过,可以解锁账户。


当然,也可以通过在生成地址时把 NFT 的唯一 ID 编码进去的方式来达成「先天绑定」的效果。如果你恰好是一个会写合约的小伙伴,其实可以很快地通过 Safe Module 来实现一个类似功能的 AA 账户。


实际上,如果你阅读过它的 Abstract,应该可以很轻松地发现这个结论:


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.


用类比解释 ERC-6551


相信大家已经理解了 ERC-6551 描述的是一种 AA 账户而非 NFT,那么接下来我们就用 AA 科普的最佳道具——智能门锁 来进行类比解释。


首先我们把私钥类比为指纹。它们分别对应 Crypto 世界和物理世界的「身份」概念,如果被第三方获得,其他人无法分辨是「自己」还是「别人」在做操作,所以一般我们不会共享给其他人。


然后咱们先从最简单的 AA 账户开始:由单个密钥(EOA)控制的 AA 账户,比如一个单签的 Safe 账户。它的解锁逻辑就是验证密钥的签名,如果匹配就可以解锁账户;类比到智能门锁的话,就是用指纹解锁的逻辑。这种跟身份强绑定的逻辑在一些场景下其实是不合适的,比如澡堂储物柜,这时候就需要「钥匙卡」这种跟人无关的解锁凭证了,也就是「认卡不认人」。


最后,我们把「人拿着钥匙卡开储物柜拿了 100 美金」映射到「地址拿着 NFT 解锁绑定地址转了 100 USDT」——恭喜你,ERC-6551 的基本原理你已经懂了!


ERC-6551 就是把每个 ERC-721 的 NFT 当作钥匙卡,然后给它配了一个储物柜。


小结


是不是有种「戛然而止」的感觉?因为用类比来讲的话确实不复杂,实际的 Spec 里还有一些类似 ERC-4337 里 Entry Point 的设定,以及关于「循环引用」(就是把钥匙卡锁柜里了)的处理方法,这些跟大家理解基本原理无关,所以也就不做涉及了。


这个标准虽然思路比较简单,就是换个视角叙事,但有时候换种角度也会让一些场景的设计更加自然,比如 NFT 游戏装备穿戴的逻辑可以变成「把装备 NFT 打给人物 NFT 的绑定地址」(感谢史迪仔提供的案例)。因此 ERC-6551 可以说是一种对 AA 的普及有很大助力的协议,希望类似的协议或者用例能够越来越多,让大家都感受到 AA 都魅力。


最后,如果你对 AA / EOA 这些概念有些陌生,这里有一篇我之前写的名词解释可以参考。


原文链接



欢迎加入律动 BlockBeats 官方社群:

Telegram 订阅群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方账号:https://twitter.com/BlockBeatsAsia

举报 纠错/举报
本平台现已全面集成Farcaster协议, 如果您已有Farcaster账户, 可以登录 后发表评论
选择文库
新增文库
取消
完成
新增文库
仅自己可见
公开
保存
纠错/举报
提交