L2BEAT Bridges is a work in progress. You might find incomplete research or inconsistent naming. Join our discord to suggest improvements!

Omnichain (LayerZero) logoOmnichain (LayerZero)

The security parameters of each individual token must be individually assessed, and can be changed by the developers. Omnichain tokens are are in the early stages of development, use at your own risk.

...


Tokens:

Knowledge Nuggets

Description

This project includes unverified contracts (CRITICAL).
The security parameters of each individual token must be individually assessed, and can be changed by the developers. Omnichain tokens are are in the early stages of development, use at your own risk.

This page gathers Omnichain Tokens built on top of LayerZero AMB protocol, currently they are: STG, Harmony Bridge OFT, BOBA and agEUR. Risk associated with using any of them varies, depending on the technological decisions made by the developers. LayerZero as a framework to build omnichain application does not provide any base security as applications can define their own security settings, however applications and tokens choosing the default security settings will leverage security provided by default Oracle, Relayer, Verification Library and Proof Library. Default settings are managed by LayerZero team.

If you find something wrong on this page you can submit an issue or edit the information.

Risk summary

Note: This project's overview requires more research and might not present accurate information. If you want to contribute you can edit the information on Github. Alternatively you contact the project team on Twitter and encourage them to contribute a PR.

Technology

Principle of operation

Omnichain tokens are tokenized Token Bridges. One chain is designated as main and acts as an token escrow. Transfers from the main chain are done using typical lock-mint model. Transfers between other (non-main) chains are made using burn-mint model. The implementation details may vary between each individual omnichain token and must be individually assessed.

Oracles and Relayers

Note: This section requires more research and might not present accurate information.

Omnichain tokens are built on top of LayerZero protocol. LayerZero relies on Oracles to periodically submit source chain block hashes to the destination chain. Once block hash is submitted, Relayers can provide the merkle proof for the transfers. The Oracle and Relayer used can be either default LayerZero contracts, or custom built by the token developers.

  • Users can be censored if oracles or relayers fail to facilitate the transfer (CRITICAL).

  • Funds can be stolen if oracles and relayers collude to submit fraudulent block hash and relay fraudulent transfer (CRITICAL).

  • Funds can be stolen if omnichain token owner changes Oracle/Relayer pair for their own (CRITICAL).

  1. LayerZero security model analysis

Permissions

The system uses the following set of permissioned addresses:

Default Relayer 0x902F…089E

Contract authorized to relay messages and - as a result - withdraw funds from the bridge.

Default Oracle 0x5a54…10B2

Contract that submits source chain block hashes to the destination chain.

LayerZero Multisig 0xCDa8…4C92

Contract authorize to update default security parameters (Relayer, Oracle, Libraries). Owner of the Endpoint and UltraLightNodeV2 contract. This is a Gnosis Safe with 2 / 5 threshold.

Those are the participants of the LayerZero Multisig.

Smart Contracts

Note: This section requires more research and might not present accurate information.

The system consists of the following smart contracts:

Contracts using LayerZero smart contracts to transfer tokens between chains. The implementation details may vary between each individual omnichain token and must be individually assessed. LayerZero as a framework to build omnichain application does not provide any base security as applications can define their own security settings, however applications and tokens choosing the default security settings will leverage security provided by default Oracle, Relayer, Verification Library and Proof Library. Default settings are managed by LayerZero team. The source code of this contract is not verified on Etherscan.

Default LayerZero Inbound Proof Library v1 0x462F…B859

Contract used to validate messages coming from other chains, e.g. Ethereum, Arbitrum, Optimism.

Default LayerZero Inbound Proof Library v2 0x0724…df89

Contract used to validate messages coming from other chains, e.g. Aptos.

Endpoint 0x66A7…d675

Contract used for cross-chain messaging.

UltraLightNodeV2 0x4D73…78E2

Default send and receive library.

TreasuryV2 0x3773…e34d

Contract responsible for fee mechanism.

NonceContract 0x5B90…6068

The current deployment carries some associated risks:

  • Funds can be stolen if the source code of unverified contracts contains malicious code (CRITICAL).

  • Funds can be stolen if a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL).

  • the source code of unverified contracts contains malicious code (CRITICAL).