In the ever-evolving landscape of blockchain technology, one area that has garnered significant attention is the realm of Layer 2 scaling solutions. Among these solutions, optimistic rollups have emerged as a promising approach to tackle the scalability challenges faced by decentralized networks.
At the heart of optimistic rollups lies a critical component known as the “Sequencer.” However, a groundbreaking concept has surfaced, offering a new horizon for rollups – Shared Sequencing. Throughout this article, we will explore the potential of Shared Sequencing and its implications for the future of blockchain interoperability.
What is a sequencer?
A sequencer is a single entity that is responsible for collecting transactions, creating rollup blocks, and submitting them to the Ethereum main chain. The sequencer is also responsible for resolving any fraud proofs that may be submitted by users.
It is a critical part of the optimistic rollup architecture because it ensures that the rollup chain remains synchronized with the Ethereum main chain. The sequencer’s role is similar to that of a validator in a proof-of-stake blockchain, but the sequencer has more power and control over the rollup chain.
Understanding the Sequencer’s Role in Optimistic Rollups
Before delving into the realm of Shared Sequencing, it is vital to understand the role of the Sequencer in optimistic rollups. In an optimistic rollup, the Sequencer holds a semi-trusted position, responsible for ordering transactions within the rollup. While the host chain can order transactions, this approach may not always be cost-effective.
The Sequencer addresses this challenge by aggregating multiple user transactions off-chain and committing them to the host chain in a single transaction. This aggregation not only reduces costs but also enables more efficient utilization of resources.
Control and Responsibility of the Sequencer
The Sequencer wields significant control over the ordering of transactions in the rollup history. They possess great power, and in the context of optimistic roll ups can be seen as:
1. Control over Transaction Ordering: The Sequencer has significant control over the ordering of transactions in the rollup. It aggregates and commits multiple user transactions off-chain to the host chain in a single transaction. This allows the Sequencer to determine the order of inclusion for transactions, which can affect their execution and interactions within the rollup.
2. Control over Transaction Inclusion: The Sequencer can choose not to include certain user transactions in the set it aggregates and commits. By excluding transactions, the Sequencer can force users to submit their transactions individually to the host chain, incurring higher costs in terms of gas fees. This gives the Sequencer the ability to influence which transactions are included in the rollup and which ones are not.
3. MEV (Miner Extractable Value) Extraction: The Sequencer can extract MEV by reordering transactions within the set before committing them to the host chain. MEV refers to the profits that miners or Sequencers can obtain by front-running or manipulating the transaction order. By controlling the order of transactions, the Sequencer can potentially profit from certain transaction sequences.
4. Responsibility for Aggregating Transactions: The Sequencer is responsible for aggregating multiple user transactions off-chain and forming a set that will be committed to the host chain. This is done to reduce the costs of transaction inclusion for users by amortizing the commitment costs across multiple transactions.
5. Responsibility for Compression: The Sequencer may also compress the set of transactions before committing them to the host chain. This further saves on host chain data availability (DA) costs, making the rollup more efficient in terms of storage and execution.
6. Semi-Trusted Role: While the Sequencer has control and responsibility over the aggregation and commitment of transactions, it is considered a semi-trusted role. Users must trust the Sequencer to carry out these tasks fairly and efficiently. However, the Sequencer cannot prevent users from accessing the rollup, only potentially delaying their access or imposing additional costs.
Sequencing versus Execution
In the context of optimistic rollups, Sequencing and Execution are two distinct phases of processing transactions:
1. Sequencing: Sequencing refers to the process of ordering and aggregating transactions off-chain before committing them to the host chain in a single transaction. The Sequencer plays a crucial role in this phase. Users submit their transactions to the Sequencer, who then groups multiple user transactions together into a set and submits this set to the host chain. By doing so, the Sequencer reduces the overall costs for users, as the host chain costs are amortized across all transactions in the set.
However, the Sequencer has control over the ordering of transactions in the set. They can choose not to include certain transactions or even extract value (MEV) from the set through reordering and insertion strategies. This makes the Sequencer a semi-trusted party, as they can affect the cost and prioritization of transactions for rollup users.
It’s important to note that Sequencing is separate from the process of computing the state of the rollup. The Sequencer does not compute the state; its role is limited to arranging transactions in a batch for submission to the host chain.
2. Execution: Execution, on the other hand, is the process of determining the valid history of the rollup and producing the latest state based on the ordered transactions. After the Sequencer submits the transaction set to the host chain, rollup nodes receive the data, parse and sanitize it to create the rollup’s valid history. This history represents the state transitions resulting from the execution of transactions on the rollup.
The Execution process is deterministic, meaning that all rollup nodes will arrive at the same result based on the order set by the Sequencer. Once the history is determined, one or more Proposers commit the state to the host chain’s rollup contract. The state then becomes final and immutable, and user transactions included in the commitment can be played onto the host chain.
Both execution and sequencing are separate but interconnected, allowing optimistic rollups to achieve scalability and efficiency while introducing some trade-offs regarding trust and control.
Introducing Shared Sequencing
Shared Sequencing is a concept in the context of optimistic rollups that involves multiple rollups utilizing the same Sequencer to order and commit transactions to the host chain. The Sequencer is a semi-trusted role responsible for off-chain transaction ordering, aggregation, and committing them as a set in a single transaction on the main chain. This approach reduces costs for users by sharing the expenses of the transaction commitment across multiple transactions.
With Shared Sequencing, the Sequencer has the ability to produce sequences for each individual rollup separately or atomically link the histories of multiple rollups together. By atomically linking the histories, the Sequencer ensures that either all the transactions from different rollups are confirmed, or none of them are confirmed on the host chain. This provides users with the benefit of simultaneously executing transactions across multiple rollups in a coordinated manner.
Controlling Multiple Rollups: The Power of Atomic Inclusion
With Shared Sequencing, the Sequencer can simultaneously sequence transactions for multiple rollups. This ability enables the Sequencer to exercise control over both rollup histories, thereby influencing the state of each rollup. The concept of “atomic inclusion” comes into play here.
The Power of Atomic Inclusion refers to the ability of a shared Sequencer to simultaneously include a set of transactions in multiple rollups. This concept allows users to specify that a group of transactions should either be included in all the rollups or none of them.
When a Sequencer performs atomic inclusion, it commits to sequencing a specific set of transactions in multiple rollups simultaneously. The goal is to ensure that either all the transactions within the atomic set are included in the histories of all the rollups, or none of them are included. This is meant to provide users with a way to execute a set of actions across different rollups in a way that guarantees either complete success or complete failure, avoiding partial or inconsistent execution.
The idea of atomic inclusion can be enticing for cross-rollup DeFi composability, as it could potentially enable users to perform complex interactions across different rollups with a higher level of certainty and reliability. This control, however, comes with limitations, as only infallible transactions can be force-sequenced, making it challenging to achieve atomic execution for fallible interactions like swaps or DeFi operations. It can only guarantee atomic execution if all transactions involved are infallible. Infallible transactions are those that cannot fail or produce an invalid state when executed.
Therefore, while atomic inclusion can be a powerful concept for certain use cases, it may not be suitable for all types of transactions, especially those involving fallible actions like swaps or more complex DeFi interactions. Achieving true atomic execution across different rollups may require alternative approaches or further research to address the limitations of atomic inclusion and ensure consistency and reliability in cross-rollup interactions.
Challenges of Shared Sequencing
1. Atomic Execution: Achieving atomic execution across multiple rollups via shared sequencing is challenging. The Sequencer may promise atomic inclusion of transactions but cannot guarantee atomic execution unless all transactions involved are infallible. Fallible transactions, common in complex DeFi interactions, might still fail during execution, making true atomic execution difficult.
2. Trust in the Sequencer: Shared Sequencing relies on trusting the Sequencer to act honestly and not produce conflicting or invalid sequences. Users must rely on the Sequencer’s integrity, which introduces a centralized point of trust.
3. Cross-Rollup DeFi Composability: Achieving cross-rollup DeFi composability via shared sequencing faces limitations. Complex DeFi interactions often involve fallible transactions, which cannot be guaranteed atomic execution through atomic inclusion.
4. Complexity with Contingency Relationships: While integrating explicit contingency relationships between transactions and rollup states can address some challenges, it can increase complexity for Proposers who need to evaluate multiple states based on assumed information from other rollups.
Opportunities of Shared Sequencing
1. Cost Minimization: Shared Sequencing allows users to save costs by batching and compressing multiple transactions into a single host chain transaction. This can significantly reduce gas fees, making roll-up transactions more cost-effective.
2. Simplified Cross-Rollup Transactions: Shared Sequencing provides a mechanism for users to make transactions on multiple rollups without interacting with the host chain directly. Users can use the shared Sequencer to efficiently manage transactions on different rollups.
3. Simplified Cross-Rollup State Computation: The shared Sequencer can pre-compute and provide trusted execution guarantees for transactions in multiple rollups, simplifying the rollup state computation process.
Shared Sequencing opens up a new frontier in the realm of optimistic rollups, offering a pathway to improved scalability and interoperability between multiple rollups. Although challenges exist in achieving atomic execution, the concept’s potential to revolutionize blockchain technology is undeniable. As researchers and developers continue to explore this groundbreaking concept, the future of Shared Sequencing holds the promise of reshaping the blockchain landscape and transforming the way decentralized networks interact and scale.