介绍
区块链领域正在经历一场从外部拥有账户(EOA)向智能合约账户(SCA)的转型浪潮,这一趋势获得了包括Vitalik在内的众多行业领袖的支持。虽然市场对SCA充满期待,但其实际采用率仍落后于传统EOA。阻碍普及的关键因素包括熊市环境下的发展阻力、用户迁移顾虑、签名机制限制、gas费用问题,以及最具挑战性的工程实现难题。
账户抽象(AA)技术最突出的价值在于支持通过代码实现功能定制。然而当前面临的主要工程挑战是AA功能的互操作性不足,这种碎片化现象不仅增加了集成难度,还可能导致厂商锁定风险。此外,在确保安全性的前提下实现功能升级和组合也面临诸多复杂性。
模块化账户抽象作为AA运动的重要分支,提出了一种创新性的解决方案:将智能账户与其功能模块解耦。这种架构旨在构建一个安全、可扩展的模块化体系,支持开发具备多样化功能的钱包产品。长远来看,这将催生一个开放的智能合约账户”应用商店”,让钱包和dApp开发者能够专注于用户体验优化而非基础功能开发。
本文将为读者深入解析模块化账户抽象的核心概念,包括账户与模块的交互机制、调用顺序设计,以及模块的发现与验证机制等内容。
账户抽象技术概览
智能合约账户生态现状
传统的外部拥有账户(EOA)存在诸多局限性,如种子短语管理复杂、gas费用问题、跨链操作困难以及批量交易不便等。这些设计并非有意增加使用难度,但客观上确实抬高了区块链技术的使用门槛。
账户抽象技术通过智能合约账户实现了可编程的验证与执行逻辑,用户只需单次授权即可完成一系列交易,无需为每笔交易单独签名广播。这项技术为用户体验(如gas抽象和会话密钥)、成本优化(批量交易)和安全性(社交恢复、多重签名)带来了显著提升。目前账户抽象主要有两种实现路径:
协议层原生支持方面,ZKsync等协议实现了统一的交易处理流程,无论交易源自EOA还是SCA都采用相同机制;Starknet则完全移除了EOA,所有账户均为智能合约账户,并原生支持Argent等智能合约钱包。
合约层解决方案则以ERC4337为代表,通过引入独立的交易入口点,在不改变共识层的前提下实现账户抽象功能。Stackup、Alchemy等基础设施提供商正在构建相关工具链,Safe、Zerodev等团队则专注于开发SDK和功能栈。
智能合约账户的采用困境
账户抽象概念自2015年提出以来持续引发讨论,今年ERC4337标准的推出更使其备受瞩目。然而与庞大的EOA数量相比,已部署的智能合约账户仍然相形见绌。
深入分析这一困境,我们发现多重因素共同制约着SCA的普及。当前熊市环境下,主流用户仍以熟悉EOA的资深用户为主,新用户增长缓慢,导致dApp和钱包缺乏升级动力。不过领先应用如Cyberconnect已通过AA系统实现显著增长,其无gas解决方案单月就处理了约36万次UserOps。
迁移障碍也是重要制约因素。对于已积累大量用户和资产的现有钱包应用,如何安全便捷地完成资产迁移仍具挑战性。EIP-7377等提案试图通过允许EOA发起一次性迁移交易来解决这一问题。
签名机制方面,智能合约因缺乏私钥而无法像EOA那样直接签名消息。虽然ERC1271等标准提供了解决方案,但对于采用counterfactual部署的钱包,首笔交易前的消息签名仍存在问题。Ambire提出的ERC-6492作为向后兼容方案可能解决这一局限。
gas开销方面,SCA的部署、模拟和执行成本明显高于标准EOA。为降低门槛,业界正在测试将账户创建与用户操作解耦等方案,并考虑取消账户盐和存在检查等优化措施。
工程实现难度也不容忽视。虽然ERC-4337团队提供了基础实现库,但随着针对不同用例的定制功能不断增加,系统集成和功能解析的复杂度呈指数级上升。
模块化方案破解工程难题
工程实现面临的核心挑战主要体现在三个方面:首先是标准碎片化问题,当前功能实现方式多样,各平台采用不同标准,迫使开发者进行选择性支持,既可能导致平台锁定,又造成重复开发。
安全性方面,虽然账户与功能的灵活组合具有优势,但也带来了新的风险。功能模块可能经过集体审核,但缺乏独立评估机制会增加账户漏洞的可能性。
可升级性同样关键,随着功能演进,保留添加、替换或删除模块的能力至关重要。但每次更新都重新部署现有功能会显著增加系统复杂度。
应对这些挑战需要三大技术支撑:可升级合约确保安全高效的版本迭代,可复用核心提升整体开发效率,标准化接口保证账户在不同前端间的平滑过渡。这些要素共同构成了模块化账户抽象架构的理论基础。
模块化AA作为账户抽象运动的细分领域,致力于构建高度定制化的智能账户,让开发者能够以最小限制扩展功能。虽然行业标准的建立和推广充满挑战,但令人振奋的是,包括4337 SDK开发者、钱包团队、基础设施提供商和协议设计师在内的整个生态正在协同推进这一进程。
模块化架构:主账户与功能模块
委托调用与代理合约
委托调用机制解析
委托调用(delegateCall)的特殊之处在于,它不在目标合约的上下文中执行代码,而是在调用合约的当前状态下运行。这意味着目标合约的所有状态变更都会作用于调用合约的存储空间。
代理合约中的委托调用
实现可组合、可升级架构的基础是代理合约模式。普通合约在部署后无法更新其逻辑和状态,而代理合约通过委托调用将执行逻辑委托给实现合约,在保持自身状态的同时实现功能升级。这种设计不仅支持合约升级,还能降低在公链上部署和维护的成本。
Safe智能账户架构
作为模块化智能账户的领先基础设施,Safe以经过实战检验的安全性和灵活性著称,为开发者构建多样化应用和钱包提供了坚实基础。值得注意的是,包括Biconomy在内的许多团队都在Safe基础上进行扩展开发。目前Safe已部署超过16.4万个合约,管理资产总值超过307亿美元,稳居行业领先地位。
Safe采用三层架构设计:主代理合约负责维护账户状态;单例合约作为集成中心协调各类模块;模块合约则实现支付流、恢复机制等定制功能。这种设计支持灵活升级——当引入新插件时,只需部署新版单例合约,用户可自主选择升级时机。同时,模块化特性允许开发者自由组合插件,实现高度定制化的解决方案。
ERC-2535钻石代理
ERC2535标准定义了名为”钻石”的模块化智能合约系统,支持部署后的升级和扩展,几乎没有规模限制。Zerodev的Kernel和Soul Wallet等项目都借鉴了这一设计。
钻石架构同样采用代理模式,主合约通过delegatecall调用模块功能。与Safe不同,钻石允许通过diamondCut函数直接添加、替换或移除插件,且可扩展的插件数量没有上限。这种设计极大降低了部署成本,因为同一插件可被多个钻石复用。
Safe与钻石架构对比
虽然Safe和钻石架构都基于代理模式实现可升级性和模块化,但两者在关键设计上存在差异。Safe在引入新插件时需要重新部署单例合约,而钻石支持直接修改代理功能,后者因此具备更强的灵活性。
安全性方面,钻石架构中多个模块通过委托调用交互,存在存储冲突风险,恶意插件可能破坏代理完整性。这要求每个新增插件都需全面审计,对中小企业构成一定挑战。
总之,Safe和钻石代表了模块化架构的两种实现路径,开发者需要根据具体应用场景在灵活性与安全性之间寻求平衡,两种方案可能形成互补关系。
模块执行顺序:验证、执行与钩子
ERC6900标准由Alchemy团队提出,专为ERC-4337设计,旨在解决智能账户的模块化挑战。该标准通过统一接口协调插件与钱包开发,推动生态协同发展。
在AA交易流程中,三个核心环节——验证器确认调用者权限、执行器运行自定义逻辑、钩子模块实现前后处理——都可通过代理账户调用模块完成。虽然不同项目可能采用各异术语,但底层逻辑高度相似。
模块的逻辑分离至关重要。无论是Safe还是ERC6900,标准化方法都能减少特定实现的开发成本,避免厂商锁定,促进生态健康发展。
模块发现与安全保障
当前行业正在探索通过”注册中心”构建模块化市场,这种类似”应用商店”的平台支持用户发现和验证各类模块,为生态发展注入活力。
Safe{Core}协议
作为开源、可互操作的智能账户协议,Safe{Core}通过明确标准平衡开放性与安全性。其架构包含四个关键组件:灵活定义的账户、协调各方的管理器、执行标准的注册中心,以及多样化的功能模块。这种设计为开发者提供了符合标准的开放环境。
Rhinestone设计方案
Rhinestone的工作流程始于模式定义,开发者根据用例需求设计数据结构。智能合约注册为模块时,需提交字节码并选择模式ID,这些信息将存储于注册表。审计师可基于模式颁发认证,解析器则支持在认证框架内实现复杂逻辑。最终用户可通过友好界面查询安全信息。
虽然这一模式尚处早期,但其去中心化协作框架潜力巨大。未来可能发展出多种应用场景:Safe等可信实体可作为认证方参与;模块开发者通过注册表实现商业化;用户则能便捷地评估模块安全性。这种开放市场设计既避免了厂商锁定,又能提升EVM生态的用户体验。
需要注意的是,虽然单个模块的安全性可以得到保障,但智能账户的整体安全仍面临挑战。验证组合模块间的兼容性,特别是防范存储冲突,需要钱包和AA基础设施提供额外保障。
展望未来
模块化智能账户栈帮助钱包和dApp降低了技术复杂度,同时为专业模块开发者创造了服务机会。然而行业仍需在灵活性、安全性、标准推进和接口统一等方面持续努力。
需要认识到,模块化SCA只是普及的第一步。要释放其全部潜力,还需要L2协议支持、健壮的捆绑器基础设施、经济高效的签名机制、跨链账户管理,以及更友好的用户界面等配套发展。
展望未来,当SCA订单流形成规模经济后,传统MEV机制可能以何种方式介入?成熟的基础设施将如何支撑”基于意图”的交易?这些问题都值得持续关注。可以确定的是,账户抽象领域正在快速发展,每分钟都可能产生新的突破。
声明:文章不代表CHAINTT观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险 自担!转载请注明出处:https://www.chaintt.cn/11134.html