StarkEx Version 4.5 is Here!
Volition, ERC-1155, and Transaction Bundling
- StarkEx version 4.5 is here!
- Volition — allowing users to choose — for every single asset! — which data availability mode they would like to use: Rollup (on-chain data) or Validium (off-chain data)
- ERC-1155 support is now available
- Transaction Bundling — execute a bundle of transactions, or execute none
We are happy to announce StarkEx 4.5! Today, StarkEx already powers multiple applications and supports many use cases, ranging from perpetual trading for dYdX, NFT marketplace for ImmutableX and Sorare, spot trading for DeversiFi, and DeFi-Pooling for Celer.
As the range of use cases for StarkEx grows, we continue to grow our vision, develop new features and adapt to new needs.
With Volition, StarkEx is the first L2 solution that lets your users choose between Rollup mode (on-chain data) and Validium mode (off-chain data) for each and every asset they own.
Your users can now weigh the pros and cons of each data availability mode and switch to a different data availability mode at any given time.
Up to now, each StarkEx application had to choose one data availability mode — Rollup or Validium.
With Rollup applications, the new state is sent on-chain for every state update. (To be more accurate, in order to reduce gas costs, only the minimal data that is required to reconstruct the full new state is sent on-chain.) Choosing to go with Rollup mode comes with the additional cost of publishing the data on-chain, but the main advantage is greater security because it does not rely on a set of trusted entities.
Validium applications have a Data Availability Committee (DAC), which is responsible for storing the entire state on L2. It requires trusting a third party, but the main advantage of Validium is that it saves L1 gas costs and has better privacy protection than Rollup mode.
The requirement to choose only one data availability mode per application does not always make sense. Consider, for example, an NFT marketplace. Bob and Alice both use the marketplace. Bob owns an NFT, such as a Crypto Punk, that is worth a few million dollars. Bob is happy to pay for the best possible security he can get so that he can sleep well at night. On the other hand, Alice bought an NFT that is worth only a few cents because she just wants to test the platform. She doesn’t really care about losing the NFT and certainly won’t pay for having the data available on-chain. She would never withdraw this NFT to L1 anyway.
Volition offers a solution that lets each user choose which data availability mode they prefer, and pay accordingly. Rollup users pay more in order to cover the gas costs for publishing the data on-chain, while Validium users pay less. At every point in time, each user can change their mind and change the data availability mode.
Volition is implemented on StarkEx as two separate state trees, one for each data availability mode. The application locates each account in the corresponding state tree according to the user’s choice of data availability mode. It is possible to change the data availability mode for a specific account simply by transferring the funds to a new account on the other tree.
Starting with version 4.5, StarkEx supports ERC-1155 tokens on L2, in addition to the already supported ETH, ERC-20 and ERC-721. So now your users can deposit, withdraw, trade and transfer these tokens on StarkEx-powered applications. Minting of ERC-1155 will be supported in the next version.
ERC-1155 is a token type that combines the properties of ERC-20, where you can generate any number of tokens of the same type, and ERC-721, where you can generate many token types, but only one of each.
ERC-1155 is useful for games that require having multiple instances of the same object. For example, consider a fantasy game, where you walk through the woods and can find a very rare type of ring with special forces. This ring has only 5 instances in the entire game, so only five players can find it in the woods, while any other player can offer to buy it from them. Of course, scarcity also affects the pricing, so the bid has to be high enough.
Another advantage for ERC-1155 is for DeFi-Pooling platforms; DeFi-Pooling requires minting of Ride Ticket tokens for each DeFi Strategy and ERC-1155 simplifies the process of deploying the token contract and registering new tokens to StarkEx. For more info, see this article.
StarkEx now supports a new type of transaction — Multi-transaction.
A Multi-transaction is a bundle of transactions that is executed completely, or not at all.
Transaction bundling is useful for trading multiple asset types in one operation. One use case is selling a set of NFTs as one package.
L3 StarkEx on top of StarkNet (more information in this link). You’ll have the best of both worlds:
- Direct interoperability with StarkNet applications
- Lower gas costs for proving and updating the new state
- Lower latency for state updates
StarkEx high throughput