Across V2 is a cross-chain optimistic bridge that uses actors called Relayers to fulfill user transfer requests on the destination chain. Relayers are later reimbursed by providing a proof of their action to an Optimistic Oracle on Ethereum. The architecture leverages a single liquidity pool on Ethereum and separate deposit/reimburse pools on destination chains that are rebalanced using canonical bridges.
Funds can be stolen if
Funds can be lost if
Funds can be frozen if
This bridge performs cross-chain swaps by borrowing liquidity from a network of Relayers who are then reimbursed on a chain of their choosing from a common liquidity pool (which consists of user deposits and deposits of independent Liquidity Providers). Specifically, when a user deposits funds for a swap into a dedicated pool on origin chain, a Relayer first pays the user on the requested destination chain and then shows proof of that deposit to Optimistic Oracle on Ethereum to be reimbursed. Liquidity used for reimbursements is rebalanced between a main pool on Ethereum (called Hub Pool) and pools on destination chains (called Spoke Pools) via native chain bridges.
Funds can be frozen if owner pauses the contract.
Funds can be lost if owner invokes a "haircut" functionality, dedicated for irrecoverable loss of funds on L2.
Money from the liquidity pool is used to reimburse Relayers based on a proof of deposit on destination chain that is provided to Optimistic Oracle on Ethereum. The proof can be disputed in a configured time period.
Funds can be stolen if a false claim to the Optimistic Oracle is not disputed in time.
Funds can be lost if a re-org occurs on destination chain after Optimistic Oracle dispute time passes.
Only tokens that have been bridged using native chain bridges are supported.
The system uses the following set of permissioned addresses:
The system consists of the following smart contracts:
Escrow contract for ERC20 tokens and administration of other contracts. This contract stores the following tokens: USDC, WETH, WBTC, DAI, BAL, UMA, BOBA, USDT.
This contract stores the following tokens: USDC, WETH, WBTC, DAI, BAL, UMA, BOBA, USDT.