抽象是一个计算机术语,在计算机的世界里,“抽象”指的是一种将细节内容抽离出来,仅保留核心概念的方法(来自chatGPT)。

我们可以用一个生活中的例子帮助大家更好地理解“抽象”。

大家都知道汽车的手动档——前进档一般有1,2,3,4,5五档,后退有1档,然后还有油离配合,斜坡起步,降档补油等复杂的概念和操作。我们通过对变速箱的升级改造(抽象),创造了自动档汽车。从此,一个驾驶者只需要知道前进和后退,that’s it! 极其简单明了并且符合用户直觉,大大降低了开车这件事的门槛。

在区块链的世界里,EOA(External Owned Account,外部拥有账户)就像是手动档汽车,账户抽象就是把EOA这种老旧的账户,升级成更加符合用户直觉且功能强大的账户,让每个用户都开上“自动档汽车“。

此处再引入一个合约账户(Contract Account,CA)的概念。合约账户(CA)是一个定语短语——用(智能)合约做的账户。账户抽象(Account Abstraction,AA)是一个主谓短语,抽象这里是个动词。二者的关系是,我们通过智能合约账户(CA)来实现账户抽象(AA)。或者可以简单地认为二者就是等同的。

相比与EOA,账户抽象本质上是使得账户变得可编程——账户抽象(或者此处用”合约账户“更准确)和EOA的区别类似于以太坊和比特币的区别。

账户抽象会彻底改变Web3账户的交互方式,具体可以分成三个更为具体的”抽象“——

  1. 解锁逻辑的抽象。举个例子,传统机械锁,你只能用一把金属钥匙解锁。金属钥匙丢了你还得把整个锁给换了。现在有了智能锁。你可以用指纹,面容,手机解锁。而且,你可以方面地往智能锁里面添加和删除指纹,面容,手机。我们再具体讨论账户抽象里面的”解锁逻辑的抽象“——
    1. 解锁逻辑的替换——Vitalik 提到账户抽象可以抗量子计算,就是因为EOA必须是ECDSA椭圆曲线算法解锁。ECDSA本身不抗量子计算。但是因为账户抽象带来了解锁逻辑的抽象,所以我们可以不用ECDSA来解锁你的账户,而是使用抗量子计算的算法。
    2. 解锁逻辑的扩充——(Gnosis)Safe 也是一种解锁逻辑的抽象。本来EOA必须用一把私钥来解锁账户,但是 Safe 实现了多个EOA共管一个合约账户。由此继续延伸——
      1. 我们不仅仅可以像 Safe 那样增加不同的私钥一起来参与解锁,还可以对不同私钥赋予不同的权限。
        1. 比方说我的合约账户里面有800个NFT,但是我要操作我的BAYC的时候必须用硬件钱包的私钥来签名。操作其他NFT都只需要用手机里面的私钥签名。
        2. 比方说我可以把一把特殊的私钥给我资管服务提供商。这把私钥允许他只可以通过 UniSwap 做 Swap 帮我调仓,不能做任何其他操作。
      2. 本质上来说,UniPass 的社交恢复也是得益于解锁逻辑的抽象。我们把用户的邮箱跟合约账户实现绑定,从而通过对邮件做密码学验证(具体逻辑可以另外再解释)来触发(操作账户的)私钥的替换。这样用户不再需要记助记词,如果私钥丢了或者换新设备,可以通过发邮件的方式对原有(操作账户的)私钥做一个替换操作。
  2. Gas Fee 的抽象。Gas Fee 本质上是因为你用了区块链资源,所以你要付费。那付费肯定是支付这条区块链的原生代币(以太坊就是支付 Ether)。但这对普通用户是不友好的——我给别人支付 USDC 为何要支付 Ether 做手续费?账户抽象能够把这个复杂的逻辑进行抽象(这里要讲具体逻辑的话难免很技术),从而
    1. 用户可以支付 USDC (或者任何有价值的 token)作为手续费。
    2. 可以方便地实现项目方代付手续费,进一步降低用户进入Web3世界的门槛。
  3. 其他账户操作的抽象。
    1. 账户抽象可以实现批量操作(交易)。EOA 为了避免重放攻击(具体不展开了),每次跟区块链交互的交易中都有一个nonce(是个从1开始的数字),每交互一次,这个数字都要加1,这就导致了 EOA 跟 UniSwap 交互需要授权一次(nonce +1),再操作一次 Swap(nonce 再 +1)。账户抽象可以把这个 nonce 的逻辑抽象掉,用户可以批量交易,跟 UniSwap 交互只需要做一次签名(点击一次确认)。当然也可以给很多地址批量转币。
    2. 账户抽象可以实现自动化操作(交易)。这个非常好理解。因为账户抽象实现了一个可编程的合约账户。那就可以实现诸如自动化跟单,网格交易之类的,原本只能在中心化交易所才能实现的功能。

账户抽象是一条漫长的道路。同样可以参考自动档汽车——刚问世的时候,自动档汽车”肉“,费油且不可靠。现在随着技术的发展和演进,自动档汽车的”肉“已不复存在;燃油经济型已经能胜过老司机开手动档;可靠性方面,以皮实耐用著称的(军用)奔驰G500也是自动档了。