加密基础设施的未来?多链账户抽象解析

互联网 阅读 376 2024-07-10 17:01:00
欧易OKX交易所
欧意OKX交易所注册下载领取神秘豪礼
官网注册

作者:Alfred,imToken Labs 开发者

2024 年 7 月 8 日至 11 日,以太坊社区会议(EthCC)在比利时布鲁塞尔举行,这是欧洲规模最大的以太坊年度活动,重点关注技术和社区。

本届以太坊社区会议(EthCC 7)共有超过 350 名活跃在区块链行业一线的意见领袖发表演讲,imToken Labs Alfred 受邀参与,并在大会上发表主题为「揭示未来:多链账户抽象解析」的演讲。

演讲概要速览:

  • 账户抽象(AA)主要包括两个关键点:签名抽象和支付抽象。签名抽象让用户可以选择任何喜欢的验证机制,支付抽象则允许使用多种交易支付选项。这种灵活性提供了更安全、更优的用户体验。
  • 在 ERC-4337 和原生 AA 中,「验证」阶段的入口点函数是固定的,而在「执行」阶段,只有原生 AA 中的入口点是固定的。验证交易的限制和执行交易的步骤在不同实现中有各自的特点和限制。
  • 在 EVM 兼容链上实施 ERC-4337,有两个关键区别:Rollup 设计中的协议差异和地址计算方式的差异,导致在 L1 和 L2 之间实现 ERC-4337 时出现难以注意的开发细节。

以下为演讲全文:

大家好,我是 Alfred,现任 imToken Labs 的区块链开发人员。今天,我向大家介绍 ERC-4337 和 Native AA 的概念,讨论它们之间的差异,并重点分析 L1 和 L2 的 4337 标准的主要区别。

账户抽象介绍

1. 什么是账户抽象

账户抽象(AA)主要包括两个关键点:签名抽象和支付抽象。

  • 签名抽象:用户可以选择任何喜欢的验证机制,而不仅限于某些数字签名算法(如 ECDSA)。
  • 支付抽象:用户可以使用多种交易支付选项,如使用 ERC-20 资产代替原生资产支付,或让第三方赞助交易。

这种灵活性提供了更安全、更优的用户体验。账户抽象的目标是通过多种方式实现这两个关键点。

2. 什么是 ERC-4337

目前,以太坊协议中的外部拥有账户(EOA)存在一些限制,例如固定的签名方法和支付设计。ERC-4337 通过引入更灵活的账户管理和交易处理方法来解决这些问题。

  • userOp 结构:在 ERC-4337 中,用户将 userOp 结构发送到 Bundler。Bundler 收集多个 userOp,并通过调用 handleOps 函数将它们发送到 EntryPoint 合约。
  • EntryPoint 合约:该合约像操作系统一样处理交易,主要功能包括:
  • 调用账户合约中的 validate 函数,确保 userOp 获得账户所有者授权。
  • 收取费用。
  • 调用账户合约中的 execute 函数,执行 userOp 的目标操作。

3. 什么是原生 AA

在以太坊中,账户分为 EOA 和合约账户。然而,在原生 AA 中,每个账户都是一个合约,且交易处理机制直接嵌入到区块链协议中。

各区块链网络中的 AA 设计:

  • ERC-4337 账户抽象:以太坊、Arbitrum、Optimism、Base、Linea、Scroll、Polygon PoS
  • 原生账户抽象遵循 ERC-4337:StarkNet & zkSync 时代
  • 具有隐私设计的原生账户抽象:Aztec

如果你对 Aztec Native AA 或 EIP-3074、EIP-7702 感兴趣,今天我们将重点关注 ERC-4337 之后的原生 AA。详细信息请参考我写的文章,列在文末。

ERC-4337 和原生 AA 的区别

1. 操作系统角色

AA OS 需要回答以下问题:

  • 谁决定 Gas 价格?
  • 谁决定交易顺序?内存池在哪里?
  • 谁触发入口点函数?
  • 什么决定了交易处理的流程?

在 ERC-4337 中,这些角色通过 Bundler 和 EntryPoint Contract 协同完成。

在原生 AA 中,用户将其 userOps 发送给官方服务器的操作员 / 排序器,而不是 Bundler 和 EntryPoint Contract。

