Skip to content
Finance Lessons

Cross-Chain Arbitrage & Bridge MEV

How Bridges Move Value

Lock-and-mint, burn-and-mint, and liquidity-network bridges, the messaging layer beneath them, and why every bridge is two transactions on two ledgers.

12 min Updated Jun 20, 2026

You found a 1% gap: ETH is $2000 on Chain A and $2020 on Chain B. The trade is obvious — buy on A, sell on B. The problem is that A and B don’t share a ledger, don’t share a clock, and have never been introduced. To act on both sides you need to move value across the gap, and the thing that does that is a bridge.

A bridge is not a teleporter. It is a cross-chain messenger: it observes an event on a source chain and, on the strength of that observation, causes an action on a destination chain. Three canonical designs dominate — lock-and-mint, burn-and-mint, and liquidity networks — and by the end of this lesson you should be able to tell them apart at a glance and see the punchline they all share: under the hood, every single one is two transactions on two ledgers, never one atomic move.

Let’s build that up from the messaging layer.

The messaging layer underneath

Before you read — take a guess

Strip a bridge down to its core. What is the one thing every bridge fundamentally is?

Peel away the marketing and every bridge reduces to a cross-chain message: a statement of the form “this event happened on the source chain, therefore perform this action on the destination chain.” Lock happened on A → mint on B. Burn happened on A → unlock on B. Deposit happened on A → pay out on B. Same skeleton every time.

Precise definition. A cross-chain message is an assertion about source-chain state, delivered to the destination chain along with enough information for the destination contract to act on it. The hard part is not delivering the bytes — it’s getting the destination chain to believe them.

That belief is the whole ballgame, because Chain B cannot natively read Chain A’s state. So a bridge always has to answer one question: who attests that the source event really happened? The usual answers:

Attestation modelWho vouchesOne-line idea
External validators / multisigAn off-chain committeeA quorum signs “yes, the lock happened.” Trust the committee.
Oracle networkA designated relayer setSpecialized nodes watch A and report to B.
Light client / native verificationMath on B verifies A’s headersB re-checks A’s consensus proofs itself. Least trust, most expensive.
Info:

We're only naming the trust models here

The full trust treatment — how attestation sets get compromised, what a 51% bridge committee looks like, and why most bridge hacks are messaging hacks — is Lesson 5. For now, just hold onto the question: who is vouching?

The wire-transfer analogy

Think of a wire transfer between two banks that don’t share a ledger. Your bank debits your account; the recipient’s bank credits theirs. But the credit only posts because someone vouched that the debit actually happened — a clearing network, a SWIFT message, a correspondent bank. The two banks never touch a common book; they trust an intermediary’s message. A bridge is the same shape: a debit on A, a credit on B, and an attestation in the middle saying “the debit is real, go ahead and post the credit.”

Map each bridge piece to its wire-transfer counterpart.

Pick a term, then click its definition.

Complete the core invariant of the messaging layer.

Choose the correct option for each blank and check.

Chain B cannot natively read Chain A's state, so a bridge must rely on before the destination action fires.

When it matters

The messaging layer is the thing you’re actually trusting when you bridge. As an arbitrageur, your capital is at risk not on the chains themselves but on the message between them — if the attestation set lies or stalls, your value is stuck in transit. Every design below is a different way of dressing up this same message, so knowing it’s there keeps you from confusing “wrapped token” or “LP payout” with the real risk surface.

Lock-and-mint (and burn-to-unlock)

Before you read — take a guess

In a classic lock-and-mint bridge, what lands in your wallet on the destination chain?

Definition. A lock-and-mint bridge takes the native asset on the source chain, locks it in a custody contract, and mints a wrapped representation of it on the destination chain — a derivative token backed 1:1 by the locked original. To go back, you burn the wrapped token on B, which signals the custody contract on A to unlock the original. Lock to go, burn to return.

Worked example: bridging 100 ETH

You bridge 100 ETH from A to B through a lock-and-mint bridge.

StepChain A (source)Chain B (destination)
1. You deposit100 ETH locked in custody contract
2. Message attested”100 ETH locked” relayed to B
3. Mint100 wrapped-ETH minted to your wallet
4. (Later) return100 ETH unlocked to you100 wrapped-ETH burned

The wrapped-ETH on B is worth one locked ETH on A — no more, no less. The invariant the bridge promises: wrapped supply on B = locked balance on A, always 1:1.

