图片

我们,DFINITY 研发团队,很高兴地宣布 EVM RPC 容器现已上线,可供 ICP 开发者社区使用,EVM RPC 是一个互联网计算机容器智能合约,旨在使用链上 API 与以太坊和其他 EVM 区块链进行通信。

为什么这很重要

开发人员的目标是编写与以太坊网络和其他 EVM 链通信的 ICP 智能合约,ICP 已经通过 HTTPS 调用实现了这一点,以太坊协议定义了软件应用程序通过基于 HTTP 的 RPC(远程过程调用)接口与任何以太坊节点交互的规范。

随着兼容 EVM 的 Layer-2 链的兴起,开发人员现在可以利用此接口签署和发送原始交易等功能,RPC 接口可用于直接与以太坊网络和其他网络(如 Optimism 或 Arbitrum)交互。

尽管有协议级工具可用,但将它们捆绑在一起对开发人员来说可能很麻烦,这就是为什么 DFINITY 研发团队几个月前宣布他们将为社区创建一个 EVM RPC 容器,整合所有最佳实践。

DFINITY 的工程团队设计了一种解决方案,利用容器智能合约执行 HTTPS 调用并达成拜占庭共识的功能,提供与以太坊网络或任何兼容 EVM 的衍生网络直接集成的方法,这是通过与部署在 ICP 主网上的其他容器智能合约集成实现的。

EVM RPC 容器智能合约可以将互联网计算机的无限计算能力与以太坊网络上持有的数十亿资产相结合,从而在去中心化应用程序生态系统中构建新颖的、有趣的和有用的应用程序。

如何使用它

该容器已经运行了!

首先,请查看 EVM RPC 文档或示例代码或 GitHub 上的容器代码,或者您也可以在 ICP 仪表板上查找容器:

  • internetcomputer.org/blog/features/evm-rpc-canister-launch

  • internetcomputer.org/docs/current/developer-docs/multi-chain/ethereum/evm-rpc/samples

  • github.com/internet-computer-protocol/evm-rpc-canister

  • dashboard.internetcomputer.org/canister/7hfb6-caaaa-aaaar-qadga-cai

怎么运行的

在 EVM RPC 容器之前

要从以太坊发送或接收数据(例如查询最新区块),应用程序必须执行几个复杂的步骤。

第一步是获取要向其发送请求的以太坊节点的地址,虽然确实存在多个聚合器,但无法保证任何单个 RPC 服务器的可用性,因此很难构建依赖于来自任意 RPC 端点的数据的可靠应用程序,此外,一些 RPC 服务器缺乏一致的隐私政策,许多服务器会给请求链带来高延迟。

出于这些原因,通常使用知名的 RPC 提供商,例如 Ankr 或 PublicNode,它们提供具有高正常运行时间、低延迟和广泛支持链的 API。

图片
使用唯一 RPC 提供程序查询以太坊节点的应用

对于具有严格安全要求的应用程序,还必须确保提供商的结果与网络上的其他节点一致,这是通过向不同的提供商并行发送多个请求,然后比较每个提供商返回的响应以确定它们是否一致来实现的,如果任何响应不匹配,则必须有一个明确定义的机制来区分事实和虚构。

图片
使用多个 RPC 提供程序来确保高度数据完整性的应用

最后,必须将以太坊节点返回的响应解码并反序列化为应用程序使用的底层类型系统,以便可以在应用程序对以太坊数据的实现上下文中使用。

互联网计算机作为连接不同区块链的枢纽的作用是通过强大的安全属性和通过容器智能合约在链上执行出站 HTTPS 请求的独特能力实现的。

这一切意味着,任何试图以某种方式与以太坊网络集成的应用程序都必须获取多个 API 密钥,安全地存储它们并管理它们的轮换,同时还要审查提供商以确保 API 质量、正常运行时间和数据完整性。

除此之外,应用程序还必须定义接口并实现转换逻辑以处理传入数据,如果这一切对于独立应用程序来说似乎有点难以有效处理,那是因为事实确实如此。

EVM RPC 容器背后的设计

EVM RPC 容器旨在降低与 EVM 兼容的网络进行查询和交易的复杂性,它旨在供其他 ICP 容器和在 ICP 之外部署的利用代理的应用程序使用。

该服务公开了一个接口,将几个关键的以太坊 JSON RPC API 封装到一个方便类型的 Candid 接口中,通过规范化和比较来自多个提供商的给定调用的结果来确保响应一致性,这确保了从支持的 EVM 兼容网络(包括以太坊主网)返回和发送到该网络的数据的完整性具有高度可信度。

EVM RPC 容器还消除了为不同 RPC 提供商采购、管理和轮换 API 密钥的负担,只公开一个可随使用量不透明扩展的接口,这意味着容器只需连接 Cycles,并且可以假设 EVM RPC 容器可以正常工作,从而使容器开发人员可以专注于其业务逻辑。

在后台,EVM RPC 容器会全天候进行检测和监控,以防出现异常、使用高峰、中断、攻击等情况,并由一支技术精湛的团队提供支持,随时准备解决出现的任何问题。

图片

治理

网络神经系统是一个 DAO,即去中心化自治组织,它管理着互联网计算机,使构建由社区管理的民主化、去中心化应用程序成为可能。

EVM RPC 容器就是这样一个应用程序的示例 — 它由 NNS 控制,这意味着对容器代码所做的任何更改都必须通过系统中的神经元(即 ICP 代币持有者)投票和批准的提案进行。

对 RPC 提供程序的任何更改(包括添加、删除或修改)都必须由授权通过 NNS 提案执行一次性操作的一方执行,这最终将塑造 EVM RPC 容器功能的权力直接交到了使用它的社区手中。

用于构建安装到 EVM RPC 容器的 Web Assembly(Wasm)模块的代码在 GitHub 上公开可用,任何人都可以构建 Wasm 并验证其哈希是否与部署到 ICP 主网的哈希相匹配,这样做可以确保容器本身的完整性 - 人们能够阅读和验证的代码与在互联网计算机上运行的代码完全相同。

安全便捷

EVM RPC 容器消除了采购、管理和轮换 API 密钥的复杂性,这些密钥用于促进与以太坊和以太坊兼容网络的通信,它提供了多种便利,使处理来自基于 EVM 的 RPC 端点的数据变得简单而轻松。

DFINITY 将 EVM RPC 容器开发为一种去中心化服务,使社区能够随着时间的推移管理其发展。

总之,这些创新使开发人员能够构建 dApp 和 DeFi 项目,这些项目原生使用世界上最大的加密货币之一,发挥巨大的价值并为以太坊智能合约带来先进的功能。

结论

EVM RPC 容器简化了 ICP 智能合约与以太坊和其他 EVM 兼容网络的集成,通过消除管理 API 密钥和确保数据完整性的复杂性,EVM RPC 容器使开发人员能够专注于构建创新的去中心化应用程序。

图片

立即开始

  • 探索 EVM RPC 文档以了解如何将 EVM RPC 容器集成到您的项目中;

  • 查看示例代码以了解 EVM RPC 容器的实际实现;

  • 加入 forum.dfinity.org 开发者社区,分享您的经验、提出问题并与其他开发者合作。

通过使用 EVM RPC 容器,您可以构建利用 ICP 和以太坊优势的 dApp 和 DeFi 项目,推动去中心化应用程序的未来。

在 internetcomputer.org 上开始构建,并加入 forum.dfinity.org 开发者社区。

#EVM #ICP #DFINITY $BTC $ETH $ICP

你关心的 IC 内容

技术进展 | 项目信息 | 全球活动

收藏关注 IC 币安频道

掌握最新资讯