Search

Search for projects by name or address

Loopring logo
Loopring

Loopring DEX was sunset and no longer accepts deposits. The Loopring Team plans to send out deposited assets directly to users.

Badges

About

Loopring is a ZK Rollup exchange protocol for trading and payments.


  • Total Value SecuredTVS
    $2.15 K99.9%
  • Past day UOPSDaily UOPS
    <0.010.00%
  • Stage
  • Type
    ZK Rollup

  • Purposes
    NFT, Exchange

  • Tokens breakdown

    Sequencer failureState validationData availabilityExit windowProposer failure

    Badges

    About

    Loopring is a ZK Rollup exchange protocol for trading and payments.


    Total
    Canonically BridgedCanonically Bridged ValueCanonical
    Natively MintedNatively Minted TokensNative
    Externally BridgedExternally Bridged ValueExternal

    ETH & derivatives
    Stablecoins
    BTC & derivatives
    Other

    2020 Nov 26 — 2026 Jul 06

    Past Day UOPS
    <0.010.00%
    Past Day Ops count
    33
    Max. UOPS
    1.47
    2022 Jul 12
    Past day UOPS/TPS Ratio
    No data

    The section shows the operating costs that L2s pay to Ethereum.


    2023 May 01 — 2026 Jul 06


    Total cost
    $574.36 K
    Avg cost per L2 UOP
    $0.229089
    Avg cost per day
    $498.14

    This section shows how "live" the project's operators are by displaying how frequently they submit transactions of the selected type. It also highlights anomalies - significant deviations from their typical schedule.


    2023 May 01 — 2026 Jul 07

    Avg. proof subs. interval
    1 hour
    Avg. state updates interval
    1 hour

    Loopring DEX sunsets

    2026 Jun 28th

    Loopring announces the DEX sunset, deposited tokens will be transferred to users.

    Learn more

    DeFi Closure Announcement

    2025 Jul 31st

    Loopring sunsets DeFi features to focus on the L2.

    Learn more
    Sequencer failureState validationData availabilityExit windowProposer failure
    Sequencer failure
    Force via L1

    Users can force the sequencer to include a withdrawal transaction by submitting a request through L1 with a 0.02 ETH fee. If the sequencer is down for more than 15d, users can use the exit hatch to withdraw their funds. The sequencer can censor individual deposits, but in such case after 15d users can get their funds back.

    State validation
    Validity proofs (SN)

    SNARKs are succinct zero knowledge proofs that ensure state correctness, but require trusted setup.

    Data availability
    Onchain

    All of the data needed for proof construction is published on Ethereum L1.

    Exit window
    None

    There is no window for users to exit in case of an unwanted upgrade since contracts are instantly upgradable.

    Proposer failure
    Use escape hatch

    Users are able to trustlessly exit by submitting a Merkle proof of funds.

    Loopring
    Loopring is a
    Stage 0
    Appchain
    ZK Rollup.

    Rollup operators cannot compromise the system, but being application-specific might bring additional risk.

    Loopring provides an orderbook decentralized exchange for spot trading. Arbitrary contracts are not supported.

    Note:
    We're still in the process of formalizing how to properly integrate appchains in the Stages framework.

    Learn more about Stages
    Please keep in mind that these stages do not reflect project security, this is an opinionated assessment of project maturity based on subjective criteria, created with a goal of incentivizing projects to push toward better decentralization. Each team may have taken different paths to achieve this goal.

    All data required for proofs is published onchain

    All the data that is used to construct the system state is published onchain in the form of cheap calldata. This ensures that it will always be available when needed.

    1. Introduction - Loopring design doc
    Learn more about the DA layer here: Ethereum logoEthereum

    Each update to the system state must be accompanied by a ZK proof that ensures that the new state was derived by correctly applying a series of valid user transactions to the previous state. These proofs are then verified on Ethereum by a smart contract.


    ZK Circuits

    Loopring utilizes Groth16 for their proving system. The source code of the circuits can be found here.

    • Funds can be lost if the proof system is implemented incorrectly.

    Verification Keys Generation

    Groth16 requires a circuit specific trusted setup, so they run their own ceremony. The first phase is run using Powers of Tau ceremony. Some of the instructions on how to regenerate the verification keys can be found here.

    Validity proofs

    Each update to the system state must be accompanied by a ZK proof that ensures that the new state was derived by correctly applying a series of valid user transactions to the previous state. These proofs are then verified on Ethereum by a smart contract.

    1. Operators - Loopring design doc

    Past upgrades

    The metrics include upgrades on the currently used proxy contracts. Historical proxy contracts and changes of such are not included.

    Count of upgrades
    8
    Last upgrade
    7d 10h ago
    Avg upgrade interval
    7mo 20d
    2026 June 29, 10:51 UTC
    High severity
    26changes

    Stopped normal operation of Loopring exchange. Upgraded the exchange contract to a simple ProxyAdminExecutor (https://flat.l2beat.com/address/eth:0xB40973B8bffDe1553AE05DE4b298610524E1c37a) that lets the proxy admin (Loopring multisig) to execute arbitrary calls from the context of the proxy. Presumably that will be used to distribute tokens locked in the Loopring exchange.

    contract ExchangeV3 (eth:0x0BABA1Ad5bE3a5C0a66E7ac838a129Bf948f1eA4) [N/A] {
    +++ description: None
    sourceHashes.1:
    - "0x3905bcba44c20ed32e392737f7ef97fd5a9a6cacf6ad39bd81ae701eded88bee"
    + "0xac16617aa5dbef15d7ade7f376b240d9a040b65a8ab552f5408e97e29168fd41"
    values.$implementation:
    - "eth:0x26d8Ba776a067C5928841985bCe342f75BAE7E82"
    + "eth:0xB40973B8bffDe1553AE05DE4b298610524E1c37a"
    values.$pastUpgrades.7:
    + ["2026-06-29T07:46:47.000Z","0x9515d5aeed96ebdc21f10ec4d22c796a3dc752e5731bcfcb4dbe7e33a09cc496",["eth:0x9cFA61e1472f648cd01Ff05E658987A2abA40F1B"]]
    values.$pastUpgrades.8:
    + ["2026-06-29T10:24:47.000Z","0xecb93127c952956993d2247504aecf504b4e48a26bcd758276242ec10ea35274",["eth:0xB40973B8bffDe1553AE05DE4b298610524E1c37a"]]
    values.$upgradeCount:
    - 7
    + 9
    values.domainSeparator:
    - "0xf35e902e19c9d66a100a3d9b39430a988f9b8d41331d6f346f5c540ef8803264"
    values.getAgentRegistry:
    - "eth:0x39B9bf169a7e225ba037C443A40460c77438ea14"
    values.getAmmFeeBips:
    - 20
    values.getDepositContract:
    - "eth:0x674bdf20A0F284D710BC40872100128e2d66Bd3f"
    values.getDomainSeparator:
    - "0xf35e902e19c9d66a100a3d9b39430a988f9b8d41331d6f346f5c540ef8803264"
    values.getExchangeStake:
    - 0
    values.getMaxAgeDepositUntilWithdrawable:
    - 1296000
    values.implementation:
    - "eth:0x26d8Ba776a067C5928841985bCe342f75BAE7E82"
    + "eth:0xB40973B8bffDe1553AE05DE4b298610524E1c37a"
    values.isInWithdrawalMode:
    - false
    values.isShutdown:
    - false
    values.owner:
    - "eth:0x153CdDD727e407Cb951f728F24bEB9A5FaaA8512"
    values.pendingOwner:
    - "eth:0x0000000000000000000000000000000000000000"
    values.version:
    - "3.6.0"
    implementationNames.eth:0x26d8Ba776a067C5928841985bCe342f75BAE7E82:
    - "ExchangeV3"
    implementationNames.eth:0xB40973B8bffDe1553AE05DE4b298610524E1c37a:
    + "ProxyAdminExecutor"
    }
    - Status: DELETED
    contract LoopringIOExchangeOwner (eth:0x153CdDD727e407Cb951f728F24bEB9A5FaaA8512) [N/A]
    +++ description: None
    - Status: DELETED
    contract AgentRegistry (eth:0x39B9bf169a7e225ba037C443A40460c77438ea14) [N/A]
    +++ description: None
    2025 August 14, 07:46 UTC
    5changes

    signer change.

    contract LoopringMultisig (0xDd2A08a1c1A28c1A571E098914cA10F2877D9c97) {
    +++ description: None
    values.$members.2:
    - "eth:0x3b1D1F89E0b6803174A2dE72e21A6f6f8464d5F1"
    values.$threshold:
    - 3
    + 2
    values.multisigThreshold:
    - "3 of 4 (75%)"
    + "2 of 3 (67%)"
    }
    2025 August 11, 10:57 UTC
    6changes

    ms change. also added milestone for the DeFi sunset.

    contract LoopringMultisig (0xDd2A08a1c1A28c1A571E098914cA10F2877D9c97) {
    +++ description: None
    values.$members.2:
    - "eth:0x88f8Dbd3dC44c6E2e368258D3eee8EB9A07aF191"
    values.$members.4:
    - "eth:0x7414eA41bd1844f61e8990b209a1Dc301489baa9"
    values.$threshold:
    - 4
    + 3
    values.multisigThreshold:
    - "4 of 6 (67%)"
    + "3 of 4 (75%)"
    }
    2025 July 07, 06:50 UTC
    High severity
    8changes

    gnosis safe upgrade.

    contract LoopringMultisig (0xDd2A08a1c1A28c1A571E098914cA10F2877D9c97) {
    +++ description: None
    sourceHashes.1:
    - "0xd42bbf9f7dcd3720a7fc6bdc6edfdfae8800a37d6dd4decfa0ef6ca4a2e88940"
    + "0x7d388119a66f3eae147d748f86136f073d907d6b36f7e87e9363c4c7a2899a8a"
    values.$implementation:
    - "0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552"
    + "0x41675C099F32341bf84BFc5382aF534df5C7461a"
    values.VERSION:
    - "1.3.0"
    + "1.4.1"
    implementationNames.0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552:
    - "GnosisSafe"
    implementationNames.0x41675C099F32341bf84BFc5382aF534df5C7461a:
    + "Safe"
    }
    2025 March 04, 13:37 UTC
    5changes

    MS member change.

    - Status: DELETED
    contract Safe (0xb47fE76aC588101BFBdA9E68F66433bA51E8029a)
    +++ description: None
    contract LoopringMultisig (0xDd2A08a1c1A28c1A571E098914cA10F2877D9c97) {
    +++ description: None
    values.$members.1:
    - "0xb47fE76aC588101BFBdA9E68F66433bA51E8029a"
    + "0x576aBC47E0Dbe79c1c950190173faE9A13f8AB98"
    values.$members.0:
    - "0x576aBC47E0Dbe79c1c950190173faE9A13f8AB98"
    + "0x0F026a3efE44E0Fe34B87375EFe69b16c05D0438"
    }

    The system has a centralized operator

    The operator is the only entity that can propose blocks. A live and trustworthy operator is vital to the health of the system.

    • MEV can be extracted if the operator exploits their centralized position and frontruns user transactions.

    Users can force exit the system

    Force exit allows the users to escape censorship by withdrawing their funds. The system allows users to force the withdrawal of funds by submitting a request directly to the contract onchain. The request must be served within a defined time period. If this does not happen, the system will halt regular operation and permit trustless withdrawal of funds.

    • Users can be censored if the operator refuses to include their transactions. However, there exists a mechanism to independently exit the system.

    1. Forced Withdrawals - Loopring design doc
    2. Forced Request Handling - Loopring design doc

    Regular exit

    The user initiates the withdrawal by submitting a regular transaction on this chain. When the block containing that transaction is settled the funds become available for withdrawal on L1. ZK proofs are required to settle blocks. Finally the user submits an L1 transaction to claim the funds.

    1. Withdraw - Loopring design doc

    Forced exit

    If the user experiences censorship from the operator with regular exit they can submit their withdrawal requests directly on L1. The system is then obliged to service this request. Once the force operation is submitted and if the request is serviced, the operation follows the flow of a regular exit.

    1. Forced Request Handling - Loopring design doc

    Emergency exit

    If the 15d deadline passes and the forced exit is still ignored the user can put the system into Withdrawal Mode, disallowing further state updates. In that case everybody can withdraw by submitting a merkle proof of their funds with their L1 transaction.

    1. Forced Request Handling - Loopring design doc
    A dashboard to explore contracts and permissions
    Go to Disco
    Disco UI Banner

    Ethereum

    Actors:

    LoopringMultisig0xDd2A…9c97

    A Multisig with 2/3 threshold. This multisig owns BlockVerifier, ForcedWithdrawalAgent, and LoopringV3, and is the proxy owner of ExchangeV3. This allows it to arbitrarily change the forced withdrawal fee, change the Verifier address, and upgrade ExchangeV3 without delay.

    ExchangeV3 Proxy Owner0xDd2A…9c97

    The proxy owner can execute arbitrary code from the context of ExchangeV3, including sending tokens to arbitrary addresses.

    A dashboard to explore contracts and permissions
    Go to Disco
    Disco UI Banner
    A diagram of the smart contract architecture
    A diagram of the smart contract architecture

    Ethereum

    Main Loopring contract. It was upgraded to the ProxyAdminExecutor implementation on 2026-06-29.

    DefaultDepositContract0x674b…Bd3f

    ERC 20 token basic deposit contract. Handles user deposits and withdrawals.

    LoopringV30xe56D…0C71

    Contract managing LRC staking for exchanges (one Loopring contract can manage many exchanges). It also allows to change the forced withdrawal fee and the Verifier address.

    FastWithdrawalAgent0xec3C…8a31

    Auxiliary contract allowing users to process fast withdrawals.

    ForcedWithdrawalAgent0x52ea…4470

    Auxiliary contract able to force withdrawals from L1 on behalf of users.

    BlockVerifier0x6150…01ef

    zkSNARK Verifier based on ethsnarks library.

    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).