Warning:

The wrapped token is only as sound as the lock

That 1:1 peg is a promise, not a law of physics. The wrapped token’s entire value comes from the locked original sitting in a custody contract on A. If that contract is drained — a bug, a stolen key, a malicious upgrade — the backing vanishes and the wrapped token depegs toward zero while still trading on B as if nothing happened. The custody contract is a giant honeypot: one address holding everyone’s locked assets. We’ll quantify this tail risk later, but file it now: holding wrapped tokens means holding the custody contract’s solvency risk.

The fragmentation problem

Because anyone can stand up a lock-and-mint bridge, you end up with many non-fungible wrapped versions of the “same” asset: Bridge-X-ETH, Bridge-Y-ETH, Bridge-Z-ETH — all nominally “ETH on B,” none interchangeable, each backed by a different custody contract with a different trust set. Liquidity splinters across these variants, and a pool quoting “ETH” might mean any one of them. For an arbitrageur, this is a footgun: the “ETH” you sell on B might be a wrapped variant you can’t redeem through the bridge you used.

Fill in the lock-and-mint lifecycle.

Choose the correct option for each blank and check.

To bridge A→B you the original on A and a wrapped token on B; to return B→A you the wrapped token on B to the original on A.

A lock-and-mint custody contract on Chain A is exploited and emptied. What happens to the wrapped token on Chain B?

When it matters

Lock-and-mint is the most general design — it works for any asset, even one whose issuer has no idea the bridge exists, because it only needs a custody contract, not mint authority. That generality is why it’s everywhere, and why the fragmentation + custody-honeypot risks are everywhere too. As an arb, you reach for lock-and-mint when no native/canonical path exists, and you price in the depeg tail.

Burn-and-mint (canonical/native bridges)

Before you read — take a guess

What makes burn-and-mint possible where lock-and-mint is the only option for, say, a random ERC-20?

Definition. A burn-and-mint bridge applies when a single entity controls mint authority on both chains — the asset’s issuer, or a rollup’s native bridge. Instead of locking the asset, it burns (destroys) the supply on the source chain and mints the canonical asset on the destination chain. What lands on B isn’t a wrapped derivative — it’s the real, issuer-blessed token, indistinguishable from any other unit of it. Total supply across chains stays constant: burn N on A, mint N on B.

Circle’s CCTP (Cross-Chain Transfer Protocol) does this for USDC: burn native USDC on A, attest the burn, mint native USDC on B. Rollup native token bridges work the same way for the rollup’s canonical assets.

Worked example: bridging $1,000,000 USDC via CCTP

StepChain A (source)Chain B (destination)
1. Burn1,000,000 native USDC destroyed
2. AttestBurn message signed by issuer attestor
3. Mint1,000,000 native USDC minted

No custody contract holds your million dollars; the supply on A simply ceases to exist and reappears on B. There is no second-class wrapped USDC to depeg — what you hold on B is the USDC.

Lock-and-mint vs burn-and-mint, side by side

Lock-and-mintBurn-and-mint
What happens to the asset on ALocked in a custody contractBurned (destroyed)
What lands on BA wrapped derivative (1:1 claim)The canonical asset itself
What backs the destination tokenThe locked original on AIssuer’s cross-chain mint authority
Who can run itAnyone, for any assetOnly the issuer / native bridge
Main riskCustody contract drained → wrapped depegs; fragmentationIssuer / attestor compromise; censorship by the issuer
Fungibility on BFragmented (many wrapped variants)Single canonical unit, fully fungible
Tip:

Why arbitrageurs love canonical bridges

Burn-and-mint hands you the real asset, so your sell leg on B isn’t quoted in some wrapped variant with thin, splintered liquidity. No depeg-to-zero custody tail, no “which wETH is this?” fungibility puzzle. The trade-off: you’re now trusting the issuer’s attestor set and its right to freeze or censor — a different, more centralized risk, but a cleaner asset.

Match each mechanism to what lands on the destination chain.

Pick a term, then click its definition.

Spaced recall — from the messaging-layer section: regardless of whether a bridge locks-and-mints or burns-and-mints, what must happen before the destination action fires?

When it matters

When a canonical/native path exists for your asset — native USDC via CCTP, a rollup’s native bridge for its own token — prefer it. You get the real asset and dodge the wrapped-derivative depeg tail. You can’t always get one (it requires issuer cooperation), which is exactly why lock-and-mint and the next design still exist.

