Learn how to build an alternative EVM rollup settlement layer using Celestia, Evmos, and Cosmos
Author: Mustafa Al-Bassam, Co-founder of Celestia
Compiled by: DeFi Dao
In this post, we will discuss what an ideal settlement layer for EVM rollups looks like and how to build it using Celestia, Evmos, and Cosmos (as part of a modular stack for EVM-based applications).
What do we mean by settlement layer? The settlement layer of a rollup is a chain where the rollup has a trust-minimized bidirectional bridge and uses a dispute resolution contract on the settlement layer. This allows for the transfer of tokens between the rollup and the settlement layer, or between rollups through the settlement layer, in a trust-minimized manner.
Currently, rollups settle using the Ethereum main chain; however, the Ethereum main chain is not an ideal settlement layer for rollups because it shares with non-rollup applications that directly use the chain for smart contract transactions. Therefore, compared to a dedicated settlement layer, the Ethereum main chain is non-specialized and reduces scalability effects.
As Matt explains in his article, an ideal dedicated settlement layer for rollups would be restricted to only allow (a) rollup smart contracts and (b) simple transfers between rollups, thus prohibiting non-rollup applications from using this settlement layer or making it very expensive.
This contrasts with the view of the geth team, whose goal is to make the Ethereum chain suitable for both non-rollup and rollup applications:
"Specifically, we are concerned that due to the two-dimensional nature of the EIP-4488 proposal, which supports rollup transactions so much that non-rollup transactions will be impossible to use on this blockchain. This EIP should provide more evidence that this is not the case."
We propose deploying an Evmos-based blockchain (a Cosmos SDK blockchain with built-in EVM) using Optimint (instead of Tendermint), which will serve as a Celestia rollup implementation. Optimint is a direct replacement for Tendermint BFT, allowing developers to deploy new chains using existing consensus and data availability layers (such as Celestia), making the new chain a rollup.
We call this "settlement rollup," and since the settlement rollup is a restricted EVM environment, we envision that the state can be verified for fraud through a single round of fraud proofs.
Rollups can then be deployed on the Evmos settlement rollup as a recursive rollup (a rollup of rollups). Each rollup will have a bidirectional trust-minimized bridge with the settlement rollup, similar to Ethereum rollups. The goal is to redeploy the same rollup contracts and software that currently exist on Ethereum, so the work required to port rollups is minimal. This means rollups use calldata on the settlement rollup, and the settlement rollup uses Optimint to batch data and publish it to Celestia.
The settlement rollup requires a censorship-resistant block production leader selection mechanism, as there is no "upper" execution environment to build escape hatches. Currently, several Ethereum rollup teams seeking decentralized block production are actively researching this. This is primarily necessary to resist DoS attacks in case anyone creates blocks that require (free) distribution of fraud proofs.
Monorollup
One of the rollups using this settlement layer could be a general EVM "monorollup" similar to Arbitrum One, which allows users to deploy any Ethereum smart contract. This would enable developers to easily enter the ecosystem and provide them with a development experience similar to Polygon, where they can easily redeploy existing contracts. Then, if the monorollup becomes congested, they can use a trust-minimized bridge to redeploy their contracts to their own specific application rollup.
Intercluster bridging
If a rollup using the Celestia/Evmos/Cosmos tech stack wants to communicate with another non-rollup chain (such as one in the IBC network) or with a rollup using a different settlement layer (i.e., intercluster communication), a committee-based cross-chain bridge is needed, as a trust-minimized bridge is not possible. However, ideally, the settlement rollup would not have a set of validators or a committee. To address this, we propose decoupling the committee-based bridge operators from the block producers of the settlement rollup.
A third-party chain will operate a committee-based cross-chain bridge. If the EVM of the settlement rollup might be too restrictive for cross-chain bridge contracts (e.g., validating large committee multisignatures or threshold signatures), the bridge can be a rollup on the settlement rollup rather than the settlement rollup itself.
This can be achieved in one of two ways (or both):
- A Cosmos zone acts as an "intercluster rollup hub," where the zone's validators operate the bridge by tracking the state of the settlement rollup and allowing assets on the settlement rollup to be transferred to that zone via multisignature or threshold signature contracts on the rollup settlement layer (possibly using the gravity bridge). The Evmos main chain could fit this role. (See the above diagram)
- Rely on existing "interchain communication as a service," such as Axelar or Polymer, to accomplish the above.
Benefits: Depending on the fraud proof mechanism of the settlement rollup, it may also allow a settlement rollup to bridge to Ethereum's Ethereum bridge contracts to verify settlement rollup fraud proofs (increasing security), although it would not be trust-minimized like Ethereum rollups, as the data availability of the settlement rollup is independent of Ethereum.