b bianchina.xyz
BTC ▲ 67,820 ETH ▲ 3,540 BNB ▼ 612 SOL ▲ 198 XRP ▲ 0.62 DOGE ▼ 0.14 ADA ▲ 0.58 AVAX ▲ 42.30
bianchina.xyz » layerzerozen-me-yong
深度 LayerZero怎么用 - LayerZero怎么用:跨链应用接入步骤的通俗解读

LayerZero怎么用:跨链应用接入步骤的通俗解读

发布 · 2026-05-24T06:12:21.511240+00:00 更新 · 2026-05-24T14:51:55.477612+00:00

经常有朋友问:LayerZero 怎么用?听起来很高深,其实拆开看就五步。本文不放大段源码,只用通俗语言把整个流程串起来,结合 Binance 智能链上一个最简单的计数器示例,让你看完就能动手。哪怕没写过跨链合约,也能在两小时内完成第一次端到端跨链通信。

第一步:安装依赖

在 Hardhat 项目里安装 @layerzerolabs/solidity-examples 包,它包含 LzApp、NonblockingLzApp 等基类,以及 OmniCounter 等示例合约。建议直接 fork 官方仓库,把示例目录复制到自己的项目下作为起点。结合 必安 链 RPC 配置好 hardhat.config,准备一个测试用 EOA 钱包并领取测试币。

第二步:继承基类

写一个继承自 NonblockingLzApp 的合约,构造函数把本链 Endpoint 地址传进去。重写 _nonblockingLzReceive,定义收到消息时的处理逻辑。最简化的示例只在内部递增一个计数器,便于后续验证消息是否真的送达。注意所有跨链回调函数都应通过 internal 实现,并仅由基类调用,避免外部直接调用绕过校验。B安交易所 上的初学者合约模板都是这种结构。

第三步:配置可信远端

部署到两条链后,在源链调用 setTrustedRemote,把目标链的 chainId 与目标合约地址组合成 bytes 写入;在目标链做对称配置。这一步是 LayerZero 安全模型的核心,必须由 owner 严格控制。如果你不熟悉 abi.encodePacked,可以使用官方提供的 lzAddress 辅助函数生成正确字节。