Skip to main content
Version: Endpoint V2 Docs

LayerZero V2 Glossary

This glossary defines and explains key LayerZero concepts and terminology.

Chain ID

The native blockchain identifier assigned by the network itself (for example, 1 for Ethereum Mainnet, 42161 for Arbitrum Mainnet). This is distinct from LayerZero's Endpoint ID (EID), which is the protocol's internal identifier used to route messages between chains. When interacting with the LayerZero protocol, you'll primarily work with EIDs rather than chain IDs.

See Endpoint for more details.

Channel / Lossless Channel

A dedicated message pathway in LayerZero defined by four specific components: the sender OApp (source application contract), the source endpoint ID, the destination endpoint ID, and the receiver OApp (destination application contract).

The channel maintains message ordering through nonce tracking, ensuring messages are delivered exactly once and in the correct sequence. For example, if a token bridge on Ethereum (sender OApp) is communicating with its counterpart on Arbitrum (receiver OApp), their messages flow through a unique channel distinct from all other application pathways between these chains.

Each channel maintains its own independent message sequence, allowing multiple applications to communicate across the same chain pairs without interference.

Compose / Composition

The ability to combine multiple cross-chain operations into a single transaction. Composition allows for complex cross-chain interactions while maintaining transaction integrity across multiple chains.

Vertical Composability

The traditional form of smart contract composability, where multiple function calls are stacked within a single transaction. In vertical composability, all operations must succeed together or the entire transaction reverts, providing atomic execution. For example, when a cross-chain token bridge receives tokens, it might atomically update balances, emit events, and trigger other contract functions. All these operations either complete successfully or fail together.

Horizontal Composability

LayerZero's unique approach to cross-chain composability using endpoint.sendCompose and ILayerZeroComposer. Unlike vertical composability, horizontal composability allows a receiving contract to split its execution into separate atomic pieces. Each piece can succeed or fail independently, removing the requirement for all-or-nothing execution. This enables more flexible cross-chain operations, as applications can handle partial successes and continue execution even if some components fail. For example, a cross-chain DEX might receive tokens in one atomic transaction, then initiate a separate composed transaction for performing the swap, allowing the token receipt to succeed even if the swap fails.

Destination Chain

The blockchain network that receives and processes a LayerZero message. The destination chain hosts the contract that will execute the received message's instructions through its lzReceive function.

DVN (Decentralized Verifier Network)

A network of independent verifiers that validate message integrity between chains. DVNs are part of LayerZero's modular security model, allowing applications to configure multiple verification schemes for their messages.

Endpoint

The core, immutable smart contract deployed on each blockchain that serves as the entry and exit point for LayerZero messages. The Endpoint provides standardized interfaces for sending, receiving, and configuring messages. It's the primary interface through which applications interact with LayerZero.

Executor

Ensures the seamless execution of messages on the destination chain by following instructions set by the OApp owner on how to automatically deliver omnichain messages to the destination chain.

An off-chain service that monitors message verification status and executes verified messages on destination chains when all required DVNs have verified the message. Executors handle gas payments and message delivery.

It's a permissionless service that can be run by any party.

GUID (Global Unique ID)

A unique identifier generated for each LayerZero message that combines the message's nonce, source chain, destination chain, and participating contracts. GUIDs ensure messages can be tracked across the network and prevent replay attacks.

Lazy nonce (lazy inbound nonce)

A mechanism that tracks the highest consecutively delivered message number for a channel. Messages can be verified out of order, but they can only be executed sequentially starting from the lazy nonce. All messages before the message with lazyNonce have been verified. This ensures lossless message delivery while allowing parallel verification.

lzCompose

First, see Compose to understand what composition is.

A function that enables horizontal composition by allowing a received message to trigger additional cross-chain messages. These composed messages are processed sequentially, creating chains of cross-chain operations.

lzRead

Allows an OApp to request, receive and compute data from another blockchain by specifying the target chain and the block from which the state needs to be retrieved (including all historical data).

lzReceive

The standard function implemented by LayerZero-compatible contracts to process incoming messages. When a message is delivered, the destination chain's Endpoint calls lzReceive on the target contract with the decoded message data.

