今天,我们很高兴地宣布,我们的以太坊网关现在支持 Görli 和 Sepolia 测试网络(testnets),并支持 以太坊合并 升级。Sepolia 和 Görli 测试网可用于测试和开发完全去中心化的应用程序(dapps),或测试即将部署在以太坊主网上的升级。这些测试网同样使用以太坊协议,主要区别在于测试网上交易的 Ether 没有实际价值。
以太坊是一个具有智能合约功能的去中心化区块链,Cloudflare 允许您通过 HTTP API 与其交互。关于以太坊和我们的网关的简要介绍,请参考我们之前的博客文章 以太坊网关。
共识机制解析
工作量证明(Proof of Work)
工作量证明是以太坊区块链最初的共识机制,由比特币推广开来。矿工竞争成为第一个解决难题的人,从而更新区块链上的最新交易并获得奖励。矿工和处理能力越多,网络就越安全。虽然最初认为这有助于去中心化,因为它可以在商用硬件上运行,但用户开始使用高度强大的计算机硬件(如 ASIC 和 GPU)来解决这些复杂的数学难题。这意味着网络的安全性伴随着巨大的代价。庞大的以太坊矿工网络每年消耗超过 80 太瓦时的电力——超过智利全国的年耗电量。显然,这不是一种可持续的共识机制,尤其是在加密货币和 web3 技术应用日益广泛的情况下。
权益证明(Proof of Stake)
权益证明是一种共识机制,允许质押了指定数量加密货币的用户运行节点来提议和验证区块,并获得加密货币奖励。这些节点通常称为验证者,负责保持网络的安全和进展。对于每个时段,随机选择一个验证者节点作为提议者,并随机选择一个验证者节点委员会来验证提议的区块。如果验证者行为不诚实或不可用,他们将受到经济惩罚,即其质押会被“削减”。权益证明显著更可持续——以太坊基金会估计其耗电量将比工作量证明减少 99.95%。此外,它还有一个额外好处,即验证者有经济激励来维护区块链的健康。
权威证明(Proof of Authority)
权威证明与权益证明非常相似,验证者提议和验证区块以推动其区块链进展。然而,一个显著区别是,节点只有经过权威节点批准才能成为验证者,而不是通过质押。Cloudflare 目前为 现已弃用的 Rinkeby 测试网 运行一个这样的权威节点。与工作量证明和权益证明相比,这对于公共区块链来说是一种相当不常见的共识算法,但通常用于可信社区,如企业和政府的内部网络。
Cloudflare 以太坊网关架构
在 Cloudflare,我们相信使用自己的技术来构建产品,以太坊网关也不例外。以太坊网关允许任何客户与以太坊网络交互,而无需运行自己的专用节点。JSON-RPC 调用首先由 Worker 接收,这是部署在我们所有数据中心的无服务器代码,确保来自任何地理区域的查询都能快速处理,并使用 Worker 已知的最新区块号对请求进行规范化。
然后,Worker 将调用传递给 Cloudflare 负载均衡器,该负载均衡器对应于指定的以太坊主网或测试网,并将调用发送到我们 Kubernetes 集群内的以太坊节点代理。以太坊节点代理将调用排队,并将其分发给就绪且同步的、具有所请求区块的以太坊节点。我们的以太坊节点由一个执行客户端和一个共识客户端组成。
共识客户端负责权益证明共识,我们添加它是为了为合并升级准备网关。然后,以太坊节点与指定的以太坊网络通信以完成 RPC 请求。为确保最大的速度、可靠性和可用性,我们在集群中构建了冗余的以太坊节点代理实例和以太坊节点。
合并升级详解
以太坊合并是以太坊网络期待已久的升级,它将共识方法从当前浪费资源的工作量证明协议更改为更高效的权益证明协议。合并还为以太坊网络的进一步发展打开了大门,例如 分片,这有望加速交易并降低成本。
当达到 终端总难度(TTD) 时,以太坊合并将当前的以太坊区块链与以太坊信标链(一个权益证明链)结合起来。合并完成后,以太坊信标链将成为共识客户端通信以提议和验证区块的地方。现有的区块链将与信标链合并,将合并后的每个区块链接到信标链上的一个时段。区块链将继续处理以太坊交易和智能合约。
为准备合并,节点运营商必须在其执行客户端旁边部署一个共识客户端,如 Prysm 或 Lighthouse。如果这在合并之前没有发生,他们的节点区块链副本将停止同步,执行客户端将卡在合并前的最后一个区块上。
Sepolia 和 Görli 测试网使用指南
根据我们的 以太坊网关文档,我们使得向您偏好的测试网发送 JSON-RPC 调用变得极其简单。在您 创建以太坊网关 后,将 URL 中的网络从 mainnet 更改为 sepolia 或 goerli。例如,针对此示例网关向 sepolia 测试网调用 eth_blockNumber 将如下所示:
$ curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc": "2.0", "method": "net_version", "params": [], "id": 35}' https://web3-trial.cloudflare-eth.com/v1/sepolia
{"jsonrpc":"2.0","result":"11155111","id":35}此测试网支持将帮助您确保您的更改在部署到以太坊主网之前可以轻松测试和加固,而不会对您的品牌信任或产品可用性造成额外风险,同时无需担心操作自己的基础设施。
我们希望确保任何利用我们以太坊网关的人都能够获得信心和信任,确保任何推进的更改都不会影响最终用户体验。归根结底,互联网是为最终用户服务的,他们的体验和感知必须始终在我们的视野范围内。
Rinkeby 测试网弃用通知
作为此公告的一部分,我们将弃用由我们运营以支持以太坊生态系统的、公共地址为 0xf10326c1c6884b094e03d616cc8c7b920e3f73e0 的 Rinkeby 签名者。按照 以太坊基金会弃用 Rinkeby 测试网的决定,我们将于 2023 年 1 月 15 日停止对 Rinkeby 测试网的支持。
此外,如果您迫不及待地想要开始在我们的 web3 网关上构建,请查看我们的 产品文档 以获取更多指导。
常见问题
什么是以太坊合并?
以太坊合并是以太坊网络从工作量证明(PoW)共识机制过渡到权益证明(PoS)共识机制的重大升级。这一变化旨在显著降低网络能耗,提高可扩展性,并为未来的改进(如分片)奠定基础。
Görli 和 Sepolia 测试网有什么区别?
Görli 和 Sepolia 都是以太坊的测试网络,用于在将应用程序部署到主网之前进行开发和测试。主要区别在于它们的共识机制和验证者集。Sepolia 使用权益证明(PoS),而 Görli 使用权威证明(PoA)。开发者可以根据测试需求选择适合的网络。
如何开始使用 Cloudflare 的以太坊网关?
要开始使用 Cloudflare 的以太坊网关,您需要首先创建一个网关实例。然后,您可以通过简单的 HTTP API 调用与以太坊主网或支持的测试网(如 Sepolia 和 Görli)交互。文档提供了详细的端点信息和示例代码。
合并后,以太坊的交易速度会立即加快吗?
合并本身主要改变共识机制,旨在降低能耗和提高安全性。它不会立即显著提升交易速度或降低 Gas 费用。交易性能的显著提升预计将在后续的升级(如分片)中实现。
为什么 Rinkeby 测试网被弃用了?
Rinkeby 测试网被弃用是以太坊生态系统演进的一部分,旨在简化测试环境并集中资源于更现代、更高效的测试网(如 Sepolia 和 Görli)。这有助于开发者社区更有效地进行测试和开发。
运行一个以太坊节点在合并后有什么变化?
合并后,运行一个完整的以太坊节点需要同时运行两个软件客户端:一个执行客户端(处理交易和状态)和一个共识客户端(处理 PoS 共识)。节点运营商需要确保两者都正确设置并同步,以跟上网络发展。