在 StarkNet 中,Sequencer 负责处理所有这些任务。

在 zkSync 中,Era 与其他 AA 实现的主要区别在于 Operator 需要与 bootloader(系统合约)配合工作。Bootloader 打开一个新块,定义其参数(包括块参数和其他 Gas 参数),并接收来自 Operator 的交易以进行验证。

2. 合约接口

由于三个步骤的存在,账户合约接口在不同实现中是相似的,这些入口点函数只能由 AA OS 调用:

  • ERC-4337:验证用户操作
  • zkSync:验证交易、交易支付、执行交易
  • StarkNet:execute、validate、validate_declare、validate_deploy

在 ERC-4337 和原生 AA 中,「验证」阶段的入口点函数是固定的,而在「执行」阶段,只有原生 AA 中的入口点是固定的。

3. 验证步骤的限制

由于验证交易没有成本限制(本质上,验证交易是调用视图函数),攻击者可以对内存池进行 DoS 攻击,从而破坏捆绑器(EIP-4337)或运算符 / 排序器(原生 AA)。

EIP-4337 定义了禁止哪些操作码以及如何限制存储访问。zkSync Era 放宽了一些 OpCode 的使用:

  • 合约逻辑只能访问自己的存储槽。如果账户合约的地址是地址 A,它可以访问:
  • 属于地址 A 的存储槽
  • 属于任何其他地址 A 的存储槽
  • 属于任何其他地址的存储槽 keccak256 (A || X):这意味着直接使用地址作为映射中的键(例如,映射 (address => value) ),相当于访问槽 keccak256 (A || X)。例如,ERC-20 合约中的资产余额。
  • 合约逻辑无法访问全局变量,例如区块号。StarkNet 也不允许外部合约调用。

4. 执行步骤的限制

在 zkSync 中,执行系统调用需要确认系统标志的存在。例如,增加 nonce 的唯一方法是与 NonceHolder 交互,而部署合约则需要与 ContractDeployer 交互。系统标志确保账户开发人员有意识地与系统合约进行交互。

在 ERC-4337 和 StarkNet 中,执行阶段没有特殊限制。

5. 随机数

  • 在 ERC-4337 中,入口点随机数的设计区分了 192 位密钥值和 64 位随机数值。
  • 在 zkSync 中,NonceHolder 系统合约管理 nonce,确保严格递增,即将随机数增加 1。
  • 在 StarkNet 中,nonce 也是严格递增的,但是没有抽象的 nonce 来由特定的合约管理。

6. 使用第一个事务进行部署

  • ERC-4337 在 userOp 结构中包含 initcode 字段,以在其第一个 userOp 中部署发送者(账户合约)。
  • 在 StarkNet 和 zkSync 中,用户必须将第一笔交易发送给算子 / 排序器来部署账户合约。

7. zkSync 中的特殊设计

如果你直接将 ETH 从以太坊 EOA 转移到 zkSync, 无需部署定制账户合约,你将收到一个具有相同地址的默认账户。该账户可以像以太坊 EOA 一样工作,并且也由相应的以太坊 EOA 的私钥控制。

这账户类型是版本 None 而不是 version1 。你不能调用 DefaultAccount 的函数,因为它没有在内核空间部署任何代码。

L1 的 4337 和 L2 的 4337 的区别

在 EVM 兼容链上实施 ERC-4337 有两个关键区别:协议差异和地址差异。

1. 协议差异

Rollup 设计中,L2 需要将数据上传到 L1 以进行安全和结算。在 ERC-4337 的背景下,与此上传过程相关的费用,例如 L1 安全费和 blob 费用,应该 被包括在内在预验证 Gas 中。确定预验证 Gas 中适当的上传费用是一个重大挑战。

2. 地址差异

zkSync ERA 的 create 函数中的地址编码方式与以太坊和 OP 汇总不同。此外,StarkNet 使用独特的哈希函数进行地址计算。在 EVM 兼容链上的 ERC-4337 背景下,我们通常假设地址计算在各链上是一致的。然而,有一个难以注意的细节可能会导致以太坊和 L2 中的 ERC-4337 实现之间的账户合约地址不同。

