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.
Contributions
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.
Conclusion
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.