Hi Celo community, I’m Alex Gluchowski, CEO and co-founder of Matter Labs. Since we first presented our proposal for CEL2 to use ZK Stack, we’ve really enjoyed engaging with members from the Celo community and working with the cLabs team to run a ZK Stack test environment.
The purpose of this post is to explicitly align how the ZK Stack falls within the framework for selecting an L2 stack, which Tim recently posted.
The below sections mirror the criteria in the proposed framework, but have been filled out to demonstrate how the ZK Stack is ideal to serve CEL2’s goals. We have also summarized these points in a table attached in the comments.
What is zkSync all about? Making Ethereum mainstream.
zkSync is building future-proof technology that enables Ethereum to reach a billion people—to boost economic freedom and prosperity for everyone in the world.
Before addressing the technical and ecosystem details, we want to make one thing abundantly clear: Our priority will always be to push forward our mission as it is defined in the ZK Credo.
To use one excerpt from it: “We believe that to serve as the foundation of the Internet of Value, decentralized networks must adhere to the following principles of: Trustlessness, Security, Reliability, Censorship-Resistance, Privacy, Hyperscalability, Accessibility and Sovereignty.”
Celo has demonstrated many of these qualities already, and it is clear to us that a realization for CEL2 will cement Celo’s ability to provide these values for its ecosystem of applications and users.
However, fully realizing these values also requires a close partnership with an L2 team and technical stack fundamentally designed around this mission. This is a large reason why Matter Labs is so excited at the prospect of working with Celo.
If you were on the Community Call before the holiday break, you may also remember me communicating this eagerness and discussing our close mission alignment.
To read the full mission of the ZK Stack and Matter Labs, we strongly suggest you read in full the ZK Credo.
Now, we would like to address, point by point, the many important details of the ZK Stack and the ZK Ecosystem that align with CEL2 goals:
The zkSync team is focused on blockchain-extending and real world applications. Many of our partners are a perfect match to collaborate with Celo; We can take QuarkID and Clave as examples:
Background: The Government of Buenos Aires is leveraging QuarkID to bring its citizens a decentralized identification service. Argentine citizens will soon be able to download a self-sovereign QuarkID wallet to claim personal documents, health data, and in the future, manage financial services in a single blockchain-based ID solution. QuarkID is just getting started, and has built considerable momentum across institutions in LatAm.
Collaboration with Celo: QuarkID’s digital identity solution can be natively integrated into CEL2 and allow for a composable ID standard across Celo apps, among other cross-ZK-stack use cases for a shared DID standard. A shared identity standard is quite important when it comes to bridging the gap between blockchain and real-world use cases and it fills an important role in a growing cross-chain ecosystem.
Background: A biometric-secured smart contract wallet, Clave’s debut at DevConnect featured an integration with local merchants and a cafe to enable a real world payments solution. The Clave team will continue to expand this mobile-first payments utility across Turkey and other European countries.
Collaboration with Celo: Clave will be live on mainnet going into the new year and is spreading in popularity in Turkey. Most importantly for Celo, Clave is a mobile-first wallet that has enabled smart accounts to be secured by consumer hardware.
This closely aligns with the the Celo Social Connect’s mobile-first vision, and we are certain your teams can work together on a unique ZK Stack offering for the mobile-first populations using Celo-based dApps like Opera’s MiniPay.
We promote a collective, collaborative mindset across individual projects in our ecosystem. While this approach is partially to take advantage of the interoperability offered by the shared ZK bridge, the technical connectivity is useless if there is no alignment across ecosystem projects in their growth as businesses.
If selected to support the CEL2 roadmap, projects across the zkSync ecosystem are excited to explore collaborative, cross-chain use cases with Celo apps. Multiple teams in our ecosystem have communicated an interest to work with Celo and explore similar co-development efforts that bring the shared ZK Stack ecosystem to life.
Additionally, we consider Celo a highly important piece to the expansive ZK Stack utility in Emerging Markets. This would go beyond simply co-marketing efforts — our team will be happy to bring business to Celo apps by plugging in Celo to our existing conversations in relevant markets.
As we shared in our initial proposal on the forum, we highly recommend the Celo community reads the ZK Credo — this document outlines the vision of zkSync and ultimately the motivation that brought our entire team here in the first place. It could not be more aligned with Celo, and we are have profound respect not only for Celo’s mission but the collective ability your teams have demonstrated to execute on this mission.
The Matter Labs team has a close relationship with many core contributors from the Ethereum Foundation and the broader Ethereum community. After all, our roots will always be in Ethereum.
The native-Account Abstraction implemented on zkSync was built partially in accordance with EF opinions on what an implementation of this may look like on the Ethereum Mainnet.
Most recently — the Clave team, who we view as one of the most advanced wallet teams in crypto and actively work on zkSync infrastructure with ML — posted EIP-7212 to enable support for secure enclave signing.
We have also consistently funded hackathons at ETH Global events, and would be interested in doing so in alignment with Celo.
The decentralized sequencer design in the ZK Stack will allow all Celo node operators to participate in the CEL2 chain. With a node operating community of roughly 100, the number of validators aligns with our design.
In addition, as development of the stack progresses and we add in the ability for transactions to leverage zkPorter volition mode, Celo can whitelist its validator set to run this DA system as a separate responsibility to sequencing.
The cLabs and Matter Labs engineering teams are actively working through this, and we are looking forward to bringing Celo on as a priority partner using our new EVM equivalence implementation on ZK Stack. This will bring full Ethereum equivalence and allows cLabs and Celo projects to use existing compilers. Era and the ZK Stack are compatible with web3 API, and geth methods that enable any EVM wallet to work out of the box. We also support Hardhat and Foundry, and continuously work with third-parties to stay on the edge of Ethereum tooling.
It is important to note, though, that ZK Stack with the EVM equivalence is effectively allowing both type 2 and type 4 zkEVMs within the same hyperchain. Developers will get to choose under which mode to deploy their smart contracts.
While in the initial stage of migration, everything is fully portable from Celo to its own chain, application developers will be able to access performance, cost and UX improvements by building with native Account Abstraction and data storage features that go beyond Ethereum compatibility.
Everything that passes through the team at zkSync is held to the highest possible security standard. We’ve spent many months running top-tier audits with partners like Spearbit and OpenZeppelin, performing tests on the network and most recently sponsoring the largest ever C4Arena contest for $1.1M.
In its current state, the zkSync Era code is the most battle-tested across the Layer 2 landscape with a working proof system that has gone through more transactions than any other proof system live on mainnet.
Single block finality is a key design decision in the ZK Stack decentralized sequencer and will be fully preserved within Celo’s criteria. The details of this implementation are not publicly available, but will be accessible to support cLabs’ timeline with ongoing CEL2 development stages.
With our recent upgrade to the new proof system, Boojum, and some updates to state compression zkSync is consistently the lowest in terms of transaction fees amongst all the L2s, both optimistic and zk (as shown on growthepie.xyz).
We also recently saw a real life stress test comparing the impact of high network demand on zkSync thanks to inscriptions where the system reached a TPS high of 189 and set the new record on L2Beat for highest TPS in a 24 hour window.
We have a number of additional upgrades in the works for Q1 of 2024 (outside of just EIP4844) with the goal of getting fees even further down and make sub-1 cent fees a reality for ZK Stack chains. Most notably the biggest impact is potentially going to come from elastic batch sizes where the number of L2 transactions that can fit inside a L1 batch significantly increases. Currently it is around 500-1000 transactions. We plan to significantly increase this which would have a fairly large impact on the price per transaction.
Backward compatibility of Celo’s current design, which allows certain ERC20 tokens to be used as gas beyond the native Celo token, is fully possible using Paymasters on a ZK Stack chain. We give an in depth explanation of this in our FAQs and Alignment post. Celo would have the option of either having your own base token as the native token for gas or use paymasters (which can be used for both EOAs and smart contract wallets thanks to native-AA).
The ZK Stack is built to be tailored to your needs — this is not only in reference to the modular architecture or native account abstraction, it also means we thoroughly support teams to modify the stack to accommodate their own chain-specific features. Similar to how we are adding a precompile for EIP-7212 (for Clave) or custom transaction ordering to enable a hybrid DEX (for Gravity), we welcome the cLabs team to pursue any modifications you’d like to make for CEL2.
Regarding questions on the feasibility of migration, our team can ensure a complete and smooth transition that will meet each important feature that is listed below. Specifically, as outlined in Celo’s post, our process addresses:
- Least time and risk route to production
- Simple migration, with minimal downtime
- Minimal downtime acceptable
- Avoid subtle incompatibilities
- No breaking changes for deployed apps or contracts
- No migration action required by Celo end users
- Commitment to developer collaboration
It’s important to state that this migration is an open-design that is actively being worked on. We see this as joint work between our teams and will include Celo in all phases of the design, implementation, and execution. This is especially important because, while we are designing a general purpose migration tool for any EVM chain to migrate state to a hyperchain, we are also aware that Celo has its own protocol level changes that we must consider.
In any case, our focus up until this point has been on a POC for a standard EVM migration, but as we make progress on this it’d be great to have some of the Celo protocol developers work with us on the Celo-specific migration.
At a high-level, we anticipate executing the migration to look as follows: the Celo tree structure will need to be converted into a ZK-friendly format. This will warrant a governance vote to approve replacing the root hash of the state to this new format.
The transition would include the use of a tool programmed to take snapshots of Celo state and reformat to be compatible with the zkSync format. This will generate the new root hash automatically. Using this tool, we can keep applying Celo state changes in real time such that the two systems are effectively synced.
At some point the updates will be paused, nodes will push upgrades, and then the transition will happen.
As mentioned previously, the entire ZK Stack code base is open-source under MIT license and recently completed the largest C4Arena bounty ever, with $1.1m offered in rewards. The system is designed such that any adopting community can maintain full technical and economic sovereignty, yet natively co-exist using hyperbridging.
A primary purpose of the team at Matter Labs is as a core developer of the ZK Stack, however it is not to be the sole entity that decides on the future of the ZK Stack.
This is specifically why the ZK Stack is open-sourced, and why we are making an effort to work with individual communities to onboard to the ZK Stack — each conversation we have that may lead to the adoption of the stack onboards a new co-development partner and key stakeholder that contributes to the bedrock of our community. It is especially important for us to follow our credo and ensure that members of the community can influence the direction of our technology.
With all that said, we are highly focused on consumer applications, in particular payments and the necessary identity infrastructure that is required for it. We also fully believe in open standards and not walled gardens. One of the core areas of collaboration would be in creating open standards for identity and payments for the broader zkSync ecosystem.
Specific governing processes and the method by which stakeholders influence the roadmap will be determined in the coming months, and will be largely dependent on the decentralization of other components of the system. The rollout of this process is detailed more in the section below on contribution incentives.
We are pleased to share that an independent ecosystem funding and governance program is being developed (expected later this quarter) for the benefit of zkSync and its participants. The purpose of this program will be to determine how grants are allocated to projects building on zkSync, especially those significant collaboration projects that directly align with the broader strategic goals of the zkSync ecosystem and the ZK Credo.
As a part of this initial ecosystem funding program, we would like to offer to cLabs a matching of the team budget previously approved and specified in the governance post — at the time of the post, this equates to roughly $2.7M in Celo tokens.
You can expect additional public announcements to come in the following weeks on how we will be supporting innovation in the zkSync ecosystem.
We recognize the significance of transparency and look forward keeping everyone informed on our progress.
The use of the ZK Stack is free and comes with no fee share requirements. It would be antithetical to our Credo to impose a fee share requirement, token swap arrangement or any requirement for a Community Fund to purchase tokens on the open market to build using the ZK Stack.
As an early adopter of the Stack, and an experienced DAO in its own right, we would like to ensure Celo has the ability to influence the governance of the ZK Stack and its ecosystem. Our commitment here can be considered a part of the aforementioned contribution incentives, the details of which are likely best left as a part of another discussion.
As noted above, there are no restrictions imposed on adopters of the ZK Stack. Members of the ecosystem join by adopting core protocol standards, however these standards are plainly technical interfaces used to access compatibility. While we recommend builders participate in the shared bridge, this is not a requirement for adopting the ZK Stack.
Regarding the opportunities for new partnerships, mission-aligned apps, and liquidity, a key consideration in the determination of grant allocations will be work and development that is for the benefit of the broader zkSync ecosystem. This will likely include hyperchain to hyperchain interoperability and teams that execute cross-chain applications that utilize other projects in our ecosystem.
Additionally, if Celo seeks to integrate with chains beyond the ZK Stack, we support existing bridging protocols and fully welcome non-ZK Stack collaborations.
As a first step in our engagement we have already set up a working testnet for Celo running on the ZK Stack that the cLabs team is testing. This test environment will use an EVM Equivalence interpreter on top of a new ZK Stack hyperchain built and managed by our team for Celo.
The progress that cLabs has made to support base token on OP Stack will be live shortly on the ZK Stack. This has already been a work in progress the last few weeks, so the timeline with CEL2 aligns quite well, and of course your ecosystem would inherit all of this work to support Celo as base token in the new chain. We will also explore the best implementation of paymasters to enable stablecoin-based fee payments for both EOA and smart wallets, with support for apps like MiniPay in mind.
We understand there is likely more being done on your OP Stack testnet deployment, and we want to ensure that this work is still useful for a ZK Stack launch. Also, for certain items, such as with the decentralized sequencer design, there is most likely an opportunity to reduce the work required from cLabs altogether by simply using our own design.
We look forward to working with the cLabs team more to push for tangible progress in deploying Celo on ZK Stack, and as usual welcome all feedback from the Celo community.
I appreciate everyone taking the time to learn more about the ZK Stack.
If you have any questions please ask away in the comments, or check out our dedicated site zkstack.io to read more yourself.