免责声明:金色财经所有资讯仅代表作者个人观点,不构成任何投资理财建议。请确保访问网址为(jinse.cn) 举报

    zkSync 如何在协议中实现帐户抽象

    作者:Three Sigma,区块链审计公司 来源:X,@threesigmaxyz 翻译:善欧巴,金色财经

    集成 ZK Rollup 和账户抽象为 Layer 2 解决方案带来了可扩展性和灵活性方面的新维度。今天,我们将深入研究 zkSync 以及他们如何在协议中实现账户抽象。

    什么是 zkSync

    @zkSync 是由 @the_matter_labs 开发的用于以太坊上可扩展、低成本交易的去信任协议,利用 zk-rollup 技术通过批量处理链下执行的交易来缓解拥堵。 zkSync 的架构集成了 zk-rollup 和 Validium,分别定义为智能合约的 zkEVM 和链下数据可用性的 zkPorter。

    在此处更深入地了解协议架构:

    u7HylqSAFtMRMGv3IfIQZyTk20cmgRT7NJUr8qTP.png

    什么是账户抽象

    账户抽象是一项技术,通过利用智能合约作为钱包来消除对 EOA(外部拥有账户)的需求,从而提供更安全、更佳的用户体验,打造卓越的区块链体验。

    在著名的 ERC-4337 AA 工作流程中,用户将操作提交到专用内存池。

    捆绑者会将这些操作编译成单个交易,发送给 EntryPoint 合约,该合约会使用“validateUserOp”验证每个账户后执行这些操作。

    sVCoKNNL3gBgPez362m7hBtEu0dPsvZ9WH1BJqKB.png

    zkSync 如何利用账户抽象 (AA)

    zkSync Era 是第一个原生实现账户抽象的 EVM 兼容链,它通过引入智能账户和支付方这两种主要组件,彻底改变了账户操作。

    智能账户

    智能账户由 IAccount 接口表示,该接口具有 5 种方法:

    • validateTransaction(): 检查交易是否符合账户规则。如果不符合,则会回滚。

    • executeTransaction(): 在扣除费用后运行交易。

    • payForTransaction(): 如果不使用支付方,则直接支付费用。

    • prepareForPaymaster(): 设置支付方支付费用。

    • executeTransactionFromOutside(): 允许从外部发起交易。

    您可以在下面看到IACCOUNT代码

    jeUYpzUdy7dPpBkwP7qgAVWcxuWrItDzDmWrcYSM.png

    支付方

    与 EIP4337 一样,zkSync 的账户抽象也支持支付方,支付方是可以补偿其他账户交易执行的账户。

    每个支付方都应该实现 IPaymaster 接口,该接口包含以下两种方法:

    • validateAndPayForPaymasterTransaction(): 确认支付方是否同意支付交易费用并向操作员发送资金。

    • postTransaction(): 处理交易后的操作,具体取决于交易的结果和费用退款。

    请参阅下面的代码:

    H1Aadfm24aX8XrJZogkahVWaVu76DVBF2y8As4Hm.png

    zkSync 的账户抽象 (AA) 协议与 EIP4337 非常相似,不过为了提高效率和改善用户体验,zkSync 的协议确实存在一些差异。

    zkSync 的原生账户抽象与以太坊的 EIP 4337 之间的关键区别:

    1. 实现: zkSync 将 AA 集成到协议中,而 EIP4337 避免了协议级别的更改。

    2. 账户类型: zkSync 将智能合约和支付方等同对待;EIP4337 则加以区分。

    3. 交易处理: zkSync 为所有账户使用统一的内存池,不同于 EIP4337 的分离流程。

    4. 支付方: zkSync 支持所有账户的支付方,EIP4337 则将其限制为智能合约。

    如何在 zkSync 上创建智能账户

    要在 zkSync 上创建智能账户,请使用 IAccount 实现基本方法,并使用 IPaymaster 实现依赖支付方的费用支付。

    确保您的账户支持 EIP-1271 进行签名验证也非常有用。

    完成这些步骤后,只需使用 zkSync 的 createAccount 方法部署您的账户即可!

    zkSync 目前集成有 2 个智能合约钱包:

    ✦ HoldstationW

    ✦ pier_wallet

    jinse.cn 2
    好文章,需要你的鼓励
    jinse.cn 2
    好文章,需要你的鼓励
    参与评论
    0/140
    提交评论
    文章作者: / 责任编辑:

    声明:本文由入驻金色财经的作者撰写,观点仅代表作者本人,绝不代表金色财经赞同其观点或证实其描述。

    提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

    金色财经 > 金色精选 > zkSync 如何在协议中实现帐户抽象
    • 寻求报道
    • 金色财经中国版App下载
      金色财经APP
      iOS & Android
    • 加入社群
      Telegram
    • 意见反馈
    • 返回顶部
    • 返回底部