Orca Crypto
Menu
Start Here
Learn
Chains
Exchanges
Markets
Tools
Safety
Glossary
More
Our tokens Book a session
Expert · The transaction supply chain

Cross chain security: bridge trust models and messaging

Every bridge answers one question: who says it happened on the other chain? The answer is the security model.

Loading live prices
By the Orca Crypto teamUpdated 2026-09-28How we check this12 min readExpert
The short answer

A blockchain cannot observe another blockchain, so every bridge rests on someone attesting that an event happened elsewhere. Bridges differ by who that is: an external committee or multisig, an optimistic watcher with a fraud window, a light client or validity proof that checks the consensus of the source chain itself, or only the two counterparties. The large bridge failures, Ronin, Wormhole and Nomad among them, were each a failure of that verification layer.

A chain cannot see another chain

A smart contract on chain B can read chain B’s state and nothing else. When a bridge releases funds on B because a deposit happened on A, the contract on B is acting on a claim about A. The whole security of the bridge is the security of that claim: who makes it, what it costs to make a false one, and what checks it before funds move.

Two properties make bridges among the most attacked contracts in crypto. They concentrate value, because a lock and mint bridge holds the entire backing of every wrapped token it has issued. And they sit between two security domains, so the weaker of the two chains, or the verification layer between them, sets the bar. A token bridged from a chain with billions in stake through a five person multisig is secured by the multisig.

Four ways to verify a message

ModelWho attestsYou trustTypical failure
Externally verifiedA multisig, a validator or guardian set, an oracle networkA quorum of the committee is honest and its keys are safeKey compromise, collusion, a bug in signature checking
Optimistically verifiedAnyone posts a claim; watchers can dispute it within a windowAt least one honest watcher is live and able to act in timeNobody disputes, or the fraud check itself is broken
Natively verifiedA light client or validity proof of the source chain’s consensus, run on the destinationThe source chain’s own validators and the client or circuit codeLight client bugs, finality mismatches, expensive verification
Locally verifiedOnly the two counterparties, as in atomic swaps and liquidity networksYour counterparty cannot cheat without you noticing and reactingLimited to what counterparties can check; liveness and griefing risk

The first model is the cheapest and most general, and it is where most losses have occurred. The third is what a rollup’s canonical bridge uses, since the L1 verifies the rollup’s proofs, and what IBC uses between Cosmos chains. Zero knowledge light clients aim to bring native verification to pairs of chains where running one chain’s light client on the other would be too expensive, at the cost of proving overhead and circuit risk.

What a light client actually checks

Native verification is concrete. An IBC light client for a Tendermint style chain stores a trusted validator set. For each new header a relayer submits, it checks that validators holding more than two thirds of the voting power signed it, or, when skipping ahead, that enough of the set it already trusts signed it to hand trust over to the new set. Trust expires: if no update arrives within the client’s trusting period, it can no longer verify anything until it is revived through governance. Evidence of misbehavior, two conflicting signed headers at the same height, freezes the client so that no further messages are accepted. The relayer carrying all of this is untrusted: it can delay a message but cannot forge one. What remains is trust in the source chain’s validators and in the light client code.

Lock and mint, burn and mint, liquidity networks

Separate from how a message is verified is what the message does to assets.

Asset modelMechanismWhere the risk sits
Lock and mintLock the original on the source chain, mint a wrapped token on the destinationThe lockbox. If it is drained, every wrapped token is unbacked at once
Burn and mintThe issuer burns on one chain and mints on the other, for example Circle’s CCTP for native USDCThe issuer’s attestation, which holders of the token already trust
Liquidity networkA relayer or solver pays you on the destination from its own inventory and is repaid laterRelayers carry the settlement risk; you carry only a short delivery risk

The invariant a lock and mint bridge must hold is simple: wrapped supply on all destinations never exceeds the amount locked. Every exploit below broke it by minting or releasing against a message that was never really sent. Liquidity networks change who bears that risk. The user is paid quickly by a relayer, and the relayer’s repayment is what the verification layer secures. Across, for example, verifies relayer repayment bundles optimistically through UMA’s oracle, with bonds and a dispute path. See intents and solvers for the fill side.

Messaging protocols by trust model

General messaging protocols carry arbitrary payloads, token transfers included. Described by who attests, as each project documents it in September 2026:

