跳到主要内容

131 篇博文 含有标签「Ethereum」

关于以太坊区块链、智能合约和生态系统的文章

查看所有标签

介绍以太坊坎昆升级

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

以太坊上海(Shapella)升级,详解

· 阅读需 6 分钟
Dora Noda
Software Engineer

提取、gas调整,以及后续发展——不带炒作。


简短版本

Shapella升级,是上海(执行层)和Capella(共识层)的混成词,于2023年4月12日在以太坊上线。其标志性功能是自信标链启动以来首次启用质押提取

标题变更EIP-4895引入了一个系统,验证者提取从共识层自动"推送"到执行层,无需用户交易或gas费用。与此同时,四个较小的EIP用于微调EVM,包括gas成本降低(Warm COINBASE)、字节码优化(PUSH0)和合约创建限制(Initcode计量)。升级还作为对开发者的最终警告,SELFDESTRUCT操作码即将被弃用。

Shapella有效地关闭了Merge的循环,下一个重大升级Dencun于2024年3月13日跟进,将网络焦点转移到EIP-4844"blob"的可扩展性上。


为什么Shapella是一个关键里程碑

从信标链诞生到2023年4月,质押ETH是一条单行道。你可以存入32 ETH来帮助保护网络并获得奖励,但你无法取回本金或那些共识层奖励。这种锁定的流动性是一个重大承诺,对许多潜在质押者来说是一个障碍。

Shapella通过打开退出门改变了一切。

升级的核心是EIP-4895,巧妙地设计了一个系统级"提取操作"。 不再要求质押者制作交易并支付gas来提取,协议本身现在自动从共识层收集符合条件的资金并将它们推送到执行层。这种清洁的、基于推送的设计最小化了复杂性和风险,使得测试和安全部署变更变得更加容易。


实际改变了什么:EIP的通俗解释

Shapella是五个关键以太坊改进提案(EIP)的包:

  • EIP-4895 — 信标链提取(基于推送) 这是主要事件。它启用了部分(奖励)和完全(本金+奖励)提取从共识层流向质押者指定的提取地址。关键创新是这些不是用户发起的交易;它们是嵌入在提议区块中的自动操作。

  • EIP-3651 — "Warm COINBASE" 这个EIP做了一个小但重要的gas优化。在EVM中,COINBASE指的是区块生产者(验证者)的地址,不是交易所。在Shapella之前,智能合约在交易中第一次访问此地址时,会产生更高的gas成本。EIP-3651使COINBASE地址默认为"warm",降低了经常与其交互的协议的gas成本,比如那些直接向区块构建者支付MEV小费的协议。

  • EIP-3855 — PUSH0操作码 EVM的简单而优雅的添加。这个新操作码PUSH0正如其名:将值零推送到堆栈上。以前,开发者必须使用更重、更昂贵的操作码来实现这一点。PUSH0使字节码略小且更加gas高效,特别是对于大量将变量初始化为零的合约。

  • EIP-3860 — 限制和计量initcode 这个变更为用于创建智能合约的代码(initcode)引入了两个规则。首先,将initcode的最大大小限制为49,152字节。其次,为这些代码的每个32字节块添加了小额gas费用。这防止了涉及过大合约的拒绝服务攻击,并使合约创建成本更可预测。

  • EIP-6049 — 弃用SELFDESTRUCT(警告) 这不是代码更改,而是对开发者社区的正式警告。它表示允许合约删除自身并将其ETH发送到目标地址的SELFDESTRUCT操作码,将在未来升级中大幅改变其功能。这给开发者时间在Dencun升级后来用EIP-6780改变其行为之前逐步淘汰对它的依赖。


提取101:部分vs完全

Shapella引入了两种类型的自动提取,每种都有自己的规则。

  • 部分提取 这些是自动奖励清扫。如果验证者的余额由于共识层奖励增长到32 ETH以上,协议会自动"撇掉"超额金额并将其发送到指定的提取地址。验证者保持活跃并继续其职责。这无需质押者采取任何行动。

  • 完全提取(退出) 这是为了想要停止验证并取回其全部余额的质押者。质押者必须首先广播自愿退出消息。等待期后,验证者变得有资格进行完全提取。一旦在清扫中处理,全部余额就会发送到提取地址,验证者不再是活跃集的一部分。

