← All posts
Building with Symbiotic: Fast Finality
6 min read Research

Building with Symbiotic: Fast Finality

Let's imagine that Alice is sending tokens to Bob. When can Bob be truly confident that Alice has sent them to him? The answer lies in the concept of finality. The transaction is finalized when the network accepts the block containing Alice's transaction. In blockchains, data is stored, as the name suggests, in blocks. Any network participant can create a block. When blocks are created, they generally require three key elements: specifying a parent block to maintain the chain's continuity, calculating specific metadata to ensure the block's integrity, and providing the block's body - the actual payload of transactions and data. But how do we determine if a block is valid?

Even if the block contains no incorrect transactions or data, it must be accepted by the network's consensus to become valid. It must also propagate through the peer-to-peer network, be accepted by other network participants, and so forth.

However, even if accepted, a network fork might occur at some point, and this block may not end up in the current chain. So when can we reliably assert that a block is considered immutable? The answer to this question depends on the network we are considering.

In Bitcoin, for example, it cannot be said with absolute certainty. Still, the further back a block is from the present moment, the higher the probability.

In Ethereum, there exists a finality gadget for this purpose. Due to potential network forks, a specific branch in the fork must be determined. Therefore, following the latest block, a group of attestors finalizes Ethereum blocks.

Half an hour or more may pass between sending a transaction and the finalization of the Ethereum block containing it. However, after finalization, it can be reliably stated that the network has definitively accepted the block and all its transactions and will not change (unless a hard fork occurs, but we exclude that scenario).

Finality in Layer 2

The situation is different in Layer 2 solutions. In rollups, as in Layer 1 networks, there are also blocks. However, finalization works differently, depending on the type of rollup. In zk-rollups, a proof of state transition of the L2 network is sent to the parent network's contract.

Once a proof has been sent, all blocks included in this proof can be considered finalized (although it is more accurate to say they become finalized exactly when the parent network's block to which this proof was sent is finalized; however, this detail is usually omitted).

Since the data is sent sequentially, even if a fork occurs in the parent network, all proofs will be sent to the new branch. Therefore, we can conclude that overall finalization in zk-rollups occurs reasonably quickly.

In optimistic rollups, the situation is different. A block sent to the parent network is immediately considered valid; however, several days are allowed to provide a fraud proof indicating that the block was incorrect. Let's call this period T. True finalization occurs exactly T time after the block is formed.

Fraud Proofs vs Commitments

Fraud proofs allow one to demonstrate that a particular statement is false. The statement itself is initially taken on faith. However, what if we retain the fraud proof system but do not blindly trust the initial statement? Consider a system in which participants sign a commitment indicating that a block will become finalized. If this commitment is sufficiently stringent and the participant providing it is sufficiently trusted, we could consider the block finalized based solely on this commitment.

In essence, even within this system, fast finality can be implemented; the question is merely how trusted such a participant is and what ensures this trust. In this situation, staking may be of assistance.

For instance, the size of operators’ stakes is a proxy for their reputation. The more operators that commit to a block being finalized in the future and the larger their stakes, the more reliable the final commitment can be. Furthermore, a fraud proof system can be maintained; in such a case, if a block is not finalized, operators who committed it may be penalized. This incentivizes operators to responsibly verify the correctness of state transitions and refrain from making unnecessary commitments. Projects utilizing such information can examine the list of operators, their stake sizes, and so on to determine the reliability of commitments.

Fast Finality with Symbiotic

Symbiotic offers a flexible vault system with which the network can interact to determine operators' stakes. In the illustration, the section related to Symbiotic is depicted in green.

Let's examine this issue from the perspective of the Ethereum network. Operators opt into vaults and the network via OptInService contracts. In some cases, the network must additionally register operators within its middleware, which also provides information about the current operators' stakes. 

Furthermore, such a network must consider how operators commit to blocks and how this information is subsequently conveyed. This could be implemented as a smart contract on Ethereum, which stores operators' signatures and additional information necessary for further verification. Alternatively, operators may transmit signatures off-chain, and it would then be the network's responsibility to validate their number and the stake supporting this commitment.

In any case, there must be a way to record an operator's commitment, understand the size of the supporting stake, and, if necessary, validate this information in a fraud proof. Additionally, it is essential to determine how information regarding an attested block that still needs to be finalized can be delivered to Ethereum. However, this heavily depends on the implementation of the target network.

The Importance of Fast Finality

Why is the issue of fast finality so important? Imagine you are developing a bridge between two networks. With commitments to finality, you could transmit messages and tokens between networks more quickly. Generally, you could evaluate the size of the stake supporting a commitment. Based on the evaluation, you could execute transfers that are rate-limited by the system's commitments and utilize the network's built-in finalization for transfers that exceed the system’s commitments. Overall, fast finality is convenient in interchain communication and similar solutions. It is advantageous in shared sequencing solutions, as it significantly accelerates their operation.

Modularity Matters

The proposed solution is modular and can be integrated into any blockchain without any modifications. Modular solutions allow networks to become more flexible and reliable without alterations. One can envision a world where a fundamentally simple network becomes MEV and censorship-resistant, achieves fast finality, and offers many other additional options through modules. Moreover, the networks can select the options they need. A universal modular system for fast finality is a step towards such a future.

Conclusion

Let's highlight the main points:

1. The issue of fast finality is currently a highly relevant and promising area for research. Moreover, the solution can be modular, eliminating the need to change target networks. Solving this issue will accelerate many blockchains and enable the creation of cross-blockchain projects.

2. To use Symbiotic in such a project, it is necessary to create middleware. This middleware should contain a module responsible for transmitting information about the validator set, including its stakes, order of operation, and so on.

3. A separate issue is creating a fraud proof system for verifying operators' commitments. Additionally, the middleware should include a section responsible for slashing, with clearly defined slashing rules, who is capable of initiating it, and under what conditions.

As we continue exploring and expanding Symbiotic's capabilities, we invite the community to get involved. Whether you're a network builder, an operator, or simply an enthusiast interested in the future of shared security, there's a place for you. If you are interested in learning more or collaborating with Symbiotic, reach out to us here