Pushing the boundaries of what's possible and building a decentralized, secure, and scalable platform requires a lot of effort and time. Tezos, a feature-rich, leading, and rapidly evolving blockchain technology, has achieved this by activating the Mumbai upgrade (see Nomadic Labs announcement). With this 13th on-chain protocol upgrade now in production, Tezos offers a unique and powerful layer 2 (L2) computational scalability solution thanks to Smart Enshrined Optimistic Rollups (SORUs).
What Are Smart Rollups?
Smart (Contracts) Optimistic Rollups are a Layer 2 scaling solution that can significantly increase transaction throughput on a blockchain network while minimizing the load on Layer 1 (the main chain) without compromising on decentralization. Rollups achieve this by aggregating multiple transactions and executing them off-chain while only periodically submitting single commitments to the main chain. They differ from sidechains and improve upon them by enabling any honest participant to refute incorrect commitments, thus protecting the rollups' integrity and assets. For the refutation to work, the blobs of L2 transactions are either submitted to L1 (but not executed) or stored off-chain while providing their hashes (e.g., via various data availability solutions). In the latter case, portions of the data are only shown to layer 1 in case of refutation. To summarize: with optimistic rollups, any computation step on layer 2 is verifiable or refutable on layer 1 if needed.
In the Tezos ecosystem, smart rollups have been a major focus of development, as they offer a promising solution to the blockchain trilemma of scalability, security, and decentralization. SORUs go beyond enabling smart contract optimistic rollups: they provide a platform for running any software that compiles to web assembly. Another particularity of Tezos' rollups is that they are one of the pioneers (if not the first) to provide an open fraud-proof system via refutation games. To our knowledge, all currently existing fraud-proof systems are permissioned and/or controlled via multi-sigs. With Mumbai protocol, smart rollups data can either be submitted to layer 1's inbox or provided via a "Data Availability Committee" mechanism. A third, more decentralized, solution is under active development with the "Data Availability Layer" project.
Several organizations are at the forefront of this success, including Nomadic Labs, TriliTech, Marigold, Tarides, Oxheadalpha, Dailambda, MIDL.dev and Functori. As with any ambitious project, the development of SORUs required close collaboration and a series of iterations involving R&D, functional design, technical refinement, implementation, code review, testing, and documentation.
We had the opportunity to contribute to various exciting aspects of the SORU project.
Code Review: We conducted an intensive and meticulous code review of the core integration and refutation games implementation on Layer 1 to identify potential bugs or vulnerabilities before deployment on the mainnet.
Development on Layer 1: We also participated in some development aspects of the solution. For instance, we were involved in the extension of the refutation games to prepare the interconnection with the upcoming Data Availability Layer (DAL) on Tezos. This will push scalability even further by enabling data sharding.
Layer 2/SORU Node Development: We are actively involved in the L2/SORU node design and development. This central component is responsible for feeding the rollup's virtual machine with transactions, sending operations on L1, such as commitments publication(hashes of the machine's successive states), commitments cementation, and participation in refutation games.
Testing: We participated in the testing effort by writing unit, non-regression, and integration tests, running local networks, participating in dailynet and mondaynet instances, and extending our Explorus interface with a new page to display information about smart rollups. This allowed spotting numerous improvements in the SORU node and the set of exposed RPC to access SORU internals on Layer 1. Additionally, Explorus provides a way to observe refutation games as they happen graphically. We invite you to visit our blog post on refutation games in Explorus.
To conclude, the team at Functori is proud to be part of this exciting journey. We believe that smart rollups represent a giant leap forward for blockchain decentralization and mass adoption, and will pave the way for a brighter future for Tezos technology. The highly scalable and secure Layer 2 solution offered by SORU will help to bridge the gap between Web2 and Web3, and enable Tezos to remain at the forefront of innovation in the blockchain ecosystem.