lzSend

The primary function used by the sender OApp to send messages through LayerZero. OApps call endpoint.send() on their local Endpoint, providing the destination details and message payload. The function initiates the cross-chain messaging process.

Mesh Network

LayerZero's network topology where every supported blockchain can directly communicate with every other supported blockchain. This creates a fully connected network without requiring intermediate chains or bridges.

Message Library (MessageLib)

Smart contracts that handle message payload packing on the source chain and verification on the destination chain.

MessageLibs are immutable and append-only, allowing protocols to add new verification methods while preserving existing ones. The Ultra Light Node (ULN) is the default MessageLib.

Ultra-Light Node is an implementation of Messaging Library.

Message Options

A required parameter in LayerZero transactions that specifies how messages should be handled on the destination chain. Message options must be provided either through enforced options configured at the application level or as explicit parameters in the transaction. These options control critical execution parameters like gas limits for lzReceive calls, composed message handling, and native token drops on the destination chain.

When calling functions like quote() or send(), the protocol will revert if no valid message options are present. This is a safety mechanism to ensure every cross-chain message has explicit instructions for its execution. Applications can enforce minimum gas requirements using OAppOptionsType3, which combines any user-provided options with the application's required settings. For example, an OFT contract might enforce minimum gas limits for token transfers while allowing users to specify additional gas for composed operations.

Nonce

A unique identifier for the message within specific messaging channel. Prevents replay attacks and censorship by defining a strong gapless ordering between all nonces in each channel. Each channel maintains its own independent nonce counter.

Difference between nonce and GUID:

  • Nonce is unique within a channel (between two endpoints) and sequential.
  • GUID is unique across all channels and is not sequential, allowing for tracking messages across the entire LayerZero network.

OApp (Omnichain Application)

A smart contract that implements LayerZero's messaging interface for cross-chain communication. The base contract type for building omnichain applications.

OFT (Omnichain Fungible Token)

Omnichain Fungible Token - A token standard that extends ERC20 with LayerZero's messaging capabilities, enabling seamless token transfers across different blockchains. OFTs maintain a unified total supply across all chains while allowing tokens to be transferred between networks.

OMP (Omnichain Messaging Protocol)

The core protocol that enables secure cross-chain communication. An OMP provides the fundamental messaging capabilities that higher-level applications build upon.

ONFT (Omnichain Non-Fungible Token)

Omnichain Non-Fungible Token - A token standard that extends ERC721 with LayerZero's messaging capabilities, enabling NFT transfers across different blockchains while maintaining their unique properties and ownership history.

Packet

The standardized formatted data structure for messages in LayerZero, containing the message payload along with routing and verification information. Packets include fields like nonce, source chain, destination chain and the actual message data.

Payload

The actual data being sent in a cross-chain LayerZero message. This could be token transfer information, function calls, or any other data the application needs to transmit between chains.

Security Stack

The combination of MessageLib, DVNs, and other security parameters that an application configures for its cross-chain messages. Each application can (and should) customize its security stack to balance security, cost, and performance.

Source Chain

The blockchain from which a cross-chain message is being sent.

ULN (Ultra Light Node)

The default MessageLib in LayerZero that implements a flexible verification system using configurable DVN sets. ULN allows applications to specify required and optional verifiers along with confirmation thresholds.

Ultra Light Node 302 is a MessageLib for Endpoint V2 applications. Ultra Light Node 301 is a MessageLib for existing Endpoint V1 applications wanting to utilize the new Security Stack and Executor.

Worker

A general term for offchain or onchain components that perform specific tasks in the LayerZero network, including executors and DVNs.

X of Y of Z

A configurable security model pattern where:

  • X represents the number of required DVNs
  • Y represents the number of optional and required DVNs that must verify the message
  • Z represents the total number of DVNs

For example, a "1 of 3 of 5" combination of DVNs would include one required DVN and two arbitrary DVNs out of a total of five that must verify a message for cross-chain execution.

This allows flexible security configurations tailored to each application's needs.