L2BEAT Bridges is a work in progress. You might find incomplete research or inconsistent naming. Join our discord to suggest improvements!

Ronin V2 logoRonin V2


...


Tokens:

Description

Ronin Bridge V2 is the official bridge for the Axie Infinity chain (Ronin chain). It uses external validators to confirm deposits for a typical Token Bridge swap.

If you find something wrong on this page you can submit an issue or edit the information.

Risk summary

Note: This project's overview requires more research and might not present accurate information. If you want to contribute you can edit the information on Github. Alternatively you contact the project team on Twitter and encourage them to contribute a PR.

Technology

Principle of operation

This is a typical Token Bridge that locks tokens in the escrow contracts on Ethereum and mints tokens on the Ronin network. When bridging back to Ethereum tokens are burned on Ronin and then released from the escrow on Ethereum.

Transfers are externally verified

Note: This section requires more research and might not present accurate information.

A Ronin Bridge service watches for events on Ethereum and transmits those events to a contract on Ronin chain (Axie Infinity chain). Designated group of weighted validators vote on the validity of those events, and when acknowledged, a "representation token" is minted on the Ronin chain. To withdraw tokens, user needs to deposit them to a contract on the Ronin chain, which will generate an event to be picked by the validators. When validators acknowledge the event, they generate signature, which can be submitted to the Ethereum bridge contract to finalize the withdrawal. Ronin V2 introduced multi-tier withdrawal limits dependent on the overall value of the transaction and the token used. The higher value of transaction, the more validators need to vote to approve withdrawal request. There is a separate group of actors called "governors" who are able to change thresholds, add/remove validators and update contracts. Each validator has a corresponding weighted governor account. There is also a daily withdrawal limit. If it's crossed, an address from a list of "Withdrawal unlockers" needs to participate in the transaction.

  • Users can be censored if validators decide to not approve a token mint after observing an event on Ethereum (CRITICAL).

  • Users can be censored if validators decide not to sign withdrawal requests (CRITICAL).

  • Funds can be stolen if validators allow to mint more tokens than there are locked on Ethereum thus preventing some existing holders from being able to bring their funds back to Ethereum (CRITICAL).

  • Funds can be stolen if malicious validators generate signature of a fake withdrawal request (CRITICAL).

  • Funds can be frozen if withdrawal limits are misconfigured.

  1. Token transfer flows

Destination tokens

Note: This section requires more research and might not present accurate information.

Tokens transferred end up as wrapped ERC20/ERC721.

Permissioned Addresses

The system uses the following set of permissioned addresses:

GovernanceAdmin admin role 2/3 MultiSig 0x2DA0…8D96

Can propose upgrades to Bridge and RoninValidator contracts and invoke admin functions.

GovernanceAdmin MultiSig Participants 0xE5EB…8b300x6bfC…a9d00xaD99…6192

Participants of the GovernanceAdmin 2/3 MultiSig.

Addresses able to unlock withdrawals that cross tier limits.

Smart Contracts

The system consists of the following smart contracts:

Bridge V2 (Escrow & Mainchain Gateway) 0x6419…AF08Implementation (Upgradable)Admin

Upgradeable Bridge V2 contract (MainchainGatewayV2). This contract stores the following tokens: ETH, AXS, WETH, USDC, SLP, USDT, MATIC, LINK.

Upgradeable Ronin Validator contract.

GovernanceAdmin 0x661E…bC8C

Admin of Bridge and Validator Upgradeable Proxies.

The current deployment carries some associated risks:

  • Funds can be stolen if a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL).