Learn how DVNs work in LayerZero V2, including verification methods, implementation types, and the X-of-Y-of-N security model for cross-chain messaging.
LayerZero is an interoperability protocol that enables secure and seamless communication between different blockchain networks. At the core of LayerZero’s security model are Decentralized Verifier Networks (DVNs).
DVNs are independent entities that validate the authenticity and integrity of messages sent across blockchains within the LayerZero ecosystem. They ensure that a message sent from a source chain arrives untampered at its destination.In the context of the LayerZero protocol, DVNs provide:
Verification: Verifying the hash (a unique digital fingerprint) of a LayerZero message emitted on a source chain.
Customizable Security: Applications built on LayerZero can select any number or type of DVNs to achieve their desired level of cross-chain security. This flexibility allows for tailored security postures.
A DVN is essentially a smart contract paired with off-chain infrastructure that provides its own inherent trust mechanism. When a message is sent via LayerZero:
The message is picked up by the chosen DVN(s) via the PacketSent event.
The DVN(s) independently verify the message hash using their unique security logic.
Upon successful verification, the DVN calls verify on the destination chain’s Message Library.
Once all required DVNs have verified, the message can be committed and executed.
LayerZero is agnostic to how a DVN is implemented. This design allows for diverse verification approaches that can be tailored to specific security requirements.
The traditional approach gives you full control over your DVN but requires managing wallets, gas tokens, and transaction infrastructure across all supported chains. This path is ideal for organizations that need complete control over every aspect of their DVN operation.Best for:
Organizations with existing multi-chain infrastructure
LayerZero Labs offers a simplified DVN implementation using Gasolina. This approach separates the security function (verification and signing) from the operational complexities (gas management and transaction submission), allowing DVN operators to focus purely on security while LayerZero’s Essence service handles transaction delivery.Best for:
Security providers without multi-chain infrastructure
Rapid deployment scenarios
Teams wanting to focus on verification rather than operations
Solana DVNs use a multi-step CPI (Cross-Program Invocation) based verification flow rather than a single interface. The verification process involves three key instructions:
Instruction
Program
Description
init_verify
ReceiveULN
Initializes a confirmations account to store DVN verification state
OApps configure DVNs as part of their Security Stack, using an X-of-Y-of-N model:
Report incorrect code
Copy
Ask AI
struct UlnConfig { uint64 confirmations; // Block confirmations required uint8 requiredDVNCount; // X - all of these must verify uint8 optionalDVNCount; // N - total optional DVNs uint8 optionalDVNThreshold; // Y - threshold of optional DVNs address[] requiredDVNs; // Addresses of required DVNs address[] optionalDVNs; // Addresses of optional DVNs}
This configuration allows applications to require:
DVNs are LayerZero’s flexible and customizable security layer for cross-chain communication. They enable applications to choose their security parameters while maintaining decentralization and trust minimization.Whether you choose the traditional implementation path for full control or the Gasolina approach for operational simplicity, DVNs provide the critical verification layer that makes secure cross-chain messaging possible.
Explore existing DVN providers available on each chain
If you’re new to operating DVNs, we recommend starting with the Gasolina approach. You can always migrate to a traditional implementation later as your needs evolve.