Understanding the network protocol through its active participants
There are currently four roles for nodes on Mantle network, namely Sequencers, Threshold Signature Scheme (TSS) nodes, Rollup Verifiers/Replica Nodes, and Data Availability (DA) nodes. Here's a simple description of their responsibilities.
- Receive and record transactions sent by users in real time
- Produce blocks on L2
- Rollup transactions to generate batches with execution state roots
- Get blocks validated by the TSS module
- Broadcast block data across the network (L1 and L2)
In the initial phases of release, Mantle core team will operate its own centralized Sequencer. However, as part of our roadmap we will be decentralizing the Sequencer eventually, creating another opportunity for nodes to contribute to Mantle.
- "Sign off" transaction batches produced by Sequencers to be sent to L1
- Broadcast batches across the L2 network after verification
TSS nodes verify the state roots generated by Sequencers to determine their correctness. The state roots MUST be signed by a TSS node before they are sent to Ethereum to be recorded.
During the initial phases of release, TSS nodes are run by a group of reputable institutions, but will eventually be voted in via Mantle governance permissionlessly.
- Sync rollup data from Mantle's trusted sequencer
- Verify the state roots submitted by Sequencers on L2
- Initiate fraud proofs when invalid state data is found
- Serve rollup data to users
- Opt into taking the responsibility of storing a copy of Mantle transaction data to have it ready for access whenever necessary
Mantle DA powered by EigenDA technology consists of a set of supported interactions between four major components as described below.
The service providers of the DA network and need to confirm their commitment through digital signatures, which place staked assets as a collateral guarantee on their participation. An Operator carries out the following tasks:
- Run nodes which store chunks of data for a pre-defined time period and serve these chunks upon request
They're the users of Mantle DA's data availability service, paying for its economic guarantees of data availability. This role may be played by a rollup Sequencer. A Disperser performs the following tasks:
- Encodes its data into chunks, posts funds for making the data available for a fixed amount of time, and distributes the encoded chunks to Mantle DA operators
- Aggregates signatures from the operators and posts an attestation to the blockchain, confirming availability of the data of interest for the specified time period
They're interested parties who play an important role in the Proof of Custody protocol. Challengers perform the following tasks:
- Monitor certain verifiable operations of the protocol (which in the optimistic case are not verified or resolved on-chain)
- Permissionlessly force problematic operations to be resolved on-chain, resulting in an operator’s stake being slashed
The Proof of Custody protocol is in development stage and will go online with a future Mainnet upgrade.
The collection of DA-related smart contracts running on Ethereum take care of the following:
- Ensure that data is only accepted as available when a group of operators having a sufficient amount of stake has collectively signed
- Implement the proof-of-custody protocol and provide mechanisms for a challenger to disclose data on chain
- Verify the validity of data submitted by Challengers against a signed commitment, and enact slashing as dictated by the proof-of-custody protocol
The data storage process on Mantle DA is as follows:
- 1.Encoding: Disperser encodes data chunks and generates KZG multireveal proofs which will allow Operators to verify the correctness of their chunk.
- 2.Dispersal: Disperser sends data chunks to respective DA Operators
- 3.Attestation: Operators verify their chunks against the global commitment. If the verification is successful, the Operator proceeds to store their chunk of data for the duration specified by the Disperser and sends back an attestation
- 4.Aggregation: If enough signatures are received, the Disperser aggregates the signatures and publishes them to L1 Ethereum.
There are multiple advantages of running a Rollup Verifier node.
- 1.It grants many of the benefits of running an Ethereum node, such as the ability to simulate L2 transactions locally without rate-limiting (public RPCs may face such limitations).
- 2.Allows anyone to verify the work performed by Sequencers by re-deriving output roots and comparing them against those submitted by the Sequencer. In case of a mismatch, verifiers will be able to perform a fault check and claim rewards by submitting fraud proofs on future versions of Mainnet.
dApp builders are encouraged to consider the value addition of running a Rollup Verifier node given that the overhead costs tend to be low.
The diagram below illustrates how the Sequencer and Rollup Verifier fit together. Note that actions in red are performed by a Sequencer, while actions in blue are performed by a Rollup Verifier: