Today we are thrilled to announce the launch of Loopring Exchange to the Ethereum community.
This is the user-facing product we have built on our own Loopring protocol, and we consider the exchange a public beta. This Beta1 is based on the Loopring protocol v3.1.1. The exchange smart contract address is:
Loopring Exchange is the first publicly accessible zkRollup exchange on Ethereum mainnet.
It is 100% non-custodial, inheriting Ethereum-level security guarantees while capable to perform at a throughput 1000x greater (and 600x cheaper settlement cost) than the current state of the art layer-1 DEXes.
Loopring Exchange is now available for anyone to use at Loopring.io.
While we are super excited about the product launch, we admit that the current implementation is far from being perfect at the UX level. We want to be as transparent as possible by sharing some information with our potential users so they know the risks and roadmap they may face when using the DEX. We especially want to highlight our technical challenges and overall readiness, our fee schedule, and the differences between our zkRollup-based DEX, layer 1 DEXes, and centralized exchanges (CEXes). We also highlight a reward program and trading competition.
Challenges and Readiness of our Technologies
The DEX is the culmination of three significant components:
- the Loopring protocol (smart contracts & ZK circuits),
- the Relayer cluster,
- the React web application.
We have the most confidence in the Loopring protocol. The latest version truly reflects our experience and lessons learned in smart contract development and testing over more than two and a half years. SECBIT has thoroughly audited the smart contracts and ZK circuits.
There are still things we can improve, including:
- Use a more modular design to ease future development and testing;
- Optimize the current ZKP library (libsnark) for better prover performance, which is an ongoing effort, and our Chief Architect, Brecht Devos, will have some exciting preliminary results to share soon.
- Adopt a new ZKP library for universal trusted-setup or one that doesn’t require trusted-setups at all.
- Beta1 has a capacity limitation of 1 million users. Once we get close to this limitation, we’ll need to do another trusted-setup to increase the capacity to maybe 64 million users. The current 1 million capacity limitation is chosen to reduce prover cost. Now that we have more prover data from production, we are confident that increasing the capacity limit to 64 million will only increase prover cost by 10–15%, which can be offset by the optimization effort mentioned above.
- There are many features we want to implement, such as fast withdrawals and peer-to-peer layer-2 transfers/payments. But optimizing the core functionalities and cost reduction is still our focus.
In general, we believe the current version of the Loopring protocol is robust and is ready for ‘small’ DEXes (1 million users), but not for large ones yet.
The relayer cluster for a zkRollup system is more complicated than we initially expected, and that’s why it took so long for us to develop one. Our focus for the relayer are throughput and cost-per-trade. Our relayer can now support 100 trades-per-second (TPS) consistently, and once we get the Merkle tree update operation parallelized, the performance can be further improved. (The Loopring protocol can support 2,025 TPS; the bottleneck is the relayer). The current cost-per-trade is about $0.0025 USD, and we are extremely confident that we can bring it down by optimizing both the relayer and the prover. Results to share on this shortly.
Because of the relayer cluster’s complexity, we will need more time to automate relayer upgrade and token listing processes.
We are also working on improving our relayer’s API and documentation. We’ll try to release the documentation within a month. But if you want to use our API, do let us know, so we can inform you right as they are released. The lack of API documentation is a reason we don’t have any market makers aboard at launch, but we do have a base level of liquidity internally.
DEX Web-App (Loopring.io)
The current web-app only works with MetaMask. We are not thrilled it is not designed for the masses just yet. Our long-term goal is to offer a smart wallet as a mobile app and seamlessly integrate our DEX backend into the smart wallet. Smart wallet + DEX will provide users both a better experience and security guarantees.
That said, the experience is surely satisfactory, and we will keep improving the web application for a better trading experience throughout 2020. As of now, it still has more than 40 GitHub issues to be taken care of, mostly UI. We’ll release improvements on a daily basis.
If you feel we should add more features or you’ve found a bug, please submit an issue. We’ll appreciate your feedback and have a reward program (see below).
There is no KYC to trade on Loopring.io and no personal data of any kind to be collected: an Ethereum address is all you need.
For the most recent and more detailed fee schedule, please check out https://loopring.io/document/fees.
Here are some highlights:
- The trading fee for maker orders across all trading pairs is always 0%.
- The trading fee for takers is between 0.3%-0.5% for normal trading pairs, and 0.06%-0.10% for stablecoin trading pairs.
- Recall, the protocol fee mandated by the Loopring protocol is 0.06%, paid to those who have staked LRC for at least 90 days. Thus, for the example of a stablecoin pair traded with no discount tier for takers, only the remaining 0.04% (0.10%-0.06%) is our revenue.
- There are fees for processing account registration, password-reset, deposits, and withdrawals. It may seem counterintuitive, but is actually obligatory to prevent Sybil attacks. Without these fees, attackers can bombard the relayer by registering many accounts to deplete the DEX’s capacity (1 million users) or creating tons of tiny deposit/withdrawal requests to purposely waste our resources in the cloud generating proofs. Note that the Loopring protocol forces our relayer to process all valid on-chain requests in the order they are received, including tiny and deposit/withdrawal requests. This security guarantee can be our Achilles’ heel if we don’t enforce fees. For a normal, non-malicious user, these fees will be negligible, but for an attacker, they are the difference between effective deterrence and system overload. (Note: ‘registering’ an account does NOT involve KYC or some formal process, it is simply the act of entering the zkRollup environment and attaching an account in the Merkle tree to your Ethereum address).
Differences between Loopring Exchange and CEXes
Loopring Exchange provides a similar trading experience to centralized exchanges. But under the hood, Loopring is 100% non-custodial and secure — to the same degree as Ethereum. Besides the non-custodial nature, we would like you to know the following:
- The relayer is still quite centralized. It can, in theory, reject to process your trade orders, but it must process each and every on-chain request you submitted in the order they are received, including account registration, password-reset, deposits, and withdrawals. Not honoring these requests will force the DEX into the Withdrawal Mode, which means the DEX is done and must return all users’ funds within a grace period (as in, cryptographically guaranteed to return funds). Under these circumstances, the biggest risk for a user is opportunity cost — his/her deposited funds will not be immediately available for withdrawal during the grace period, but it is impossible for the assets to be stolen or ‘lost’ on the exchange.
- The Exchange can only upgrade to a new protocol that’s 100% compatible with the current version. Increasing the DEX’s capacity to 64 million is not a compatible upgrade. It means this Beta1 will (eventually) be ended, all user funds will be returned to users, and we’ll start a brand new DEX instance. All users will have to migrate to the new version. From an exchange’s user acquisition point of view, this is not ideal; but from the user’s perspective, there is no risk to their trading assets.
- Loopring Exchange only supports Ether and ERC20 tokens on Ethereum. There is no built-in support for Bitcoin or other cryptocurrencies living off of Ethereum. Cross-chain is a different challenge that is not part of the Loopring protocol’s scope. But as a business, we’ll support other cross-chain solutions to bring valuable assets to our exchange. We plan to support WBTC and/or tBTC in the near future.
- The Loopring protocol guarantees your asset’s security, but not a DEX’s quality of service. For example, the maximum delay of processing deposits and withdrawals is two weeks. Why that long? Because the exchange’s cloud-computing provider may suffer data center failure, so the protocol allows a maximum of two weeks for the DEX operators to recover from such extreme situations. But as a user, you can always choose exchanges based on their quality of service. We strive to provide the best user experience and will try to process your deposit/withdrawal request within minutes. Keep in mind, the Loopring protocol enforces economic guarantees to service level in addition to the cryptographic guarantees of asset safety: DEXes are penalized by slashing (or withholding) their LRC stake (or fees) if they don’t behave according to protocol rules. Thus, LRC at stake is a good representation of skin in the game for a DEX.
- Importantly, the Loopring Exchange — and the Loopring protocol itself — need not rely on a single relayer. The specifications to build a relayer and interact with the protocol and ZK circuits are open, and anyone can build their own relayer — to service their own exchange, or to service others as a backend business model. Just because our relayer is closed-source, does not mean the system is prone to be censored. The viable and credible ability for any relayer (or group of relayers) to spin up and service the ecosystem of Loopring-based exchanges is sufficient to result in a state of censorship resistance. And to reiterate, none of these potential censorship considerations affect the safety/custody of assets — which are always secured by Ethereum and ZKPs — it affects only the permissionless aspects.
Rewarding Beta Testers & Traders
We have set up three reward programs for beta testers and bounty hunters. Check out https://loopring.io/document/beta1 for full details.
Briefly, the programs are:
1,000 Free Lifetime VIP Level 4 Upgrades [Feb 27 — March 15]
- We will upgrade the first 1,000 addresses to enter the Loopring Exchange to VIP Level 4! VIP4 is the highest VIP level on our platform, enjoying the lowest trading fees;
- If you are among the first 1,000 and have done at least 10 trades (any quantity in any market) before end of March 15 (EST), you will be our VIP4 for life; otherwise, your VIP4 status will only be valid for one year until March 16, 2021.
Trading Competition [March 16 — March 31]
- Every day, we will select 5 users with the highest trading volume for that day (calculated in ETH) and reward them with 1,000 LRC each;
- Every day, we will select 5 users with the highest number of trades on the exchange for that day and reward them with 1,000 LRC each;
- Every day, we will reward 5,000 LRC to the maker of the single largest trade (calculated in ETH) for that day;
- At the end of the trading competition, we will reward 50,000 LRC to the user with the largest cumulative trading volume (calculated in ETH).
Bug Bounty & Improvement Suggestions [March 1 — April 30]
- During this period, users can submit bug reports and improvement suggestions through the “Report a Bug” link on the website. We will reward selected feedback submissions with 500 LRC each.
We have simple listing requirements. We are open to any legitimate assets for which there is demand and the preconditions for liquidity. However, we cannot list any security tokens. To start, we are listing 4 trading pairs:
ETH-DAI, ETH-USDT, DAI-USDT, LRC-ETH.
Our priority is to support assets that traders demand, especially tokens from projects that move Ethereum forward. We reserve the right to implement a listing fee at some future date.
If you’d like to request to list your token or recommend the token of another project, please reach us at firstname.lastname@example.org.
As mentioned during our protocol launch and other times, we’d like to thank Barry Whitehat, Kobi Gurkan, and HarryR for their work on zkRollup, and for helping us along the way. Countless thanks to others in the Ethereum and ZKP communities as well. All the hard work and research is becoming a reality!