随着我对链抽象的深入研究,有一点变得异常清晰:没有账户抽象(AA),就没有链抽象未来。
人们对AA的谈论已有多年,那么AA如今的发展状况如何?根据我的研究,AA的最新发展以及即将到来的发展很快将会投入生产。
首先,我们快速来看一下什么是账户抽象(AA)?
如今,基本上所有交易的“授权”都来自私钥生成的签名。这从某种角度来说很糟糕,因为这意味着:
1)人们不能通过登录邮箱、使用手机,或是2face等方式来授权交易。
2)每笔交易都需要使用该密钥进行签名,这实际上让用户不得不点击大量的按钮。
账户抽象给我们带来了诸多巨大好处:
1)人们可以使用比被迫记住12个随机词更容易的方式来授权交易。想想这将解锁多少用户——想象一下“使用用谷歌账户登录”,就像如今你在很多网站上所做的那样,一旦你登录了,你也可以进行加密交易。
2)你可以将交易打包。
3)你可以创建备份密钥,你与你的父母或亲密的朋友共同存储该秘钥,以便在你忘记密码的情况下帮助你恢复帐户。
4)当用户想进行操作时,它让其他方来处理gas费的支付并将其提交到链上(solvers)。
好吧,确实很酷,这么多的优点,但我至少觉得我们已经讨论AA很多年了,那么它到底发展到什么阶段了?为什么我们还在使用MetaMask。
有3个关键的以太坊改进提案(EIP)将帮助你了解我们在建立账户抽象作为钱包标准方面的发展情况。
EIP:第一个同时也是最重要的4337
就我个人而言,当我看到这个图表时,我的第一感觉就是过于复杂了,那么这张图到底描绘了什么?
基本上,4337允许用户在链上向第三方提交他们想做的操作。然后,第三方将所有这些请求打包在一起,并负责将它们置于链上。这很酷,因为根本不需要升级EVM。现在你可以像这样真正使用账户抽象钱包了。但你为什么还没有使用?所有人都抱怨MetaMask有多糟糕,所以如果市场上有更好的选择,为什么我们都不用呢?
以下是目前ERC-4337存在的一些问题:
1)现有钱包无法升级到4337
2)从gas成本来看,更加昂贵(也就是交易费用将更高)
3)易于审查——在上图中,如果你创建了一个AA钱包,你所依赖的bundler(为你提交链上交易的一方)有可能有一天会决定:“你知道吗,我不喜欢这个协议。我不会让任何人提交与该协议相关的交易。”这有点像你的银行其实是你把钱汇给别人的中介。如果你的银行不希望你这么做,那么你就不能汇款。
好吧,确实有一些问题,但我们能至少朝着正确的方向迈出一小步吗?如果我们允许现有钱包升级为账户抽象钱包会怎么样?这就是EIP-3074的主要目的。但是,这需要对EVM进行更改。它将引入新的操作码,允许现有的钱包授权:“是的,我想要账户抽象”。这里的困难在于,这需要对EVM进行实打实的更改,而4337确实有点酷,因为它甚至不需要对EVM进行任何更改。这一切都严格基于现状,也就是不需要硬分叉。
很酷,看起来是一条前进道路?当然有安全方面顾虑。有时人们点击网络钓鱼链接,不小心授权了一笔交易,丢失了他们所有的ETH。这将使网络钓鱼链接更加危险,因为如果你授权了错误的交易,他们不仅可以拿走你所有的ETH,还可以解除你所有的DeFi头寸,从你的ENS发表公开声明,等等。区别就像是“你的大通银行账户被清空了”与“这个人盗用了你的身份,现在可以访问你在任何地方的所有密码”之间的不同而已。
好吧,让我们再来一个4位数的EIP,看看我们是否能解决这个问题:EIP-7702。
该EIP是最近由我们共同的神和救世主Vitalik自己推出的,它实际上是3074的替代方案。它不需要新的操作码,只需要很少的更改就可以与4337一起工作,并且可以临时升级到帐户抽象钱包以降低风险。
EIP简介:
4337——带给用户帐户抽象。
3074——允许现有钱包升级到账户抽象钱包,但需要新的EVM操作码,并引入了某人通过一次意外点击签名放弃其数字身份的风险。
7702——3074的安全替代方案,对EVM的改动较少。
所以,现在我们已经了解了4337、3074和7702——但我们仍然不知道为什么我们还在使用MetaMask。7702仍处于以太坊研究社区讨论阶段,但它有可能被包含在即将到来的硬分叉中。
那么,让我们继续来看,我们今天可以使用什么产品来获得更好的钱包体验。我相信这样的产品有很多,但我认为最突出的一个就是Coinbase智能钱包。该钱包已完全投产,实话实说,确实提供了让人惊喜的用户体验。为了测试该钱包,我花了37秒的时间进行谷歌搜索并安装了一个钱包。我所需要做的只是扫描我手机上的二维码。没有12个随机词,没有像“mnemonic”或“cryptography”这样的词吓跑普通用户——它就是好用。现在只要我想授权交易,只使用FaceID就可以。
回到我开始撰写本文的初衷,有两点重要原因:
1)对于我们正在构建的应用程序,让用户更容易上手。
2)通过帐户抽象提交的用户操作为链抽象的其余组件提供支持。
要使链抽象有效运作,需要“交易流”。如果没有人通过许可层提交他们想要在链上所做的操作,那么solver层就没有什么可求解的了。然而,我确实相信,通过设计这样的钱包体验,会有一些基本的优势,从而可能导致大多数新的“交易流”来自于倾向于这种设计理念的项目。
我接触了很多正在链抽象领域打拼的公司,我认为他们都如此积极的原因就是:他们明白,通过专注于自己的核心责任,并与他人合作,链抽象的蛋糕将比任何其他试图同时改善用户体验、提高资本效率和降低交易成本的单一系统增长得更快。
我在许可层还需要做更多的研究,但在那之后,我将深入研究solver层,并在此过程中与大家一起分享我的研究。
查看更多