Skip to main content
How it works

Trust model

This page describes the trust assumptions, control responsibilities, and failure modes of a Linea Stack deployment. It is meant for architects and operators evaluating Linea Stack before deployment.

What this page covers: who operates each component, what each component can do unilaterally, what participants can independently verify, what happens when something fails, and how trust assumptions change across deployment models.

What this page does not cover: configuration flags, deployment topology, or component internals. For those, see Core components and Deployment models.

Trust assumptions per component​

ComponentOperated byCan do unilaterallyCannot doIndependently verifiable by participants
SequencerOperatorOrder, delay, or omit transactions within a blockForge state, since invalid blocks fail proof verificationBlock contents and ordering, by running a full or archive node
ProverOperatorStall proof generation, halting finalizationProduce a valid proof for an invalid state transitionProof verification by reading the verifier contract on the finalization layer
CoordinatorOperatorStall the pipeline that conflates blocks, requests proofs, and submits them to L1Modify state independently of the sequencer or proverL1 submission events
Data availability (rollup)EthereumN/AWithhold data, since DA is on L1 as EIP-4844 blobsState reconstruction from L1 blobs
Data availability (validium)DA committee chosen by operatorWithhold data, halting recoveryForge state, since proofs still verify on L1What participants observe via DA committee access
Canonical bridge (to Ethereum / Linea-anchored chain)Operator (admin keys) + protocol (proofs)Pause bridging via pause roles; upgrade contractsForge messages: both sides verify ZK proofsBridge events and proof verification on the finalization layer
Trusted bridge (to private or non-anchored chain)Operator (admin keys) + trusted relayerPause bridging; relayer can withhold or delay messagesForge messages, since the relayer signs over verified source-chain eventsBridge events on each side; no shared proof, so verifiability depends on trust in the relayer
System contractsOperator (role holders)Pause, upgrade, change verifier address, change rate limitsBypass role gating: every privileged function is role-gatedRole assignments and contract state on the finalization layer
Participant nodesEach participantRead state visible to them, broadcast transactionsModify network stateTheir own observed state, by running a node

Admin keys and upgrade authority​

The Stack contracts ship with a fixed set of roles. Holders are decided by the operator at deploy time. The most consequential decisions:

RoleWhat it can doRecommended holder
DEFAULT_ADMIN_ROLEGrant or revoke any other roleMultisig or governance contract; assignable only at initialization
OPERATOR_ROLESubmit blobs/calldata, finalize blocksDay-to-day operator address
SECURITY_COUNCIL_ROLEReserved for governance pause/upgrade authorityGovernance contract
PAUSE_*_ROLE / UNPAUSE_*_ROLEPause and unpause specific subsystems (L1↔L2, L2→L1, finalization, state submission, etc.)Split between operator (pause) and governance (unpause) for fast incident containment
VERIFIER_SETTER_ROLEChange the verifier contract for a given proof typeGovernance contract
RATE_LIMIT_SETTER_ROLEChange L2→L1 withdrawal rate limitsGovernance contract

Contracts are upgradeable via the OpenZeppelin upgradeable proxy pattern. Upgrade authority is held by DEFAULT_ADMIN_ROLE. There is no protocol-enforced timelock: operators must implement timelocks via the governance contract holding the role.

warning

DEFAULT_ADMIN_ROLE cannot be assigned through __Permissions_init. It is set only via the explicit defaultAdmin initializer field. Plan the holder before initialization.

For the full list of roles, see LineaRollup contracts reference.

Trust assumptions per deployment model​

Trust dimensionPublic rollup (L1=Ethereum)Private validium (L2 on Ethereum)Private validium (L3 on Linea Mainnet)
Data availabilityEthereumOperator-run DA committeeOperator-run DA committee
Finality anchorEthereumEthereumLinea Mainnet (which itself anchors to Ethereum)
Sequencer trustOperator can reorder/delay; cannot forge stateSameSame
Bridge trustCryptographic proof + admin key for upgrades/pausesSameAdds Linea Mainnet bridge trust on top
Inherited trust assumptionsEthereum L1 onlyEthereum L1 onlyEthereum L1 + Linea Mainnet (sequencer, prover, Security Council, admin keys)
State reconstruction without operatorYes, from L1 blobsNo: depends on DA committeeNo: depends on DA committee

A private validium deployed as L3 on Linea Mainnet inherits Linea Mainnet's trust assumptions in addition to its own. See Linea Mainnet risk disclosures for those.

Failure modes and recovery​

FailureParticipant impactRecovery pathStatus
Sequencer haltBlock production stops; pending transactions not includedOperator restart; multi-sequencer setups via distributed sequencing (QBFT)Single-sequencer is the default; multi-sequencer is operator-implemented
Prover stallProofs not generated; finalization stops; soft-finalized blocks remain on L2 but not finalized to L1Operator restart; alternate prover instanceSingle-prover is the default
Coordinator stallL1 submission stops; same effect as prover stall downstreamOperator restartSingle-coordinator is the default
DA withhold (validium)Participants cannot reconstruct state independently; new state still verifiable via proofOperator-defined wind-down procedure; depends on consortium agreementOperator-defined; not protocol-enforced
Finality layer reorgAffects depth of L1 finality; ZK proofs once accepted on L1 cannot be reorged without breaking L1Wait for L1 finality depthInherent to L1 finality model
Admin key compromiseCompromised role can act within its scope until revoked; DEFAULT_ADMIN_ROLE compromise affects all rolesMulti-sig key revocation via Web3Signer/KMS; emergency pause via PAUSE_ALL_ROLE; contract pause via Multi-Sig Governance ContractOperator-implemented
Bridge haltCross-chain transfers stopPause roles can halt bridging; resumption via unpause roleLive
Forced transaction (escape hatch)Allows participants to bypass a censoring sequencerL1-submitted forced transactions, gated by AddressFilterNot yet live; planned

The default deployment topology assumes single-instance sequencer, prover, and coordinator. For high availability, operators run multi-instance setups via distributed sequencing (QBFT).

What participants can independently verify​

The set of guarantees a participant can verify without trusting the operator depends on the deployment model.

Public rollup

  • Full transaction history, by reading L1 blobs and reconstructing L2 state.
  • Proof validity, by reading the verifier contract on L1.
  • Bridge events and message status, on L1.
  • Contract role assignments and admin actions, on L1.

Private validium (L2 on Ethereum)

  • Proof validity, by reading the verifier contract on L1.
  • That a state transition was proved, even if its contents are private.
  • Bridge events on L1.
  • Their own observed state, by running a node with DA committee access.
  • They cannot reconstruct state without DA committee access. This is the validium trade-off.

Private validium (L3 on Linea Mainnet)

  • Same as private validium on L2, but proofs are verified on Linea Mainnet (which is itself proved to Ethereum).
  • Verifying the L3 chain end-to-end requires verifying both the L3 proof on Linea Mainnet and Linea Mainnet's proofs on Ethereum.

See also​

Was this page helpful?