ProtocolWho attestsThreshold and configurationExtra controls
IBCOnchain light clients of the counterparty chain; relayers only carry proofsThe counterparty’s own validator setRelayers are permissionless and cannot forge messages
LayerZero v2Decentralized Verifier Networks (DVNs) chosen per application and pathwayX of Y of N: every required DVN plus a threshold of optional onesDefault configurations typically include LayerZero Labs as a required DVN and as executor; its docs advise adding a required DVN it does not operate
Wormhole19 Guardians13 of 19 signatures on each VAAA Governor that delays suspicious flows, and a Global Accountant that enforces the supply invariant
Chainlink CCIPA default Committee Verifier of 16 independent node operators on every laneQuorum of the committee, plus any extra Cross Chain Verifiers the lane, token pool or receiver requiresA curse mechanism can halt traffic; token pools carry rate limits
HyperlaneInterchain Security Modules on the destinationA default multisig ISM, or one the application configures, composes or writesSecurity is chosen per application

The trend is visible across the table: a sensible default plus the ability for an application to add independent verifiers. That is good design and also a transfer of responsibility. An application that ships with a default configuration has accepted the default’s trust model, whether or not anyone read it. The LayerZero DVN documentation and Wormhole’s Guardian documentation are good examples of stating these assumptions plainly.

The math of a k of n committee

A committee bridge is exactly as secure as the cheapest way to control k of its n signers. Nominal k is almost never the real number, because signers are not independent: keys run by the same company, hosted by the same cloud provider, approved through the same signing interface or reachable through the same employee collapse into one failure domain.

effective threshold = fewest independent failure domains that together hold k keysA 5 of 9 multisig where one organization can produce five signatures has an effective threshold of 1.

Ronin is the canonical example. Nine validators, five signatures to withdraw: a threshold that looked like five independent parties. Sky Mavis ran four validators and still held a permission, granted months earlier and never revoked, to sign for the fifth. Compromising one organization reached the threshold.

Economic security gives a second lens. A lock and mint bridge’s profit from corruption can be close to its entire locked value. If its verifiers are backed by slashable stake, the cost of corruption is the stake a quorum would lose. With illustrative numbers, a bridge holding $500 million, verified by a committee that needs two thirds of $300 million in stake to sign, costs $200 million to corrupt and pays up to $500 million: economically insecure regardless of how honest the operators are today. Restaked verification tries to raise the cost side; the restaking guide covers how that math works and where it breaks.

Four failures, four lessons

BridgeWhenLossModelWhat broke
RoninMarch 23, 2022, noticed March 29173,600 ETH and 25.5 million USDC, about $625 million5 of 9 validatorsKeys: four Sky Mavis validators plus a stale delegated signature for a fifth
WormholeFebruary 2, 2022120,000 wETH minted without backing, about $326 million13 of 19 GuardiansCode: the Solana contract accepted a forged signature check; the Guardians were never compromised
Harmony HorizonJune 2022About $100 million2 of 5 multisigKeys: two signer keys compromised
NomadAugust 1, 2022About $190 millionOptimistic, with a fraud windowInitialization: an upgrade marked the zero root as confirmed

Ronin: the threshold was an illusion

The attackers reached Sky Mavis systems through a fake job offer, took the keys they needed, and withdrew in two transactions. Nobody noticed for six days, until a user could not withdraw. The FBI attributed the theft to North Korea’s Lazarus Group. Lessons: count failure domains, not signers; revoke temporary permissions; alert on large outflows. The Ronin case study tells it in full.

Wormhole: the verifier trusted its input

On Solana, Wormhole verified Guardian signatures by delegating to the secp256k1 program and then inspecting the instructions sysvar to confirm that verification had happened. The contract did not check that the account passed in as the sysvar was the real one. The attacker supplied an account crafted to look like a successful verification, obtained a valid looking signature set, and minted 120,000 wETH on Solana, bridging part of it back to Ethereum. Jump Crypto replaced the ETH within about a day. Lesson: in a signature verification path, every account and every input is attacker controlled until proven otherwise.

Nomad: the zero value was trusted

solidity
// Simplified sketch of the pattern in Nomad's Replica contract (2022).
mapping(bytes32 => uint256) public confirmAt;   // root => time it becomes acceptable
mapping(bytes32 => bytes32) public messages;    // message hash => root it was proven under

function acceptableRoot(bytes32 root) public view returns (bool) {
    uint256 t = confirmAt[root];
    if (t == 0) return false;                   // unknown root
    return block.timestamp >= t;                // optimistic window has passed
}