关键问题是在硬分叉中添加新的操作码。例如,如果 L2 链不支持上海硬分叉,并且在编译时未指定 EVM 版本,push0 的引入会导致字节码改变,即使 Solidity 代码是相同的。

结语

以下是一些资源,供你了解更多有关账户抽象的信息。请随时联系我,如果你有任何疑问,可以在 Twitter 上找到我(@murmurlu)。

《Aztec 账户抽象介绍》,请查阅:

https://medium.com/@ChiHaoLu/introduction-of-aztec-account-abstraction-98535c9edf2e

《StarkNet 账户抽象介绍》,请查阅:

https://medium.com/taipei-ethereum-meetup/introduction-of-starknet-account-abstraction-2c343b561d6e

《zkSync 账户抽象介绍》,请查阅:

https://medium.com/taipei-ethereum-meetup/zksync-%E4%B8%AD%E7%9A%84%E5%8E%9F%E7%94%9F-account-abstraction-%E4%BB%8B%E7%B4%B9-bc7269f8893a

《Starknet 和 zkSync:比较分析》,请查阅:

https://medium.com/nethermind-eth/starknet-and-zksync-a-comparative-analysis-d4648786256b

免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:盘点2024上半年完成融资的64个"Web3+AI”项目,超半数聚焦基础设施和游戏娱乐 下一篇:不是本轮行情不好,而是历史上融钱多的项目都“高开低走”

