跳到主要内容

11 篇博文 含有标签「以太坊」

查看所有标签

介绍以太坊坎昆升级

· 阅读需 3 分钟
Dora Noda
Software Engineer

以太坊是全球采用最广泛的智能合约区块链平台,以其定期升级而闻名,每次升级都会带来新功能、参数调整或安全性提升。这些升级既源于主动创新,也为缓解潜在安全威胁而进行,标志着以太坊多年来的演进。

A Major Leap Towards a Faster, More Economical Network

在去年九月以太坊合并之前,平台已经经历了 14 次升级。值得注意的是,2016 年 DAO 分叉事件后进行了一次被动升级,当时因一次网络攻击导致 DAO 项目 ETH 资金受到威胁,随后诞生了以太坊经典(ETC)。

过去几年中,出现了多次重要升级。2020 年 8 月的伦敦升级引入了 EIP-1599,实现了 ETH 销毁以及每笔交易基础费用的动态调整。2022 年 9 月的巴黎升级将以太坊的共识机制从工作量证明(POW)转为权益证明(POS),标志着机器挖矿时代的结束。

在上海升级之后,以太坊核心开发团队宣布,今年最重要的更新将是坎昆升级,预计将在今年晚些时候推出。

坎昆升级:它是什么以及为何重要?

该升级以举办以太坊开发者大会(Devcon)的城市命名,坎昆升级将为以太坊网络实现关键改进。

升级的明星 EIP-4844 旨在让以太坊节点能够临时存储和检索链下数据,以满足区块链应用的数据和存储需求。如果成功实现,EIP-4844 有望降低 Layer 2(L2)汇总方案的成本。据称,EIP-4844 已在四个开发网络上完成测试,第五个测试网络即将上线。

EIP-4844 原本计划在上海升级期间完成,但被推迟至坎昆升级。开发者还同意在本次升级中加入 EIP-6780(为未来的 Verkle 树应用做准备)、EIP-6475(提供更好的可读性和紧凑序列化)以及 EIP-1153(引入瞬态存储 opcode)。

升级背后的原理

以太坊可扩展性工作的核心在于提升数据处理量和速度。两条路线同步推进——Layer 2 汇总和主网分片。EIP-4844 的实现是迈向完整分片的第一步。

在坎昆升级之前,L2 信息存储在 L1 的 Calldata 中。由于 Calldata 空间有限,这种方式成本高且受限。

坎昆升级后,L1 将存储在一个名为 “Blob” 的新位置。Blob 存储更经济且空间更大,使以太坊能够容纳更多数据、提升每秒交易数(TPS)并降低成本。Blob 是一种临时数据包,每 30 天清理一次,节点只需每月下载固定量的数据,从而减轻节点负担。

本质上,坎昆升级将使 L2 更加廉价和快速。这不仅有利于 L2 协议,也将促进基于 L2 的生态系统快速发展。

总之,即将到来的以太坊坎昆升级有望成为重要里程碑,开启高效、低成本、可扩展区块链应用的新纪元。请持续关注,以太坊社区将继续在去中心化技术前进的道路上不断创新。

ERC-4337:通过账户抽象革新以太坊

· 阅读需 3 分钟
Dora Noda
Software Engineer

大家好,欢迎再次来到我们的区块链博客!今天,我们将深入探讨一个令人振奋的新提案——ERC-4337,它在无需任何共识层协议更改的情况下为以太坊引入账户抽象。该提案依赖于更高层的基础设施来实现其目标。让我们一起了解 ERC-4337 能提供什么,以及它如何解决当前以太坊生态系统的局限性。

ERC-4337 是什么?

ERC-4337 是一个提案,通过使用独立的 mempool 和一种称为 UserOperation 的新型伪交易对象,将账户抽象引入以太坊。用户将 UserOperation 对象发送到替代的 mempool,特殊类别的参与者——捆绑者(bundlers)将其打包成交易,并调用专用合约的 handleOps 方法。这些交易随后被包含进区块。

该提案旨在实现以下目标:

  1. 让用户能够使用具有任意验证逻辑的智能合约钱包作为其主要账户。
  2. 完全消除用户拥有外部拥有账户(EOA)的需求。
  3. 通过允许任何捆绑者参与包含账户抽象用户操作的过程,确保去中心化。
  4. 使所有活动都在公共 mempool 上进行,消除用户需要了解特定参与者直接通信地址的需求。
  5. 避免对捆绑者的信任假设。
  6. 无需任何以太坊共识层的更改,以实现更快的采纳。
  7. 支持其他用例,例如隐私保护应用、原子多操作、使用 ERC-20 代币支付交易费用以及开发者赞助的交易。

向后兼容性

由于 ERC-4337 不改变共识层,对以太坊没有直接的向后兼容性问题。然而,ERC-4337 之前的账户由于缺少必要的 validateUserOp 函数,难以直接兼容新系统。可以通过创建一个兼容 ERC-4337 的账户,将验证逻辑重新实现为包装器,并将其设置为原始账户的受信任操作提交者来解决此问题。

参考实现

想深入了解 ERC-4337 技术细节的朋友,可以在 https://github.com/eth-infinitism/account-abstraction/tree/main/contracts 查看参考实现。

安全性考虑

ERC-4337 的入口点合约必须经过严格审计和形式化验证,因为它是整个系统的核心信任点。虽然这种方式降低了单个账户的审计和形式化验证负担,但也将安全风险集中在入口点合约上,必须进行稳健的验证。

验证应覆盖两个主要声明:

  1. 防止任意劫持的安全性:入口点仅在 validateUserOp 对特定账户通过后才通用调用该账户。
  2. 防止费用耗尽的安全性:如果入口点调用 validateUserOp 并通过,它还必须使用 calldata 等于 op.calldata 的通用调用。

结论

ERC-4337 是一个令人振奋的提案,旨在无需共识层协议更改就为以太坊引入账户抽象。通过使用更高层的基础设施,它为去中心化、灵活性以及各种用例打开了新可能。虽然仍需解决安全性问题,但该提案有望显著提升以太坊生态系统和用户体验。