OP Stack
Anatomy of cross-chain message

Anatomy of a cross-chain message

A cross-chain message refers to any communication sent using Superchain interop. This includes messages sent between different chains within an interop cluster, as well as messages sent on a single chain for interoperable. This functionality enables asset transfers that utilize the SuperchainERC20 token standard.

How it works

To send a cross-chain message on the Superchain using Superchain interoperability, these two aspects must be in place:

  1. Each interoperable chain runs a verifying node for each chain in the interoperable set.
  2. Each cross-chain message has an initiating transaction on the source chain and a finalizing transaction on the destination chain.
    • First/initiating transaction: is submitted to the source chain and emits an event that can be consumed on a destination chain.
    • Second/finalizing transaction: is submitted to a destination chain, where the block builder should only include it if certain that the first transaction was included in the source chain. The block builder can use OP-Supervisor to determine the integrity of the initiating message. Anyone can submit the second transaction.
💡

There is no strict requirement that the executing message is ever submitted. See the specs for details on tracing the executing message event (opens in a new tab).


Anatomy of Cross-Chain Message with Interop

In the example above, Ox123 sends 1 OP from OP Mainnet to Base, but this applies to any asset using the SuperchainERC20 token standard.

Next steps