您可能感兴趣

  • 序幕的完结与新篇章的开启:加密货币行业现状反思与未来畅想
    序幕的完结与新篇章的开启:加密货币行业现状反思与未来畅想

    撰文:pillarbear,Four Pillars编译:Yangz,Techub News文章概要推动加密货币行业发展的叙事游戏规则开始转变,市场参与者正在形成对叙事游戏本身的元意识。加密货币行业急需能带来区块空间需求的应用。加密货币的最大优势在于它能为任何想法赋予经济价值,并提供交易平台。最近,市场上出现了一些利用注意力经济和投机特性的新实验形式,如 memecoin、社交交易和预测市场。未来有可能出现更多样化的链上应用和商业模式。对于链上应用来说,投机是最强大的功能之一。投机的社会需求不断增加,可以

    每日资讯 2024-07-19 10:01 735
  • 谈Mass Adoption还为时过早,Solana Actions和Blinks并没有想象中的那么好
    谈Mass Adoption还为时过早,Solana Actions和Blinks并没有想象中的那么好

    谈 Mass Adoption 还为时过早。撰文:Haotian如何看待最近被热议的 @solana Actions 和 Blinks?尽管听到了很多「创新性进步」、「大规模应用催化剂」等之类声音,但在我看来,Blinks 并没有太大的技术创新,谈 Mass Adoption 也为时过早,它的出现倒是强化了 Solana 新一代消费级应用区块链的市场印象,是一次有益的探索。接下来,谈谈我的看法:1)就技术视角来看,Solana Actions 和 Blinks 就是一组便于开发者集成应用的开发工具。Act

    每日资讯 2024-07-19 09:01 118
  • 福布斯:2024上半年市值超10亿美元的“十佳Token”
    福布斯:2024上半年市值超10亿美元的“十佳Token”

    撰文:1912212.eth,Foresght News比特币现货 ETF 在今年年初被正式批准交易之后,加密市场迎来大幅度上涨,除比特币以外,一些 MEME 币也表现非常亮眼。虽然自今年 4 月份之后行情即开始处于下跌模式,但部分代币整体而言仍有不俗的市场表现,近日,福布斯公布了 2024 年上半年市值超过 10 亿美元中的十大表现最佳加密货币,包括 WIF、PEPE、ASI、FLOKI、JASMY、AR、CORE、TON、BGB 与 BONK。值得注意的是,MEME 就占据 4 个榜单,且其中 3 个

    每日资讯 2024-07-19 08:01 344
  • Web3普法丨在香港如何设立合规加密基金?
    Web3普法丨在香港如何设立合规加密基金?

    在瞬息万变的金融世界中,加密基金正迅速崭露头角,成为投资界的新宠。然而,选择在哪个地区设立加密基金至关重要。香港,这座国际金融中心,以其独特的优势和广阔的前景,正吸引着越来越多的目光。选择在香港设立加密基金,不仅是一个战略性的决策,更是迈向未来金融创新的重要一步。那么,为什么越来越多的投资者和基金管理选择在香港设立加密基金呢?曼昆律所白溱律师带大家一起揭开这个决定背后的背景和深远意义。在香港设立加密基金的优势在香港设立加密基金具有诸多优势,首先表现在其稳健的法律和监管环境。香港拥有稳定的法律体系和友好的金

    每日资讯 2024-07-19 07:01 620
  • 特朗普在比特币会议上的讲话,将是加密货币的关键时刻?
    特朗普在比特币会议上的讲话,将是加密货币的关键时刻?

    作者:George Kaloudis翻译:白话区块链前美国总统唐纳德·特朗普仍计划本月晚些时候亲自在纳什维尔的一场比特币会议上发表讲话,尽管他在上周六遭遇未遂刺杀事件后受伤。对加密货币来说,这是一个重要时刻。现在,加密货币正式进入了竞选舞台,超越了仅仅为了讨好某一天需要的选民群体和筹款政治行动委员会而随意提及。这一行业自成立以来一直渴望的合法性,现在在一个关于橙色硬币的会议上得到了具象化。我不是政治策略家,但我总觉得奇怪的是总统候选人会在他们根本不会输掉的州进行竞选活动。特朗普,或者说任何共和党候选人,在

    每日资讯 2024-07-18 21:01 161
  • 今日日报|WazirX遭攻击损失超2.3亿美元;香港金管局公布稳定币发行人“沙盒”参与者名单
    今日日报|WazirX遭攻击损失超2.3亿美元;香港金管局公布稳定币发行人“沙盒”参与者名单

    今日要闻提示:香港金管局公布稳定币发行人“沙盒”参与者名单美SEC批准灰度以太坊迷你信托、Proshares现货以太坊ETF在纽交所Arca上交易巴塞尔委员会发布银行加密资产敞口的最终披露框架及加密资产标准的定向修订10只以太坊现货ETF中9只已公布费用,贝莱德为0.25%Polygon计划于9月4日将MATIC迁移至POL代币WazirX疑似遭黑客入侵,损失金额超2.3亿美元BlockFi将于7月通过Coinbase向未提币用户分发加密资产德国执法机构共出售近5万枚比特币,净得约28.8亿美元监管消息香

    每日资讯 2024-07-18 20:02 1007
  • FHE vs ZK vs MPC,三种加密技术究竟有何不同?
    FHE vs ZK vs MPC,三种加密技术究竟有何不同?

    上次我们分析了全同态加密(FHE,Fully Homomorphic Encryption)技术如何运作。但是很多朋友仍然会把FHE和ZK、MPC这些加密技术弄混,因此第二篇thread计划将这三门技术详细对比一波:FHE vs ZK vs MPC 首先,让我们从最基本的问题开始: -这三种技术分别是什么? -它们如何工作? -它们如何为区块链应用工作?1.零知识证明(ZK):强调“证明却不泄露”零知识证明(ZK)技术探讨的命题是:如何在不泄露任何具体内容的情况下,验证信息的真实性。ZK建立在密码学的坚实

    每日资讯 2024-07-18 20:01 686
  • 共和党选民对加密货币的态度调查:金融自由、监管与隐私的多重考量
    共和党选民对加密货币的态度调查:金融自由、监管与隐私的多重考量

    文章作者:Katie Biber, Alex Grieve编译:Aiying艾盈今年六月,Paradigm对共和党选民进行了首次独特的民意调查,目的是了解他们对加密货币的看法。结果非常明确:共和党人热衷于金融自由。支持加密货币的共和党候选人,比如萨姆·布朗、戴夫·麦考密克和伯尼·莫雷诺,得到了选民的强烈支持。共和党人坚决反对沃伦-根斯勒倡导的集中控制观点,包括中央银行数字货币(CBDC)、取消银行业务以及强制所有金融交易通过大银行进行。总的来说,共和党人理解加密货币的吸引力,并支持国会采取行动,制定明确和

    每日资讯 2024-07-18 19:01 282