paint-brush
帐户抽象:L1 和 L2 层的解决方案以及采用现状经过@nazhmudin
7,810 讀數
7,810 讀數

帐户抽象:L1 和 L2 层的解决方案以及采用现状

经过 Nazhmudin Baimurzaev10m2023/08/14
Read on Terminal Reader

太長; 讀書

尽管加密货币市场起伏不定,但在较低的费用、速度、安全性和防通胀等因素的推动下,加密货币的采用仍在增长,截至 2023 年 6 月,活跃钱包超过 1500 万个。然而,由于区块链技术的复杂性,教育差距阻碍了非托管技术的采用。 “账户抽象”旨在简化这一点,通过智能合约分离钱包和签名者之间的关系。以太坊的 EIP-4337 铺平了道路,但安全风险仍然存在。 StarkNet 和 ZkSync 等第 2 层解决方案正在引入本机帐户抽象,从而增强可用性和安全性。账户抽象的发展对于区块链的广泛采用至关重要。
featured image - 帐户抽象:L1 和 L2 层的解决方案以及采用现状
Nazhmudin Baimurzaev HackerNoon profile picture
0-item
1-item


加密货币的采用率正在上升——即使在 2022 年的熊市中,市场上的钱包和交易也有所增加。 2023 年 6 月,我们看到有 1500 万个活跃钱包,是两年前价格仍然高企时的两倍多。


这种兴趣源于多种原因——从更低的费用、更高的速度和更好的安全性,到其抵御通货膨胀力量的本质以及在全球舞台上提供更多机会。



资料来源:a16z 的《2023 年加密货币现状》



但是,我们仍处于加密行业发展的早期阶段。如果我们比较互联网用户和加密货币用户的增长率,得出的趋势将非常相似。如果加密行业有效发展,同时解决了大众采用的所有问题,那么到本十年末,理论上我们应该会迎来第一个十亿加密用户。



资料来源:a16z 的《2023 年加密货币现状》




然而,注意到这些好处,采用并没有像我们预期的那样广泛,特别是在非托管市场。原因?巨大的教育差距。区块链技术很难让你理解。为了使用 EOA 或“外部拥有帐户”(例如Metamask钱包的帐户),普通用户需要了解“种子短语”、“私钥和公钥”、“智能合约”、“gas”等术语费用”——这也是无法回避的,就好像犯了错误,资金就会损失。


关于自助钱包的悲伤故事


因此,多年来,社区一直在寻求简化。事实上,现在有了“帐户抽象”的概念,我们就快成功了。这就是为什么今天我们将探索地点、内容和原因,同时评估两种不同类别的解决方案。



什么是账户抽象?

正如我们简要介绍的那样,广泛采用加密货币的主要障碍在于其使用的复杂性。 EOA 是有效的公私密钥对,其中用户既充当交易的“签名者”又充当“帐户”。他们负责交易的验证和执行——换句话说,这对想要给孙子生日礼物的老太太来说是一个沉重的负担。


除了在区块链上执行交易所需的大量概念知识之外,使用还需要避免错误。由于没有第三方托管机构来处理丢失的密码和双因素身份验证,因此如果密码丢失,资金就会同时丢失。


因此,大多数与区块链交互的人都是在托管人的基础上进行的,指示币安等中心化平台代表他们持有私钥。

当然,这里存在隐私问题——尤其是当我们考虑到最近 FTX 的崩溃时。中心化从来都不是区块链的梦想,因此非托管平台可用性的解决方案始终是一个优先事项。


这就是账户抽象的用武之地。通俗地说,这是通过让账户本身成为智能合约,将持有资产的账户与签名者之间的关系解耦的做法。


当然,这样的想法并不新鲜,并且一直在以太坊路线图上,自 2016 年以来就在不同的 EIP 中被提出。


然而最近,随着 EIP-4337 于 2021 年发布,应用层解决方案的梦想终于成为现实。任何 dApp 开发人员都可以利用该提案来做一些事情,例如:赞助用户交易费;启用额外的安全功能,例如链上交易监控;利用社交登录引入非监护人并提供帐户恢复。最近,即 2023 年 3 月 2 日,社区将实施 EIP-4337 所需的智能合约部署到以太坊主网络。随后主要基础设施厂商如Alchemy、Biconomy、Gelato Network等发布了核心账户抽象基础设施组件。


此外,随着先进的第 2 层机制的出现,StarkNet 和 ZKsync 等 ZK-Rollup 解决方案在协议层提供了本机帐户抽象。


