This article is a follow-up to my previous article on Across Protocol. Click here to go through my article that explains the need and importance of it.
Let's begin with a quick recap.
Rolls ups are one of the most promising Layer 2 solutions that execute transactions outside the Mainnet but post the transaction data on it, retaining the security provided by Layer 1.
Transfer of data from Layer 1 to Layer 2 is almost instantaneous however the withdrawal process requires users to wait for a period of up to 1 week owing to the fraudproof window.
Across protocol is a novel bridging method that combines an optimistic oracle, bonded relayers, and single-sided liquidity pools to provide decentralized instant transactions from Rollup chains to Ethereum Mainnet.
While Optimistic Rollups provide users with the much-needed relief from high gas fees, these L2 solutions face a major challenge at the time of withdrawal. The exit time associated with Optimistic Rollups is pretty high owing to the security mechanism they rely on. The mechanism essentially involves transactions being subject to challenge for up to a week to determine their validity and to protect against fraud.
The aforementioned issue serves as a major deterrent in its widespread adoption. This is where Across Protocol jumps in and tackles the unsolved problem of delayed withdrawal times.
Across Protocol provides users the ability to withdraw their funds instantly or almost instantly. To put it simply, it facilitates the ability for someone on Layer 1 itself to lend you the money you need (for a fee) until the bridged funds arrive.
"Across solves the problem by insuring transactions. Individuals can profit by guaranteeing that the person lending the funds on L1 will actually send the loan. It turns out that this method of cross-chain transfer is actually cheaper than other bridge solutions. It is faster, and we believe, more secure.”
In contrast to the existing prolonged withdrawal periods, Across facilitates faster withdrawals of assets whilst providing high security, speed, and insurance of transactions.
Across Protocol Working
I had mentioned in my previous article, understanding how Across achieves faster withdrawals from L2 to L1 requires an understanding of UMA’s Optimistic Oracle.
UMA’s decentralized “provably honest” oracle design is built on the assumption that “any oracle on a public blockchain can be bribed”. Leading UMA to create a system where the cost of manipulating the oracle is always greater than the profit earned from corrupting the oracle thereby eliminating any monetary incentive to corrupt the system and mitigating associated security risks. Profit from Corrupting>Cost of Corrupting
Across Process Overview
Across's operations entail gathering liquidity pools of ERC 20 tokens on the Ethereum network to enable fast withdrawals from Layer 2 networks like Optimism and Arbitrum. Basically, the deposits on Layer 2 are one-way and are sent by the Layer 2 network's slow native bridge to the pool on Ethereum, reimbursing liquidity providers. Think of it this way, the Liquidity providers are essentially loaning on the Mainnet and this short-dated loan is secured by Layer 2 deposits. To bridge the tokens, relayers need to post a bond coupled with the Layer 2 deposit details, which permits withdrawals from the liquidity pool on Ethereum after a short challenge period. Relayers have the option to advance the money to the depositor and get reimbursed from the liquidity pool themselves after the challenge period.
UMA's oracle is designed for anyone to dispute invalid relays during the challenge period. If the relay was incorrect the relayer's bond is claimed by the person who raised the dispute. Depositors pay liquidity providers a fee that is calculated and based on the utilization of the pool for access to liquidity on Ethereum. They have the option to incentivize relayers to validate their deposit by offering a fee, or they may relay the tokens themselves.
The role of the Oracle
The Optimistic Oracle as its name suggests operates on an optimistic assumption in that it assumes the answer (which anyone can propose to a certain set of questions) to be verified if undisputed during the dispute window. It relies on the belief that users shall refrain from malicious activities if they see false answers are disputed and punished. Thus, usable answers are to be produced within the dispute period. Click here for a deeper understanding.
Across leverages the Optimistic Oracle's strengths listed below to deliver on its claims.
Decentralization enables anyone to participate in the relay eliminating the need to rely on a centralized relayer, the Optimistic Oracle's structure ensures it is not profitable to propose an inaccurate price. This, combined with the need to post a bond, contributes to the ability to settle quickly as there are hardly any disputes. Moreover, the Optimistic Oracle recognizes the possibility of a relayer committing a mistake and therefore permits the relayer to seek recourse for the mistakes by creating a dispute.
In the following section of the article, I am going to briefly explain the few possible paths a deposit can take.
A depositor can not lose funds in any of the scenarios listed below Tokens deposited on Layer 2 are transferred to the bridge pool on Layer 1 through Optimism or Arbitrum native bridge, reimbursing bridge pool liquidity providers
Scenario 1: Instant relay, not disputed
This is the most likely scenario in which an instant relayer spots a deposit on L2 and immediately forwards the amount of the deposit (minus LP and relayer fees) to the recipient address. All this is done while making a claim to the bridge pool. Once the challenge window of 2 hours expires, the instant relayer is compensated with deposit amount (minus LP fees) from the bridge pool.
Scenario 2: Instant relay, disputed
As soon as a deposit is spotted on L2 the instant relayer forwards the amount of the deposit(minus LP and relayer fees) to the recipient address. All this is done while making a claim to the bridge pool. Now in this particular scenario, a dispute is raised during the 2-hour challenge window, claiming the relay was incorrect. The dispute is then forwarded to UMA's Optimistic Oracle for resolution. Resolution can take anywhere from 48 hours to 96 hours as it requires completion of the Optimistic Oracle's voting cycle. In case of a dispute, the deposit is relayed again as a slow relay, as the initial relay is canceled. If the new relay (slow relay) goes undisputed it means the original instant relay was in fact correct resulting in the original relayer being compensated from the bridge pool with the deposit amount (minus LP and slow relay fees). The new slow relayer receives the slow relay fee. Once the oracle confirms the original relay was correct, the original relayer will receive a portion of the disputer's bond as well. If however, the relay is deemed incorrect, no money is paid out of the bridge pool, and the disputer is rewarded with a bond that is posted by the instant relayer. The recipient address gets to keep the amount advanced to them by the instant relayer.
Scenario 3: Slow relay, not disputed
The deposit on L2 is spotted by a slow relayer who then registers it with the bridge pool. In this scenario, the transfer is not accelerated owing to the absence of an instant relayer. The bridge pool sends the deposit (minus LP and slow relay fees) to the recipient address after expiry of the challenge window. The slow relay fee is received by the slow relayer.
Scenario 4: Slow relay, disputed
A slow relayer spots a deposit on L2 and registers it with the bridge pool. The transfer is not accelerated as no instant relayer steps in. In this scenario, a dispute is raised during the challenge window claiming the relay was incorrect. This is followed by the dispute being directed to UMA's Optimistic Oracle for resolution. It takes 48-72 hours for an Optimistic Oracle voting cycle to complete. If the relay ends up being correct, the depositor receives the deposit amount (minus LP and slow relay fees) from the bridge pool and the slow relayer receives the slow relay fee plus a bond posted by the disputer.
The deposit is relayed again as the original relay is canceled in the event of a dispute being raised. If the new slow relay manages to pass the challenge window undisputed, the new slow relayer gets the slow relay fee. Once the Oracle determines the original relay was in fact correct, the original relayer receives a portion of the disputer's bond.
No money is paid out of the bridge pool, if the Oracle determines the relay was incorrect, and the disputer is rewarded with a bond posted by the original slow relayer.
Scenario 5: Slow relay, accelerated to instant relay
The slow relayer on spotting a deposit on L2 registers the deposit with the bridge pool. In this scenario the transfer is accelerated as an instant relayer comes along. After this, the flow is pretty much same as any other instant relay, with the exception of the slow relayer receiving the slow relay fee. If however, the relay was a fast one to begin with, the instant relayer would receive both the slow and instant relay fees.
Scenario 6: No relay
In this particular scenario, a deposit is made on L2 however, the relay fees are too low and fail to incentivize any relayers to register the event with the bridge pool on L1. Although no funds are lost but the depositor will have to relay the deposit themselves, or have someone else do it on their behalf, possibly with an out-of-band payment. Across states, it is perfectly reasonable for a depositor to set relay fees to zero if the depositor plans to relay their own funds or expects someone else to do it on their behalf for some reason other than relay fees.
No one can deny the economic impracticability of Ethereum with phenomenally high gas charges. The existing Optimistic roll-up solutions provide some respite but the inherent delay of 7 days to achieve a transfer from L2 to L1 is not really a viable solution. Across helps to provide that bridge of transferring value across the chains within a time period pretty unheard so far in this space.
Just to give you all a heads up, you all can be a part of Across Protocol. You all can be a co-founder. Head over to the discord and give a shout.
Exchange on SwapSpace