Time:2023-10-25 Click:112
原文标题:《Announcing
Smart
Wallet-as-a-Service: Elevating ERC-4337 with Modular Infrastructure》原文作者
:Carlos Maximiliano Cano、Ethan Francis,
Particle Network
原文编译:Babywhale,Foresight News
账户抽象(AA)是 Web3 解决用户体验问题的一场「豪赌」。
目前,Web3 行业正在寻找更好的产品以与传统产品竞争。在这种情况下,账户抽象(AA)应运而生,它可以协助复杂业务场景和应用的构建,为最终用户带来更好的体验,为开发人员带来更大的灵活性。
AA 是对现有的外部拥有账户(EOA)框架的重大改进,在 EVM 生态系统中占据主导地位。然而,AA 的采用必须通过去中心化的、有机的增长来引导,没有直接的路线图来实现。
与此同时,WaaS 工具允许终端用户仅使用 Web2 凭证就能快速创建和管理钱包。它们还通过直接在应用中进行签名和其他活动,简化了与 DApp 交互的体验。此外,得益于一些技术解决方案(如 Particle Network 的 MPC-TSS),这些钱包还可以同时实现非托管和安全性。
目前的 WaaS 工具是将用户无缝接入 Web3 的一个独立、直接的解决方案。 然而,Particle Network 认为,将 AA 纳入 WaaS 产品是加速账户抽象应用、增强开发人员开发更好应用的能力以及升级 Web3 基础设施的一种方式。
因此,我们隆重推出 Particle Network 的智能钱包即服务模块化堆栈(
Smart Wallet
-as-a-Service ModularStack
),致力于为开发人员在其应用程序中实施 AA 提供最大的灵活性。为了介绍这一产品,让我们首先了解一下发布这一产品的动机以及 WaaS 工具的现有功能。然后,我们将介绍智能 WaaS 模块化堆栈的功能,以及它能为开发人员和整个生态系统带来的好处。为了更好地展示以 EOA 为中心的 WaaS 工具与 Particle Network 的智能钱包即服务(Smart Wallet-as-a-Service)模块化堆栈之间的差异,首先必须了解 AA 带来的可能性,以及 EOA 框架是如何限制这些可能性的。
EOA 框架的根本问题在于,它无法满足需要高级逻辑或多步骤程序的应用场景,而这对于复杂的应用至关重要。对于开发人员来说,这意味着重复编码、无法决定用户如何与他们的 DApp 互动,以及容易出错的陡峭学习曲线。
AA 通过可编程性解决了这些难题,使交易能够自动响应链上事件,执行常规的多重签名授权以增强安全性,并直接在钱包基础设施内启用更灵活、更安全的用户身份验证协议。对于开发者来说,这也意味着一种更加灵活的体验。
目前,在 EOA 框架内开发以下复杂场景的 DApp 是不切实际的,但 AA 使之成为可能:
DeFi 聚合器: 这些聚合器可以发挥多种功能,例如使用户能够同时与多个平台交互,设置与这些平台的重复交互策略,在活动中同时使用多种类型的代币等等。如果用户体验足够吸引人,并且充分实现了法币出入金,那么 AA 就为非托管、完全去中心化的无 Gas 平台全面取代中心化平台开辟了可能性。
P2P 小额交易驱动的社交和媒体平台: 即使是在低费用的 L2 环境中,EOA 也会让人们在与社交平台互动时感到不流畅。AA 可以优化这种情况,使人们梦想已久的设计成为现实:例如 P2P 小额交易平台,在该平台上,观众根据观看时间按比例向创作者进行小额支付。X-to-Earn、游戏和收入民主化平台: AA 可以促进互动,并通过会话密钥实现无缝交易,非常适合需要持续、快速交易的场景。因此,「X-to-Earn」和 Web3 游戏体验可以变得更加实用,也更容易让用户「上瘾」。在这种环境下,向用户和代币持有者重新分配费用和收入的民主化平台也能蓬勃发展。
说到 AA 的采用,ERC-4337 是一项关键性的成就,因为它实现了可运行的 AA 应用。然而,由于 ERC-4337 仍未在协议层面得到认可,AA 的发展在很大程度上取决于社区对其去中心化的有机引导。在这种情况下,WaaS 工具可以在加速这一进程中发挥关键作用,甚至可以作为一些被推荐方法的中间步骤,如自愿迁移(EIP-7377)。
WaaS 工具使开发人员能够集中精力设计更好的体验,并更轻松地处理底层 Web3 基础设施。它们通过改善用户设置和使用钱包的体验来实现这一目标,但正如我们在本文中所解释的,能做的远不止这些。WaaS 工具目前可以:
简化用户首次登陆 Web3 时创建钱包的过程,允许他们通过 Web2 凭据登录,实现无缝过渡;
通过直接在应用程序中签名,简化交易签名过程;
为开发人员提供模块化堆栈,以便在其 DApp 中实现所需的功能。这可以包括内置的定制工具,以实现他们想要的外观和感觉,以及实际的适应性。
随着 EVM 生态系统寻求升级到 AA 框架,原生采用 AA 的 WaaS 工具可以加速这一过程。要想充分掌握这一方法,关键是要了解在 WaaS 层面上原生 AA 实施与非原生 AA 实施之间的主要区别。
在非原生实现中,EOA WaaS 提供商充当智能账户的签名者(所有者)。在这种设计中,签名者依靠第三方应用程序与特定的智能账户实施保持一致。然后,签名者通过可通过 WaaS 服务访问的 EOA 手动验证智能账户的交互。这可能导致需要手动初始化账户,有时还需要构建 / 赞助 / 推送用户操作等。
请参考使用非本地 AA 解决方案初始化智能账户的示例。
AA 功能的原生实现同时支持用户和开发者。就 Particle Network 而言,这指的是允许终端用户选择在钱包内使用 EOA 还是智能账户。在这种设计中,EOA 仍然是智能账户的签名者,但这两个账户的分配和统一由 WaaS 提供商处理。在我们的原生实现中,智能账户在使用 Particle Network 智能钱包即服务栈的应用中是不变的。与非原生实现相比,这带来了更简化的体验,并为网络效应创造了空间。
对于开发人员来说,原生实现更加自然和简单。Particle Network 的 AA SDK 可自动处理账户初始化、构建用户操作和其他先决条件,从而消除了在使用众多第三方 AA 堆栈组件时手动进行用户操作和智能账户管理的(常见)要求。
有关使用 Particle Network AA SDK 实现的示例,请参考此链接。
鉴于 AA 目前处于实验阶段,
MetaMask
和其他市场领导者因其规模而无法大规模整合该技术。 因此,WaaS 服务目前拥有最大的动力和直接的途径来实现这些功能,这得益于其作为用户导向解决方案领导者的地位。 因具有流畅的用户引导功能且原生支持,WaaS 工具对于 Web3 的采用至关重要。原生支持还意味着 WaaS 工具为开发人员探索如何将 AA 集成到他们的工具中创建了一个理想的框架。 这为模块化发挥作用打开了大门,开发人员可以决定:
他们的目标智能账户实现;
使用什么捆绑器(bundlers);
是否可能插入其他第三方工具。
鉴于 WaaS 工具在 Web3 用户体验在加速 AA 采用了中发挥的独特作用,我们认为智能 WaaS 是一个自然的进化步骤。 在我们的愿景中,这些工具可以让开发人员通过 AA 优化他们的 DApp,使他们能够在数量和质量上更快地迭代,从而推动创新,最终吸引更多用户使用 Web3 产品。 考虑到我们提到的所有因素,采用 AA 的时间表可能如下图所示:
可能的 AA 采用曲线。在理想的情况下,不仅 AA 的采用率会增加,而且 Web3 的新用户也会相应地增加。
鉴于以上讨论的所有要点,Particle Network 的智能钱包即服务模块化堆栈正在着手创建一个实现了 AA 端到端的采用,使开发人员能够构建下一代 Web3 体验的 ERC-4337 AA 实现。Particle Network 的目标是为开发人员创造一种灵活的体验,允许他们在直接绑定到 Particle Network 的 WaaS 实例的同时与 AA 进行原生交互。
Particle Network 的智能 WaaS 旨在为开发人员提供在其应用中利用「WaaS AA」的一切可能性,无论其复杂性、功能、后端实现等。最终,这使他们能够选择最适合其应用所需的服务和工具。无论开发人员在给定的应用中具体打算如何实现 AA,我们都内置了所需的模块,以便在任何级别的底层技术堆栈上完全利用 Particle Network 的 AA-SDK 提供的 ERC-4337 。
在构建我们的智能 WaaS 堆栈时,我们认为以下内容至关重要:
通过 WaaS 和非托管密钥管理实现无缝使用:Particle Network 现有的 WaaS 实现拥有 MPC-TSS 私钥管理功能。 这与社交身份验证相结合,可确保最终用户能够快速、安全地加入——无论他们对 Web3 的熟悉程度如何。
在不影响应用复杂性的情况下利用 AA 的灵活性:这使开发人员能开发各种应用,从而充分利用 AA 的功能。 Particle Network 的 AA-SDK 支持以编程方式实现与智能账户以非常熟悉的方式交互,例如熟悉的交易结构、构建和账户管理模式,所有这些都由 SDK 无缝处理。这意味着无需复杂操作就能开始使用 AA,利用 Particle Network 的 WaaS 进行入驻和账户管理,随后再利用 Particle Network 的 AA SDK 进行采用 AA 后的操作,并与 WaaS 配合使用。
通过 WaaS 实现 AA 模块化: Particle Network 的 AA SDK 允许开发人员以模块化方式处理 AA,轻松插入他们喜欢的智能账户实施,Bundlers、Paymaster 等。作为 WaaS 提供商,Particle Network 还支持在任何点插入 AA 应用,即使它们原本没有使用我们的 AA SDK。因此,即使是非原生 AA 应用程序,也可以利用 Particle Network 的 WaaS 进行采用。这就为原生和非原生应用创造了完全可定制的开发体验。
下图展示了 Particle Network 的 AA 模块化方案和整体实现情况:
Particle Network 的模块化堆栈
要深入了解这种模块化堆栈,您可以在下面观看开发者关系部的 Ethan Francis 提供的教程,了解如何用最少的代码开发应用(他提供了无 Gas 实现的例子)。在本视频中,Ethan 使用了我们内置
Biconomy
支持的原生 AA SDK。同时你可以在此链接中查看视频中示例的代码。AA 作为刚刚起步的领域,有多种智能账户实施方案可供选择,引入一个全面的模块化堆栈可确保开发人员获得更大的灵活性。模块化意味着他们也可以插入自己喜欢的组件,同时对那些没有太多定制要求的开发人员也很友好。
Particle Network 的 AA 堆栈生态,即将推出的对更多实现的内置支持。
目前,Particle Network 面向开发者和用户的官方支持使用 Biconomy 的智能账户。不过,为了促进整个生态系统的内在模块化和交叉兼容性,Particle Network 将允许用户和开发者在我们的 SDK 和用户界面中选择他们想要使用的特定智能账户实现,从而提供一种不会自动默认为单一提供商的高级解决方案。
Particle Network 的原生模块化 AA 支持(通过原生 SDK、Particle Network 的 RPC 等),虽然本身功能强大,但由于 Particle Network 作为 WaaS 提供商的性质,与其他 AA 栈提供商也具有内在的交叉兼容性。
以下是利用 Particle Network 协议栈的几个示例:
使用 Particle Network 的 AA SDK 进行账户管理、Paymaster、UserOp 构建,并通过
Pimlico
的 bundleler 进行推送;使用 Particle Network 的 AA SDK 进行账户管理,然后通过 Pimlico 的 Bundler 和 Paymaster 手动构建用户操作、赞助和推送(Demo);
在另一种智能账户实施方案中使用从我们的 WaaS 派生的 EOA 作为签名者,并选择 Bundler 和 Paymaster。
Particle Bundler
Particle Network 还建立了专有的 Paymaster 和 Bundler。Particle Network 的 Bundler 是完全开源的,它促进了可扩展和可靠的 ERC-4337 交互。事实上,Particle Bundler 已通过合作伙伴计划在众多公有链中大规模采用账户抽象,为 opBNB、
Scroll
Sepolia 和 Combo Testnet 促成了数十万笔交易。Particle Bundler 通过管理智能账户 Nonces 和自动批量发送用户操作来简化用户交易。它通过单一命令简化了对新链的部署,可在五分钟内支持更多的链。对于开发人员,它提供了捆绑签名器配置、自动补给和监控警报等功能。Bundler 可高效处理高工作量,确保快速交易处理。在强大基础设施的支持下,它能在各种条件下保持运行稳定性。
Particle Bundler 的主要功能包括支持标准 RPC、可配置签名器、多链支持、重复用户操作、并发处理用户操作、集成 Gas 预言机 以及多个 Bundler 签名器的管理系统。Bundler 还能自动补充捆绑程序签名者的余额,重试失败的交易,在 MEV 影响下提供准确的交易细节。您可以在其开源公告中找到更多详细信息。
Particle Network 的内部和外部实现
安全性
Particle Network 的智能 WaaS 实施还具有支持 MPC-TSS 的安全功能,以保护用户的数据和资产。这些安全考虑因素如下图所示:
Particle Network 的 MPC-TSS 安全设置
Particle Network 采用 2/2 高级 TSS 方案,确保用户的私人密钥在其整个生命周期内都不会集中在一个位置或实体上。这种方案是将密钥分成两份分别存储,确保每一份都不会泄露完整密钥的任何信息。Particle Network 还允许用户创建主密码,用于加密本地密钥片段,然后将其安全存储。这样,用户就可以在完全安全的情况下跨设备还原自己的钱包。要进一步了解这种机制,以及为什么它是以非托管方式保护用户私钥的最安全选择,请参阅《How to Choose a WaaS》一文。
账户抽象(Account Abstraction)与钱包即服务(Wallet-as-a-Service)解决方案相结合,有可能改变 Web3 开发人员和终端用户的体验,使我们的生态系统更具吸引力。
Particle Network 的智能钱包即服务模块化堆栈是对已有吸引力产品的重大升级,它强调实用性,简化了利用 AA 开发用户友好应用的过程。在这方面,Particle Network 的集成生态是我们追求灵活性这一指导原则的主要优势之一。
在即将发布的公告中,我们将介绍 Particle Network 的全链账户抽象(Omnichain Account Abstraction),它将在 Particle Network 即将推出的 v2 版以代币为中心的设计中发挥重要作用。围绕这一创新,Particle Network 将首次推出一套面向开发者和终端用户的新产品,从而打造一个集成度更高、功能更全面的环境。
本文介绍的智能 WaaS 的进步是创新和提高应用性能的契机。如果您读到这里,我们邀请您利用 Particle Network 的资源,包括我们详细的教程和全面的文档,将这些增强功能集成到您的项目中。随着 AA 采用率的提高,开发人员构建采用 AA 的超级 DApp 肯定会在加速 Web3 采用率方面发挥关键作用。