吞吐量和节奏

网络被设计为平稳处理提取而不造成不稳定。

  • 每个区块(每12秒)最多可以包含16次提取,允许每天大约115,200次提取的最大值。
  • 区块提议者扫描活跃验证者列表并包含前16个符合条件的提取。下一个区块提议者从最后一个停止的地方继续,确保每个验证者都能在队列中轮到。
  • 为了防止大量外流破坏网络稳定,每个epoch(每约6.4分钟)可以退出的验证者数量受到流失限制的限制。这个限制基于活跃验证者总数动态调整,平滑退出潮。

还需要注意的是,共识层奖励由这个EIP-4895提取机制处理,而执行层奖励(优先费用和MEV)直接发送到验证者配置的费用接收者地址并立即可用。


接下来发生了什么:Dencun和通往可扩展性的道路

Shapella标志着"Merge时代"的成功完成。随着质押现在成为一个完全流动的双向过程,开发者将注意力转向以太坊的下一个重大挑战:可扩展性

下一个重大升级Dencun(Deneb + Cancun)于2024年3月13日到来。其核心是EIP-4844,它引入了"blob"——一种为第2层rollup向以太坊主网发布交易数据的新的、更便宜的方式。这大大降低了L2上的交易费用,并且是以rollup为中心的路线图的重大进展。Dencun还通过实施EIP-6780履行了EIP-6049的承诺,显著限制了SELFDESTRUCT操作码的权力。


大局观

Shapella是以太坊权益证明共识的基本信心里程碑。通过启用提取,它降低了质押风险,恢复了流动性,并确认了网络执行复杂、协调升级的能力。它还提供了一些实用的EVM改进,清理了技术债务并为未来优化铺平了道路。

简而言之,Shapella不仅为质押者打开了退出门——它巩固了后Merge时代的基础,并为以太坊专注于其下一个前沿:大规模可扩展性清理了跑道。

BlockEden.xyz 正式发布由 EthStorage 提供支持的 dStore

· 阅读需 6 分钟
Dora Noda
Software Engineer

我们的使命是构建并加速未来的 Web3 行业。我们专注于开发者体验,并致力于持续创新。这就是为什么我们现在推出由 EthStorage 提供支持的去中心化文件存储服务。dStore 是为来自任何区块链的创作者和开发者提供的托管存储解决方案。它具有用户友好、兼容 EVM、低成本和 PB 级扩展等特点,所有这些都由 EthStorage 提供动力。

BlockEden.xyz dStore

什么是 EthStorage?

EthStorage 是一个二层(Layer 2)解决方案,基于以太坊的数据可用性(Data Availability)提供可编程的动态存储。它将大幅降低在以太坊上存储大量数据的成本,将成本从 1% 降低到 0.1%。EthStorage 存储大数据带来的低成本能够更好地实现未来完全去中心化的网络。EthStorage 与 EVM 高度集成,并兼容 Solidity、Remix、Hardhat 和 MetaMask。该团队获得了以太坊基金会(Ethereum Foundation)关于数据可用性研究的资助。

EthStorage comparison with File coin and Arweave

EthStorage 由 QuarkChain 创始人、EIP-4804/4972/5018/5027/5478 作者周齐博士发明。你可以通过以下渠道追踪 EthStorage 的状态:

为什么去中心化存储很重要?

去中心化存储之所以重要,是因为它允许数据以分布式的方式存储,而不是存储在单一位置。这具有多项优势,例如提高安全性和可靠性,以及增强可访问性。例如,由于去中心化存储系统是分布式的,它们更不容易受到攻击、审查或故障的影响,即使某些单个组件失效,系统也能继续运行。此外,由于数据存储在多个设备上,可以从多个位置访问,从而为用户提供更多便利。

BlockEden.xyz 的 dStore 提供了什么?

我们坚信周博士为去中心化网络带来更高成本效益存储的愿景,并希望与他的团队合作,让全球每一位 Web3 开发者都能享受到这一创新。

具体而言,我们将采用 EthStorage 作为我们 blob 存储的底层供应商。我们的开发者可以基于此进行开发,从而更快地构建 DApp 并实现即时扩展。

文件管理 Web 门户

开发者和创作者可以将他们的静态资产拖放到此文件存储中并轻松管理。我们将他们从管理私钥、支付交易费用以及在区块链上维护文件的繁琐事务中解放出来。