理论上,账户抽象及其提供的灵活性是解决上述区块链进入障碍的理想解决方案。然而,解决方案迟迟未能达成的一个主要原因就是安全风险的增加。

交易的可扩展性增加了攻击向量的表面积,因为每个组件都应该单独和整体地受到保护。


尽管如此,我们的英雄每天都在接近终点线,账户抽象面临的风险也在一天天减少。因此,值得深入研究可用的解决方案。


L1应用级解决方案:智能合约加链下基础设施

我们已经在某种程度上讨论了改变网络工作方式的以太坊改进提案。自 2016 年以来,帐户抽象的想法无疑是一个理想的集成。


值得注意的是,2018 年引入了智能合约钱包来保护用户资产。至此,通过链上欺诈监控,社会恢复首次成为可能——所有这些都无需向第三方提供托管。 2020 年,EIP-2938 开发了一种新型交易,使智能合约能够充当顶级账户。不久之后出现了 EIP-3074,它使现有的 EOA 的行为类似于智能合约,允许用户简单地将 EOA 控制权委托给智能合约。然后,在 2021 年,EIP-4337 触及了以太坊路线图,这就是我们今天所处的位置。


该提案的主要思想是标准化编写和操作智能合约钱包所需的链下基础设施。值得注意的是,当涉及到区块链上的非托管用户操作时,验证和执行之间有明确的分离。



资料来源: Vitalik Buterin 的账户抽象之路



那么,EIP-4337 的幕后发生了什么?首先,交易路径涉及将 UserOperation 发送到高级内存池(实际上是一个队列,在将交易添加到新块之前对交易进行排序和存储)。然后,捆绑器将一组 UserOperations 打包成一个捆绑交易,然后将其发送到 EntryPoint 合约,并由捆绑器支付费用。


然后,EntryPoint 合约做了两件事。首先,它验证目标钱包的交易,然后执行调用。正如我们所看到的,验证和执行之间有明显的分离——这对于帐户抽象来说非常重要。


这种方法可用于为 EVM 区块链构建新一代加密钱包,用户将能够利用高级安全功能,如社交恢复、密钥更改、多重签名等。


使用现实世界的例子,Gnosis 的 Safe Wallet——一个在 EVM 区块链上运行的多重签名智能合约钱包。钱包本身需要来自多个钱包持有者而不是一个的交易确认,每个钱包持有者都持有不同的签名。值得注意的是,Safe可能是第一个普及的智能合约钱包,目前约600亿资产存储在超过300万个钱包中。


官方安全钱包不能被称为一个非常强大的账户抽象钱包,它实现了这个新概念所提供的所有功能,它基本上只有多重签名功能。 Safe 将自己定位为一种开放协议,凭借其可扩展的设计,可以在此基础上构建下一代加密钱包。最近,Safe 支持 EIP-4337 作为标准,并为外部开发者发布了 Safe {Core} 帐户抽象 SDK。


然而,以太坊主网上的应用层技术存在明显的缺陷。


例如,智能合约不仅扩大了区块链技术的应用,而且还增加了攻击的范围。这些合约通常是用 Solidity 等高级语言编写的,然后被合约所有者编译成字节码并部署到区块链上,并在各种虚拟机上运行。复杂性意味着新的攻击向量的出现,增加了交易顺序依赖攻击、虚假充值攻击和重放攻击的可能性——所有这些通常发生在应用层。


其次,由于整个以太坊生态系统都是围绕 EOA 构建的,因此许多 Dapp 与智能合约钱包不兼容。这很大程度上是因为智能合约钱包在某种程度上被视为以太坊上的“二等”公民。


应用程序级别的帐户抽象基础设施

  • Biconomy (智能账户合约、Bundler、Paymaster、SDK)

  • StackUp (智能账户合约、Bundler、Paymaster、SDK)

  • 安全(智能账户合约、SDK)

  • Web3Auth (密钥管理)


钱包建在上面

  • 安全(基于安全)
  • 世界币(基于Safe)
  • 安比雷
  • 顺序
  • Pluser (测试版,基于 Safe)
  • Sout钱包(测试版,基于Safe)
  • 和更多…


L2 上的协议级解决方案:本机帐户抽象

应用层漏洞的解决方案在于开发第二层解决方案,旨在与帐户抽象一起使用。


换句话说,侧链可以将账户抽象的过程移至协议层。 StarkNet 和 ZkSynce 是受 erc-4337 启发的本地帐户抽象实现的 L2 的绝佳示例。与 L1 上的 EIP 4337 的主要区别在于,这里的本地帐户是协议的一等公民。


