Celo’s next chapter
Despite having similar visions and close compatibility, Ethereum’s transaction fees in the past were prohibitive for Celo’s use cases. However, as L2 rollup stacks and, more recently, DA (Data Availability) solutions have evolved, as with EigenLayer’s EigenDA, it is now possible for Celo to return home to Ethereum and gain enhanced composability as well as increased security, all while maintaining low gas fees and key features as mentioned above. This might lead to even greater success of the Celo ecosystem, which currently sees over 3,268.2% daily active users year-to-date (TokenTerminal) and daily active users among the top 10 chains (currently ranked #6 on TokenTerminal).
We now describe Celo’s L2 migration in more detail, describing the proposed architecture, summarizing how these changes affect current Celo stakeholders, and analyzing the general value proposition for the transition.
The proposed architecture aims to initially leverage Optimism’s OP Stack with standout characteristics being a decentralized sequencer powered by Celo’s existing validators and DA with EigenDA, while focusing on maintaining Celo’s 1-block finality.
1. Decentralized Sequencer
In L2s, the sequencer(s) orders transactions into blocks, which can then be submitted to the DA layer. Current L2s often rely on a single centralized sequencer operated by a trusted party. This presents a single point of failure and a potential vector for censorship (however, most L2s have forced transaction inclusion mechanisms).
While most L2s have committed to decentralizing their sequencer over time, we are happy to see Celo lead the charge toward decentralized sequencing. If implemented well, decentralized sequencers improve censorship resistance and liveness guarantees while maintaining Celo’s 1-block finality, resulting in an improved user experience.
cLabs has proposed to modify the existing modular OP Stack sequencer to leverage their existing set of L1 validators as sequencers. The sequencer rotates similarly to current Celo proposers and requires two-thirds of signatures from other sequencers (current validators) through the existing PBFT consensus to then post the transaction batch to the DA Layer. Rewards and hardware requirements to become a sequencer should stay similar to running a Celo validator, with the necessary addition of having to run (or have access to) an Ethereum full node.
Please keep in mind that this is an area of active research, proposed architecture might be revised. As sequencers are both proposers and block builders, an unbundling of those roles on L2s might be an interesting future area of research.
2. Data availability layer
Data Availability (DA) refers to all transaction-related data being available to nodes on the network to independently verify transactions and compute the blockchain’s state without the need to trust one another. The DA Layer refers to the location where said data is stored. Unlike current L2s, which use Ethereum as the DA layer, cLabs proposes to use EigenDA (EigenLayer secured by ETH restakers) for the full transaction data while storing DA Certificates (pointers to full data) on Ethereum. L2 full nodes can use the pointers on Ethereum to query the full transaction data on EigenDA.
This architecture allows Celo to maintain its low gas fees ($0.01), which is key for Celo’s payment use cases compared to competitors that have opted for DA on Ethereum. EigenDA, however, can also introduce new dependencies. We look forward to seeing whether Proto-Danksharding (EIP-4844) can reduce rollup fees enough to allow Celo to utilize native DA on Ethereum while maintaining their very low fees.
3. 1-block finality (preventing reorgs)
Maintaining current 1-block finality is highly important as the real-world payments use case is complicated under potential reorgs since only the on-chain part of the transaction gets reverted (“delivering goods to customer but the chain reverts after he left the store”). To avoid reorgs caused by sequencers, Celo is implementing on-chain slashing, which means 1-block finality is secured by a Celo stake (via sequencers). Assuming all or most of the current Celo L1 validators transition to L2 sequencers, 1-block finality is secured by the same stake as Celo L1 currently (110 Validators elected by 270M locked CELO).
There is an additional layer of security from Ethereum and EigenDA, when blocks on Ethereum are finalized (every 2 epochs = ~13 mins). Mitigating the effect of potential Ethereum reorgs is also important to secure 1-block finality. (“What happens if assets get deposited from Ethereum > Celo, but Ethereum reverts and Celo doesn’t”). A possible solution could be only accepting transactions from finalized L1 blocks (every 2 epochs).