Liquidity-network (“inventory”) bridges

Before you read — take a guess

A liquidity-network bridge pays you on Chain B without locking or burning anything. Where do the funds on B come from?

Definition. A liquidity-network (or inventory) bridge does no minting whatsoever. Liquidity providers pre-fund inventory on both chains. When you deposit on A, the bridge immediately pays you out of its existing B-side inventory, then settles the A↔B imbalance later (often optimistically, with the relayer fronting capital and getting reimbursed once the A-side deposit finalizes). Think Across, Hop, Stargate-style designs.

The payoff: in the optimistic case you get paid on B without waiting for source-chain finality, because the LP is willing to front you against your deposit and eat the finality risk for a fee. The constraint: you can only be paid as much as the B-side inventory holds, and that inventory gets lopsided and must be rebalanced.

Worked example: bridging $1,000,000 with the canonical numbers

You move $1,000,000 (in USDC) from A to B through an inventory bridge that runs $2,000,000 of inventory on each side and charges a 0.05% (5 bps) fee.

  • You deposit $1,000,000 on A.
  • The bridge pays you 1,000,000×(10.0005)1{,}000{,}000 \times (1 - 0.0005), i.e. $999,500 out of its B-side inventory. The $500 is the bridge fee.
  • B-side inventory drops from $2,000,000 to $1,000,000; A-side inventory rises (after your deposit finalizes) toward $3,000,000.
  • The bridge is now $2,000,000 imbalanced and must rebalance — shuffle inventory back across, or wait for flow in the opposite direction — before it can serve another large A→B transfer.
BeforeAfter your $1,000,000 A→B transfer
A-side inventory$2,000,000~$3,000,000
B-side inventory$2,000,000$1,000,000
You receive on B$999,500 (5 bps fee)
Bridge stateBalancedImbalanced; needs rebalancing
Warning:

Inventory is a hard ceiling, and rebalancing isn't free

A liquidity-network bridge can only pay you out of what’s actually sitting on the destination side. Try to push $3,000,000 through $2,000,000 of B-side inventory and the bridge either rejects the trade, quotes a worse price, or makes you wait. And the rebalancing that restores capacity costs real money — it’s capital tied up, plus the bridge’s own cross-chain settlement. Don’t mistake “fast in the happy path” for “infinite capacity.” A fat arb you can’t size into is just a screenshot.

This is how you operate

Here’s the part that matters for the rest of the course: a liquidity-network bridge is a cross-chain arbitrageur wearing a bridge costume. It holds inventory on both chains, pays out of local inventory for speed, and rebalances when it gets lopsided. That’s exactly the playbook a serious cross-chain arb runs — pre-position capital on both sides so you can act instantly, then rebalance. Lesson 4 is entirely about that inventory-and-rebalancing game; this design is your first look at it.

Select EVERY statement that is true of liquidity-network bridges. (More than one.)

Fill in the inventory-bridge mechanics.

Choose the correct option for each blank and check.

A liquidity-network bridge pays you from , which makes it fast but means its capacity is , so it must periodically .

When it matters

Inventory bridges win when speed beats everything and the size fits the available inventory — which is most retail and small-arb flow. They lose on large transfers that blow past the destination pool, where you’ll hit rejects, slippage, or queues. And philosophically, they’re the model to internalize, because running your own cross-chain inventory is the endgame this course is building toward.

Why every design is two transactions on two ledgers

Before you read — take a guess

Across lock-and-mint, burn-and-mint, AND liquidity-network bridges, what structural feature is unavoidable on independent chains?

We’ve met three mechanisms that look very different — one locks, one burns, one just shuffles inventory. But zoom out and they share one settlement shape:

source transaction → (wait for finality) → relay/attestation → destination transaction

There is no atomic version of this on independent chains. On a single chain, a transaction either fully happens or fully reverts — that atomicity is exactly what makes single-chain flash-loan arb safe. Across two chains with separate consensus and no shared state, that guarantee evaporates. You commit the first leg, then you wait, exposed, hoping the second leg lands at a price you still like.

Walk the timeline

The hero visual below traces a single non-atomic cross-chain transfer through its stages — sell submitted on A → block inclusion → finality wait → bridge relay → buy executes on B — and lets you dial the two knobs that set your exposure window: how many confirmations you wait for, and how long the bridge relay takes.

