这篇文章详细介绍了如何使用 ERC7786 标准和 Axelar 适配器进行跨链消息传递,包括理论和实际的步骤,如适配器的设置、链等价关系的注册、消息的发送和执行。整篇文章围绕技术实施进行了系统性分析,适合开发者学习跨链技术的集成。
本教程使用 Base Sepolia
作为源链,使用 Arbitrum Sepolia
作为目标链。
ERC7786 定义了两个主要接口用于跨链消息传递:
IERC7786GatewaySource
- 源链接口,允许发送消息。关键组成部分:
sendMessage
:用于启动消息发送的函数,接受:
eip155:421614
表示 Arbitrum Sepolia)MessagePosted
事件IERC7786Receiver
- 目标链接口,接收消息。关键组成部分:
executeMessage
:目标网关调用的函数,以传递消息0x675b049b
)以确认成功执行需要理解的重要概念:
该标准旨在保持与协议无关的同时,允许通过属性参数实现特定协议的功能。
AxelarGatewayDuplex.sol
。
注意,在部署合约时,其中一个构造函数参数是 Axelar 网关代理,这是负责接收(或发送)各自链上所有消息的合约。
注意每条链都有自己的网关代理(至少一个)。这种架构用于将所有消息集中在一个地方,便于中继器监听事件。
这相当于 LayerZero 端点和 Hyperlane 邮箱。例如,Axelar 不同链上网关的合约地址可在其 文档 中查看。
AxelarGatewatBase.sol
通过注册具有这些标识符的链等价性来解决此问题。
IERC7786Receiver
的合约,以接收和执行消息。
sendMessage
函数。
eip155:421614
(目标链,遵循 CAIP-2 标准),0x60ff0d6060722db7357f6976c8e5b8f2f42b8759
(接收者,支持 IERC7786Receiver 的目标链合约),随机负载和空属性列表。整个流程(设置和发送消息)可以使用 此脚本 进行复制(尚未合并到主分支,且尚未准备好投入生产)。
- 原文链接: erc7786.org/examples...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!