BlockEden.xyz dStore architecture

为了确保存储的去中心化,开发者可以随时将托管存储导出到自己的地址。此外,我们将开源文件存储的后端,以便开发者或其他面向开发者的提供商可以轻松托管文件管理服务。

通过战略合作伙伴关系开启新的业务可能性

除了今天推出的 dStore,EthStorage 和 BlockEden.xyz 之间未来还有集成机会。

CDN 加速读取

大多数互联网服务都是读密集型的,从去中心化存储中获取大量资源需要时间。通过我们的 CDN 服务,开发者既可以享受源文件的去中心化,又可以享受我们通过 CDN 实现的极快速度。

EthStorage 节点服务与 API 网关

我们将在 EthStorage 主网上线后,为开发者和企业提供 EthStorage 测试网和主网区块链节点的 API 访问。以下是开发者应该选择我们而不是自建节点或官方节点的几个原因:

  1. 轻松访问区块链节点:BlockEden.xyz ChainPlus API 提供对 EthStorage 节点的便捷访问,可用于与这些区块链网络进行交互。10 秒内即可开始构建,而无需花费 20 小时启动或无数时间进行维护!

  2. 可扩展性:BlockEden.xyz 提供高度可扩展的节点,能够处理高水平的流量和交易。对于需要处理大量数据或用户活动的业务和项目来说,这至关重要。

  3. 可靠性:BlockEden.xyz 节点高度可靠,正常运行时间达 99.9%。这对于需要确保其应用程序或服务对用户始终可用的企业和项目来说非常重要。

如何搭配 EthStorage 使用 dStore?

步骤 1。访问 https://BlockEden.xyz/dash/dstore,然后将你的文件拖放到窗口中。

dStore - how it works? Step 1

步骤 2。文件成功上传到 EthStorage 后,你将在表格中看到该项目,然后右键单击该行并选择“Copy URL”以获取链接。你还可以通过选择“Delete”来删除文件。

dStore - how it works? Step 2

诚然,当前版本的 dStore 存在一些局限性。我们暂不支持上传目录和大文件(大小 > 2MB)。上传中等大小的图像可能需要几十秒。然而,这只是一个初始版本,我们将长期不断改进产品。

EthStorage 创始人周齐博士在 Twitter 上分享了他的赞誉——

BlockEden.xyz 的商务负责人 Mike Thrift 评论道:“dStore 丰富了我们面向创作者和开发者的捆绑产品,并为我们面向区块链的聚合功能 API 服务奠定了坚实的基础。它使我们成为以太坊生态系统的积极贡献者,并为我们的 Aptos 和 Sui 开发者提供了比 IPFS 或 Arweave 更具成本效益且灵活的选择。”

BlockEden.xyz 致力于为 Web3 开发者提供最佳的开发体验,这不仅限于区块链 RPC。去中心化存储为开发者在我们的“一站式商店”中管理其 NFT 资产和文件打开了新大门。立即在 https://blockeden.xyz/dstore 免费开始。

Extending BlockEden.xyz RPC Service to Ethereum Ecosystem

· 阅读需 2 分钟
Jack Sim
Web3 Builder

Back to a month ago, we made a public incognito Ethereum mainnet RPC endpoint available to Metamask users (blog post), which attracted and was used by a few users. Now we decided to expand the benefit to our developer customers too!

eth

How to get started?

Step 1. Go to https://blockeden.xyz/dash/. Please sign up if you haven’t done so.

Step 2. Input your name for the API key, select ETH Mainnet, and then click + Create key.

create eth mainnet api key

Step 3. Grab your access URL by clicking it and copying it to the clipboard.

Step 4. Use the access URL in your project like the following. Remember to replace <access_key> with your own key.

To test it, using curl to connect ETH mainnet

curl --location --request POST 'https://eth-mainnet.blockeden.xyz/<access_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
"jsonrpc":"2.0",
"method":"eth_blockNumber",
"params":[],
"id":73
}'

Why Ethereum Network?

Ethereum network has the biggest developer ecosystem, and there are so many great innovations accumulated over years. Supporting it is going to create significant synergy with Move ecosystem. Many of our customers are not exclusive Move developers. Building a single stop for all needed services makes their life easier.

Enjoy our new service and happy holidays!