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, 0x123 sends 1 OP from OP Mainnet to Base, but this applies to any asset using the SuperchainERC20 token standard.

Next steps