LayerZero is an interoperability protocol that uses a novel technique to make it easier for different blockchain networks to connect with each other.
The method employed by LayerZero uses on-chain light nodes in a much more economical way. It makes use of decentralized oracles to stream block headers on demand, so it doesn’t need to keep all block headers sequentially.
LayerZero is a user application (UA) configurable on-chain endpoint that runs a ULN. LayerZero relies on two parties to transfer messages between on-chain endpoints: the Oracle and the Relayer.
When a UA sends a message from chain A to chain B, the message is routed through the endpoint on chain A. The endpoint then notifies the UA specified Oracle and Relayer of the message and it's destination chain.
The Oracle forwards the block header to the endpoint on chain B and the Relayer then submits the transaction proof. The proof is validated on the destination chain and the message is forwarded to the destination address.