让我们深入探讨 StarkNet 上账户抽象的实现。就像 EIP 443 一样,有一个元数据来验证每笔交易。事实上,验证函数确保任何提交的交易都是由帐户所有者发起的,并且在执行过程中不会占用任何额外的资源,而执行函数则抽象出交易执行的剩余操作。


这些第 2 层解决方案的另一个关键任务是验证链下签名——这是通过 EIP-1272 在主网上提出的。事实上,StarkNet 在 Argent X 上做得很好,Argent X 是一个基于 StarkNet 现有基础设施的浏览器钱包——来自链外消息的签名数据中的帐户确保如果多个帐户合约使用相同的密钥,则请求的签名dApp 为特定帐户创建的数据不能用于备用帐户身份验证的目的。


事实上,该应用程序是 StarkNet 上存在的第一个钱包,并且具有适用于 Chrome 和 Firefox 的浏览器扩展。它是多账户的,允许用户发送和接收 NFT,并且 100%开源。通俗地说,Argent X 实现了前端 StarkNet 基础设施的优势。


此外,就像应用程序层基础设施一样,这些第二层应用程序还支持监护人的连接,其中帐户可以重新编程以适应新的密钥。社交康复是 100% 非监护性的,因为您可以决定谁是监护人并可以随时更改。


游戏方面还有一些意想不到的好处。例如,具有逻辑可定制性的会话密钥意味着可以根据用例来更改要交互的时间和合同等变量。


原生账户抽象实现

  • 中控同步
  • 斯塔克网

钱包建在顶部

  • Argent (ZkSync 和 Starknet)
  • 筹集资金(测试版,ZkSync)


账户抽象的现状

很难统计市场上有多少个账户抽象钱包,但我找到了 2 个带有统计数据的 Dune 仪表板。第一个显示来自不同 EVM 网络(Base、Avalanche、Optimism、BSC、Arbitrum、Ethereum、Polygon)的 400k+ ERC-4337 钱包,第二个显示来自不同 EVM 网络的 400 万+ Safe 钱包(全部由 Safe 链支持)。


来源: https://dune.com/niftytable/account-abstraction \ 来源:https://dune.com/safe/all


谈论安全。最近,轰动一时的 Worldcoin 项目向公众发布了其 World 应用程序,其中包含内置的非托管加密钱包和 World Orb 设备,通过该设备在世界各地组织身份验证过程。


因此,在短短几周内,他们就吸引了超过 200 万从 Worldcoin 收到身份证明 ID 的用户到他们在 World 应用程序中创建的加密钱包。项目开发人员决定在 World App 的开发中应用账户抽象的概念。在底层,这个智能合约钱包使用 Safe{Core},这是 Safe 的帐户抽象堆栈。


现在,通过帐户抽象,他们仅为用户提供无 Gas 体验,但在未来的版本中,他们将支持帐户恢复以及 AA 概念允许他们实现的其他有趣功能。迄今为止,World App 是最大的安全钱包部署者,在超过 400 万个安全钱包中,其中 150 万个是由 Worldcoin 为其用户创建的。



来源:https://dune.com/hashed_official/worldcoin-dashboard



考虑到基础设施的数量和创建的智能钱包的数量,这个数字还不算令人印象深刻,我们将忽略现在是加密货币冬天并且已经达到一定的加密用户最大数量的事实。


但不可否认的是,它将为下一个看涨趋势做好准备,新的加密货币用户流将通过账户抽象钱包而不是 EOA 钱包进入。我认为世界币推出的例子将使账户抽象钱包更加流行。



最后的想法

就结论而言——有一件事是明确的。 第 2 层解决方案丝毫不逊色于主网以太坊改进提案,相反,它很大程度上建立在它们的基础上。就像第 2 层解决方案在设计时考虑到更快的速度和更低的交易费用一样,内置这些功能的本机帐户抽象是以太坊主网缺点的绝佳替代方案。


随着加密货币的采用日益增加,我们必须解决与令人困惑的界面相关的问题,这样监管机构和普通用户就不会留下不好的印象。


这就是为什么实现真正的账户抽象——无论是通过以太坊主网的应用程序级能力,还是通过即将到来的第 2 层项目将这一概念带到协议级——对于区块链的广泛采用变得前所未有的重要。技术。


主图由Shubham Dhage在 Unsplash 上提供