Gitcoin Grants 20!Donate here

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

Optics V1 logoOptics V1

Optics is a general messaging bridge that uses optimistic verification to validate cross-chain bridging transactions.
  • Total value locked
    $572.46 K3.74%
  • Destination
    Celo, Polygon
  • Validated by
    Third Party
  • Type
    Token Bridge
  • ...

    Detailed description

    Optics is a general messaging bridge that uses optimistic verification to validate cross-chain bridging transactions.

    Version 2 of the bridge was deployed after Celo governance lost control over the governors MultiSig keys.

    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

    Optics Bridge is a Token Bridge with ability to facilitate fast transfers via additional LP-provided liquidity. For deposits, it locks tokens in the escrow contracts on Ethereum and mints a “representation token” on the destination network. When bridging back to Ethereum tokens are burned and then released from the escrow on Ethereum.

    Third Party

    Messages on the source (home) chain are periodically signed by Updater. Updater cannot censor messages and if it refuses to attest them, it can be changed by the governance. Once message batch is attested, it is relayed to the destination (replica) by the permissionless Relayers. After the 3h fraud proof window messages can be delivered to the destination contract. During the fraud proof window, if malicious Updater tries to relay invalid message batch, anyone can submit a fraud proof to the source (home) chain slashing Updater and stopping home contract. On the destination messages cannot be stopped, so receiving contracts have to be independently notified to not process messages. Currently this mechanism is not implemented.

    • Users can be censored if updater fails to attest messages and governance does not change the Updater.

    • Funds can be stolen if updater manages to relay a fraudulent message batch.

    • Funds can be stolen if destination contract does not block receiving fraudulent messages.

    Destination tokens are upgradeable

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

    Tokens transferred end up as “representation tokens” some of them may be upgradable.

    • Funds can be stolen if destination token contract is maliciously upgraded (CRITICAL).

    Permissions

    The system uses the following set of permissioned addresses:

    Governor 0x5Fa9…ad37

    Manages Optics V1 bridge components via GovernanceRouter contract. This is a Gnosis Safe with 3 / 7 threshold.

    Those are the participants of the Governor.

    RecoveryManager 0x2bB2…C33D

    Manages Optics V1 bridge recovery via GovernanceRouter contract. This is a Gnosis Safe with 4 / 7 threshold.

    Those are the participants of the RecoveryManager.

    Permissioned account that can update message roots.

    XAppConnectionManager Watchers 0xeE42…0C81

    Watchers can unenroll, i.e. stop receiving messages, from a given Replica.

    Smart contracts

    The system consists of the following smart contracts:

    Optics Home. This contract is used to send x-chain messages, such as deposit requests. Messages are regularly signed by the Updater.

    Optics Replica. This contract is used to receive x-chain messages, such as withdrawal requests, from Relayers.

    Optics Governance Router. Manages all Optics components. This contract can store any token.

    XAppConnectionManager 0xcEc1…afA3

    Contract managing list of connections to other chains (domains) and list of watchers.

    Optics Governance Router. Manages all Optics components.

    UpdaterManager 0x2CC8…91EC

    Contract allowing Home to slash Updater. Currently does nothing, intended for future functionality.

    UpgradeBeaconController 0xbB6d…9D1B

    Contract managing Beacons.

    Value Locked is calculated based on these smart contracts and tokens:

    The current deployment carries some associated risks:

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

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