function process(bytes memory message) external {
    bytes32 h = keccak256(message);
    // A message that was never proven has messages[h] == bytes32(0).
    require(acceptableRoot(messages[h]), "!proven");
    // ... mark processed, then release funds to the recipient in the message
}

// The June 2022 upgrade initialized the zero root as confirmed.
// bytes32(0) became an acceptable root, so every unproven message passed.

Nomad was an optimistic bridge: roots became acceptable after a fraud window. A routine upgrade in June 2022 initialized the zero root as confirmed. A message that had never been proven maps to the zero root by default, so every unproven message passed. Once the first exploit transaction appeared, others copied it, replacing only the recipient address, and about $190 million left in roughly two and a half hours. Lesson: default values are inputs, and initialization is as security critical as any function.

Defense in depth

No verification model is perfect, so well run bridges assume one layer will fail and limit what a single failure can cost.

  1. Require independent verifiers to agree

    Combine verification paths with AND, not OR: a committee and a proof, or two committees run by different organizations on different infrastructure. OR combinations make the weakest path the security.

  2. Rate limit and delay

    Cap outflows per asset per time window and delay transfers above a threshold, as Wormhole’s Governor and CCIP’s token pool rate limits do. A drain becomes a leak that responders can stop.

  3. Enforce the supply invariant on chain

    Track wrapped supply against locked collateral across chains and refuse any mint that breaks it, the job Wormhole’s Global Accountant performs.

  4. Watch and be able to stop

    Monitor for anomalous flows and give a narrowly scoped role the power to pause, so the six day gap at Ronin becomes minutes.

  5. Treat upgrades and keys as the attack surface

    Timelocked upgrades, reviewed initialization, and admin key hygiene with real signer independence. Several of the incidents above began with an upgrade or a key, not with the verification math.

Choose the trust model, not the interface
Before bridging a large amount, find out which model the route uses, who the verifiers are, and whether the token you receive is canonical on the destination or a wrapped claim on a lockbox. Canonical rollup bridges are slower and natively verified; fast routes are faster because someone else carries the risk, and that someone is paid for it. L2BEAT’s interop pages summarize these assumptions for many bridges, and living on more than one chain covers the practical side.

What is still unsolved

  • Finality mismatches. A bridge that attests before the source chain is final can be reorged out from under. Waiting for finality costs latency; not waiting costs safety. Fast bridges price that gap.
  • The cost of native verification. Light clients for heterogeneous chains and the proofs for ZK light clients are improving but not free, so committees remain the default for many chain pairs.
  • Configuration risk. Modular security moves decisions to application teams, and misconfigured or stale defaults become the new weak link.
  • Economic security that holds under stress. Staked or restaked verifier sets only help while slashable value exceeds what an attack pays across every application they secure at the same time.

Common questions

What is the safest kind of bridge?

Natively verified bridges, where the destination checks the source chain's own consensus through a light client or a validity proof, add the fewest new trust assumptions. A rollup's canonical bridge is the common example. They are usually slower or costlier, and they still carry code risk in the client or proof system.

Why do bridges get hacked so often?

They hold large balances behind a verification layer that must be right on two chains at once, and much of that layer has been small committees or complex signature checking code. Ronin, Wormhole, Harmony and Nomad together lost over a billion dollars in 2022 through keys, a verification bug and an initialization bug.

What is the difference between lock and mint and burn and mint?

Lock and mint holds the original asset in a contract and issues a wrapped claim elsewhere, so the lockbox backs every wrapped token. Burn and mint has the issuer destroy the token on one chain and create it on another, as Circle's CCTP does for USDC, so there is no lockbox to drain and the trust sits with the issuer.

Does a bigger multisig make a bridge safer?

Only if the extra signers are independent. What matters is how many separate organizations, infrastructures and signing workflows an attacker has to compromise. Ronin was 5 of 9 in name and effectively one organization in practice.

What are rate limits on a bridge?

Caps on how much value can leave per asset per time window, often with delays for large transfers. They do not stop an exploit, but they turn a total drain into a bounded loss and give monitoring time to pause the bridge.

Kept on this device only. Nothing is sent anywhere.

Where to go next

Next: Restaking and shared security

Guide 12 of 16 in the Expert level. Your place is kept on this device, so you can pick up exactly here next time.

Share this page

Was this page useful?