Cross-chain arb: the exposure windowExposure window (price can drift): 3.9 min

Finality wait (Chain A) + Bridge relay = Exposure window (price can drift)

Exposure window (price can drift)
3.9 min
Total settlement time
4.4 min
Illustrative price drift
±0.22%
Atomic single-chain arb: 12 sOne block, exposure ≈ 0 — both legs settle together or not at all.

A single-chain arb is one atomic transaction — both legs settle in the same block, so the price never gets a chance to move against you. A cross-chain arb is two transactions on two ledgers, separated by a finality wait and a bridge relay. Wait for more confirmations and you’re safer against reorgs, but the at-risk window — and the price drift that can eat your spread — grows right along with it.

Play with it using our canonical numbers: ~12 confirmations at ~12s/block is ~144s of finality, plus a ~90s bridge relay, gives an exposure window of ~234s (~4 minutes) and a total settlement near ~250s. Toggle the atomic baseline chip and notice it collapses to zero — because on a single chain there is no window. That gap is where everything in this course lives: at ~80% annualized volatility, ~4 minutes of drift is roughly ±0.2%, which can quietly eat a fifth of your 1% gap before your second leg even fires.

The three designs, lined up against the same skeleton

Bridge designLeg 1 on A (source tx)What’s attestedLeg 2 on B (destination tx)What’s trusted
Lock-and-mintLock original in custody”Lock happened”Mint wrapped tokenCustody contract + attestors
Burn-and-mintBurn canonical supply”Burn happened”Mint canonical tokenIssuer’s mint authority + attestors
Liquidity-networkDeposit into A-side pool”Deposit happened”Pay from B-side inventoryLP solvency + relayer attestation

Same two-legged shape, every row. What differs is what moves (a wrapped claim, a canonical token, or LP inventory) and who you trust (a custody contract, an issuer, or a liquidity provider). What never differs is the existence of two legs and a gap between them.

Info:

The thesis of the whole course in one line

Bridges differ in what moves and who is trusted — but every one of them is two transactions on two ledgers with an exposure window in between. Cross-chain arbitrage is the craft of profiting across that window without getting wrecked by it.

Sort each trait under the bridge design it defines.

Place each item in the right group.

  • Pays out of pre-funded destination inventory, no minting
  • Issuer destroys supply on A and mints the canonical asset on B
  • Original is custodied; a 1:1 wrapped derivative is minted on B
  • Powers Circle's CCTP for native USDC
  • Throughput capped by inventory; must be rebalanced
  • Suffers fragmentation into many non-fungible wrapped variants

An arbitrageur completes leg 1 (sell ETH on A) and is waiting on finality + bridge relay before leg 2 (buy on B). During this ~4-minute window, what is their actual risk?

When it matters

Always. The two-legged shape is the load-bearing fact of this entire course: it’s why you need inventory (to skip a leg), why finality choice is a risk dial, and why MEV searchers can pick you off mid-transfer. Internalize “two transactions, two ledgers, one gap” and the rest of the curriculum is footnotes on managing that gap.

Recap

Big picture

How bridges move value

  • How bridges move value
    • Messaging layer
      • "Event on A → action on B"
      • Who attests? oracle / validators / light client (Lesson 5)
      • Wire transfer with no shared ledger
    • Lock-and-mint
      • Lock original on A → mint wrapped on B (1:1)
      • Burn wrapped on B → unlock original on A
      • Risk: custody drained → wrapped depegs; fragmentation
    • Burn-and-mint
      • Issuer mints on both chains (CCTP, native bridges)
      • Burn on A → mint canonical asset on B
      • No wrapped derivative; trust issuer / attestors
    • Liquidity-network
      • No minting; pay from pre-funded B-side inventory
      • Fast (optimistic, pre-finality) but inventory-capped
      • Mirrors how a cross-chain arb operates (Lesson 4)
    • Two legs always
      • source tx → finality → relay → destination tx
      • No atomicity across independent chains
      • The exposure window = price-drift risk
Three mechanisms, one shared settlement shape.

How bridges move value — mixed recap

Question 1 of 80 correct

Reduced to its essence, every bridge is fundamentally…

Check your answer to continue.

You can now tell the three canonical bridge designs apart — what each one moves, what backs it, and who you’re trusting — and you’ve seen the single structural fact under all of them: two transactions, two ledgers, one exposure window. Next, we put a number on the danger lurking in that window.

Mark lesson as complete