In an ideal world, everything works as intended and there are no disputes. But that's not a realistic world view to hold. Especially for optimistic rollups.

In centralized institutions, a single entity holds all the decision-making power, determining what is right and which direction to take. This concentration of authority leaves little room for other users or stakeholders to present their interests or versions of the truth.

Conversely, in decentralized systems like blockchains, there is no single source of truth. Instead, the truth emerges from the consensus of multiple entities within a system that is permissionless to participate in. This structure allows for diverse perspectives but can also lead to disputes when different entities have varying versions of the truth. And this necessitates dispute resolution mechanisms.

Arbitrum’s BoLD

Bounded Liquidity Delay, or BoLD, is Arbitrum’s new dispute resolution mechanism. This protocol is designed to be resistant to attack vectors such as delay attacks, resource exhaustion attacks, and censorship attacks. BoLD is permissionless compared to Arbitrum’s currently deployed dispute resolution protocol. Other optimistic rollups, such as Optimism, Cartesi, and Fuel, are also developing their own dispute-resolution methods.

The Dispute

Before we dive into the different dispute resolution mechanisms, let’s clarify a few things. Let's have a look at where or when a dispute resolution mechanism enters the picture in an optimistic rollup. When funds are withdrawn from an optimistic rollup back to Ethereum using a roll-up bridge, funds are not immediately credited to your account. Why is this the case?

Optimistic rollups exist so that the L1, Ethereum, should not have to do the compute-heavy job of executing transactions. They optimistically accept L2 state outputs unless those outputs are challenged. Claims are assertions about the state of the L2 given a set of inputs.

Now, the claims aren’t considered valid immediately. They must first pass through a challenge period, which usually lasts 7 days. During this challenging period, each claim can be challenged by a challenger who can contest that a claim is invalid. Now, what we have here is a dispute between those who consider a particular claim valid and those who consider that claim invalid.

The Resolution - How Are Disputes Resolved?

With Arbitrum’s currently deployed dispute resolution mechanism, you have assertions about Arbitrum’s state being posted to Ethereum by proposers. These assertions can be challenged by “challengers” during the 7-day period. During this period, the proposers and challengers engage in an interactive step-by-step bisection process. This is where the proposers and the challengers narrow down on the exact point of dispute from the global state down to single blocks. As shown in the diagram below.

After isolating the dispute to a single block, the process further bisects down to the individual execution steps within that block. This involves providing competing state transitions and proving the correctness of each step. And now, when the dispute is further narrowed down to a single execution step, the proposer or challenger, whosever turn it is to respond, has to provide data proof to execute the next step. If executing this step results in a different state than previously asserted, the current responder wins the challenge.

The purpose of this bisection mechanism is to minimize the computation required to verify fraud-proof. If the entire rollup block had to be verified, the L2 throughput would be limited by the L1’s throughput.

Screenshot 2024-05-17 172816.png

Optimism initially used a single-round mechanism to verify the transactions in question in the EVM but now the newly proposed mechanism will use a multi-round dispute mechanism similar to Arbitrum (add trade-offs between the two). Cartesi’s DAVE also uses a similar multi-round dispute resolution mechanism. Fuel, on the other hand, uses a single-round hybrid proving mechanism.

Untitled

Hybrid Proving does not involve a bisection process to narrow down on the exact execution step. In a dispute where an invalid block is submitted and challenged, the block is run through several ZK provers. The resulting ZK proof is submitted as a fraud-proof.

The dispute resolution period on Arbitrum and Optimism lasts 7 days. This is for various reasons, but mainly to give the Arbitrum & Ethereum community enough time to coordinate a recovery in case of censorship attacks from malicious actors. This works well as long as the censorship attack does not last more than a week. Given that With Hybrid Proving, there is a reduced number of interactive rounds, in a happy case, the dispute resolution window could potentially be reduced to one day. However, it only takes one validator not to do anything, i.e., to not check-in for the 7-day period to kick in. This would lead to the validator getting slashed. Validators may fail to check-in either due to honest inactivity or maliciousness. To account for honest inactivity, validators could placed with an MPC set-up. So even if some nodes go down, they will collectively continue to check-in.

Who takes part in disputes?

Generally speaking, there are two main types of actors: the proposers and the challengers. The role of the proposer is to post assertions to the L1, and the challenger can raise a dispute. Operating both these roles requires a stake. This stake can be slashed if the party is found guilty of raising false flags or misbehaving. The stake is also required to post claims or assertions during each step of a challenge. Some protocols may also use another party whose role is only to verify assertions being posted by the proposer. This role does not require a stake to operate.