Architecture
LinethLineth (Formerly the Linea Stack) The open-source ZK-rollup stack, codebase, and technical protocol that's the foundation of Linea Mainnet. Operators can deploy this stack to launch their own Ethereum-compatible L2 or L3 networks. architecture supports a configurable protocol that delivers developer-ready L2 and L3 networks, scaling Ethereum by providing an Ethereum-equivalent execution environment.
OperatorsOperator The entity or consortium responsible for deploying, administering, and running the network infrastructure, contracts, keys, access controls, and operational procedures for a network built on Lineth. and network designers configure their stack to shape protocol behavior and trust assumptions, for example, choosing the data availability and finalization design.
The following represents a possible configuration for a network built on Lineth:
This example configuration represents Linea Mainnet. While the Lineth ZK-rollupZero-knowledge rollup An L2 scaling solution that uses a zero-knowledge proof as its validity proof to post data back to Ethereum. As compared to optimistic rollups, this validity proof allows for a more secure trust assumption and removes the need for a challenge period. protocol is agnostic to the finalization layer (it's unopinionated on where proofs are written), this configuration finalizes transactions by submitting proofs to Ethereum Mainnet and temporarily making data available there.
Components overview
Lineth is comprised of several broad classes of components:
- Nodes: A fully public network provides externally reachable nodes. In other deployment types, node services may be configured to be private or semi-private.
- Internal protocol services: Operator-run services for proof generation and finalization (sequencer, coordinator, prover, state manager, and tracer). Traffic between them stays inside the operator's trusted network boundary.
- Smart contracts: Versioned onchain contracts, with immutability or upgrade controls depending on deployment.
- Auxiliary services:
- Block explorer: While this is optional, explorer data simplifies transaction building, auditing, and troubleshooting.
- Web3Signer: Secure signing service ensuring that nodes may sign without revealing keys.
Nodes
Every Lineth node runs two clients: an execution client, which executes transactions and maintains EVM state, and the consensus client, Maru, which orders blocks and propagates them to peers. The two communicate over the standard Ethereum Engine API.
Any node can also expose JSON-RPC to serve applications, users, or internal services, either publicly or only within the operator's network.
Consensus client: Maru
Maru implements
QBFTQuorum Byzantine Fault Tolerance (QBFT) The Byzantine-fault-tolerant consensus algorithm that Maru implements to let a validator set produce and finalize blocks, tolerating faulty validators in a 3f+1 validator set. consensus and runs
on every node, in one of two roles:
- Validator: Proposes and votes on blocks as part of the QBFT validator set. Maru requests a payload from its execution client, then signs and broadcasts the resulting block.
- Follower: Receives blocks from peers and passes them to its execution client for execution, without voting.
In both roles, Maru manages validator sets, provides P2P block propagation, and exposes API endpoints for monitoring and control.
Execution client: Linea Besu
Any Ethereum execution client that implements the Engine API can serve as a Lineth execution client and integrate with Maru, including Linea Besu, Besu, Geth, Erigon, and Nethermind. This promotes client diversity and compatibility with existing Ethereum node tooling and infrastructure.
Linea Besu is a distribution of
Besu that bundles several Lineth-specific plugins with preset startup profiles.
These plugins implement the protocol functions that a standard Ethereum client doesn't provide: trace
generation for the proverProver The Lineth component that generates ZK proofs of state transitions, handling proof-generation requests from the coordinator and Linea Besu. The prover produces three types of proofs (execution, compression, and aggregation) and combines them into a zk-SNARK that the finalization layer verifies. Provers may be scaled horizontally to meet throughput requirements., Lineth block-building rules,
state managerState manager The Lineth component that maintains the network's state representation for proof generation and recovery. It consists of a Besu node with the Shomei plugin and a Shomei node that uses sparse Merkle trees to track state changes block by block, generate Merkle proofs for state transitions, and serve linea_getProof RPC requests. integration, and the linea_ RPC namespace.
The sequencerSequencer The component of the Lineth execution client responsible for ordering, building, and executing blocks in a way that allows the subsequent ZK proof to be made. It's implemented as a set of plugins extending Linea Besu, including the tracer. There's typically one sequencer per network. and trace generationTracer The Linea Besu plugin, part of the sequencer, that generates the execution traces the prover needs to create zero-knowledge proofs. The tracer provides trace counts for batch-size calculations and produces conflated trace files as prover input. depend on those plugins, so those roles require Linea Besu. Nodes that follow the chain or serve standard Ethereum JSON-RPC can run any execution client. For the full plugin set and its configuration, see the Linea Besu plugin reference.
Internal protocol services
Internal protocol services are required for proof generation and finalization.
Sequencer
The sequencer orders transactions and builds blocks according to Lineth rules. Typically deployed as a protected internal service.
With further decentralization efforts, components such as the sequencer may be redesigned to be configurable as an external P2P service.
Coordinator
The coordinator orchestrates batching, proof generation, and submission to the finalization layer.
Prover
The prover generates zk-SNARK proofs for state transitions. Provers may be scaled horizontally to meet throughput requirements. The Lineth proving architecture is also evolving toward guest-program-based proof generation with RISC-V.
State manager
The state manager maintains a state representation optimized for proof generation and recovery.
Tracer
The tracer generates execution traces required for proof generation.
Onchain system contracts
Smart contracts execute small programs according to EVM rules. Once deployed, they are immutable unless they are explicitly designed with upgradeability or administrative controls.
Lineth includes system contracts deployed in two locations:
-
On the finalization layer: The finalization contract validates zk-SNARKzk-SNARK (Zero-Knowledge Succinct Non-interactive Argument of Knowledge) A type of ZK proof where the prover and verifier don't have to interact. With zk-SNARKs, you can verify 1 transaction or 1 billion transactions in the same amount of time. proofs and records finalized state roots. This contract must be deployed on the finalization layerFinalization layer The blockchain where a Lineth deployment submits proofs and state commitments for verification and hard finality. If the finalization layer is Ethereum (an L1), the deployment is an L2. If the finalization layer is Linea (an L2), the deployment is an L3..
-
On the deployed network itself: Application-specific contracts are deployed on the network instance to enable token issuance, workflow automation, and other network-specific functionality.
-
On both layers: Bridge contracts are deployed on both the destination chain and the deployed network to enable cross-chain token transfers and message passing.
For more information about the system contracts, see Smart contracts.
Auxiliary services
Block explorer
The block explorer is an optional, operator-facing service used for inspection, troubleshooting, and auditing. Linea Mainnet uses Blockscout, an open-source, self-hosted explorer that indexes chain data from execution nodes and presents it via a web interface.
The explorer connects to the network via JSON-RPC or WebSocket, continuously indexes blocks, transactions, logs, and token data, and stores this information in a relational database. It allows operators to inspect blocks and transactions, review contract activity, track bridge operations, and monitor network health.
Block explorers are not required for network operation and do not participate in consensus, execution, or finalization. They can be deployed, replaced, or omitted without affecting correctness or liveliness.
Web3Signer
Web3Signer is an open-source, remote signing service that externalizes private key management from the nodes themselves. Web3Signer integrates with enterprise-grade key stores, exposing HTTP‑based signing APIs that allow consensus and execution clients to obtain signatures on blocks, attestations, and transactions without directly holding the private keys.
Web3Signer ensures that signing operations are access‑controlled, and auditable rather than embedded in each node. This tooling simplifies key revocation and rotation workflows, and ensures that private keys never leave the secure boundary of the key store.
Data availability
Data availability is crucial in preserving and providing access to transaction data required to reconstruct the state of the network. While zk-SNARK proofs ensure the correctness of state transitions, data availability is the guarantee that the transaction data underlying these proofs remains accessible to anyone who wants to verify or reconstruct the historical state.
How data availability is handled depends on the deployment model of the network. The network may rely on another blockchain or third-party service to provide data availability, or operators may run nodes specifically for data availability.
- Private validiumValidium A deployment model in which a Lineth network proves state transitions with zk-SNARKs but keeps transaction data in a private data availability layer instead of publishing it to the finalization layer. Only state commitments and proofs are posted onchain, so participants without access to the offchain data can't independently reconstruct or verify the full transaction history.: Data stored offchain with private node set; no onchain data posting
- Public deployment: Data posted to finalization layer using EIP-4844 blobs
See Data availability and finalization for more information.
Transaction lifecycle
These architectural components support transactions from submission to finalization.
- Submission: Transactions enter the mempool via the RPC entrypoint of a node.
- Block building: The sequencer validates, orders, and executes transactions into blocks, enforcing Lineth validity conditions including a profitability threshold.
- State tracking: The state manager updates the state representation; the tracer generates traces.
- Conflation: The coordinator groups blocks into batches.
- Proof and blob generation: The prover generates execution proofs for batches and the coordinator combines batches into blobs; the prover generates compression proofs.
- Data submission: Lineth contracts define three data-submission models:
- Compressed data submitted as EIP-4844 blobs. Supported by the coordinator. Requires the rollup to support the
IAcceptEip4844Blobsinterface. - Compressed data submitted as calldata. The current coordinator does not provide a calldata submitter. Requires the rollup to support the
IAcceptCalldataBlobsinterface. - Shnarf-only submission for private validiumValidium A deployment model in which a Lineth network proves state transitions with zk-SNARKs but keeps transaction data in a private data availability layer instead of publishing it to the finalization layer. Only state commitments and proofs are posted onchain, so participants without access to the offchain data can't independently reconstruct or verify the full transaction history. deployments, without publishing the compressed batch data to the finalization layer. Supported by the coordinator. Requires the validium to support the
IAcceptShnarfDatainterface.
- Compressed data submitted as EIP-4844 blobs. Supported by the coordinator. Requires the rollup to support the
- Finalization: The coordinator submits proofs to the finalization layer; after verification and any configured delay, transactions reach hard finality on the selected finalization layer.
- For the L1-backed transaction path that enforces processing-by-deadline guarantees, see forced transactions.
- See the more about the transaction lifecycle and finality on the Linea public network.
Next steps
- To understand the trust boundaries, and upgrade paths of this stack, see protocol components.
- Review bridge mechanics in the message service.
- Review cross-chain settlement in the canonical token bridge.
- Understand protocol fees in predictable pricing and burn.