Ethereum-Approved Plasma Solution Provider Shares Light on SNARKs
As many Digitex community members already know, we’re breaking new ground by partnering with Matter Inc., an Ethereum-approved Plasma solution provider. We couldn’t be more excited about what this means for the exchange in the long run as we onboard more users and work to provide the most cutting-edge futures trading exchange on the market.
Soon we’ll be able to provide the best of both worlds in speed and security through our centralized order matching engine and secure decentralized account balances. Digitex is the only hybrid exchange to be working with Plasma developers to incorporate this incredible technology into our stack.
But sometimes, being a pioneer also means having to accept the naysayers dying to prove you wrong--or the uncertainty that can throw you off keel.
Lately, there have been plenty of unfounded rumors about the state of Plasma, its usability, viability, timeline, and more. One recent Coindesk article even suggests that another approach--SNARKs--has overtaken Plasma as Ethereum’s scaling solution.
We thought it was about time to clear this up for those of you who may be wondering what’s really going on. And who better to explain it than Alexander Vlasov, Head of Research at Matter Inc and a member of the core Plasma development team. Here’s what he has to say about Plasma, SNARKs, Coindesk, and more. Take it away, Alex…
The Plasma Protocol - Where It’s Really At
In the light of a poorly researched article with huge parts taken out of the context, a lot of educational work needs to be done to prevent users from getting caught up in the new wave of SNARK startups. We’re going to skip the trivial part of what a zkSNARK is (for further information, we suggest you don’t ask Coindesk) and go directly to its practical aspects.
The Practical Aspects of SNARKs
SNARKs have some practical aspects that cannot be denied. They prove consistency of computation. This can also be rephrased, let’s say they prove the validity of a statement about computation.
This proof is succinct, which means that proof size is exponentially smaller than the number of steps of some computation. Even better, SNARK proof is almost constant (also sometimes notated as `O(1)`) and verification time for SNARKs is also almost `O(1)`.
A large portion of intermediate or input values used in computation can be hidden (also called “private input”), but these inputs are not part of the proof.
All these powerful properties create an illusion that SNARKs are the ultimate solution. For example, one could imagine that Ethereum may be easily scaled by using a SNARK to prove updates of some kind of database that contained users’ balances, in the sense that every transaction that changes balances were properly signed and users had enough funds for transfers.
Unfortunately, SNARKs are also trade-offs, and they trade ease of verification and proof size for very high proving complexity at the current state of development.
This Over-Hyped Scaling Solution Is Far from Finished
In additional to proving complexity, current constructions do not have a consistent protocol that ensures correctness and resolution of the worst case scenarios. The same thing was also true at the early stage of Plasma development with poor UX. Other problems were also successfully resolved over the last year (for technically prepared readers I'd suggest searching ethresear.ch to find out more about the data availability problem).For those of you short on time, I'll summarize the current problems below:
- Currently, it's hardly possible to aggregate more than 1,000 transactions per SNARK at the level of development it’s at now.
- Infrastructure cost for proving a SNARK of such size is around $0.01 per transaction without gas costs for the Ethereum transaction.
- The Ethereum transaction that would aggregate these 1,000 transactions will take around 1.5-2 million gas units for a highly optimized implementation.
- Upon publishing such transactions, every block will take 25% of the block gas limit and may push gas prices higher (potentially provoking a Cryptokitties 2.0 situation).
- At the current Ethereum price and network load, normal transactions are cheaper in the USD equivalent for plain Ethereum transfers.
- Even if one could aggregate more transactions per SNARK and further optimize Ethereum transaction structures, one Ethereum block can at maximum fit around 20,000 transfers in such an aggregation--without any space for other transactions.
Doesn’t sound like the perfect solution, does it?
Let's Recall What Plasma Can Already Do
Plasma is already way more developed and advanced than SNARKs, with conservative estimates of ~65000 transactions per Plasma block. Block commitment costs 100k gas units only--way below the Ethereum block capacity--and infrastructure costs for moderate transaction rates of 1,000 per second are way below 1 cent.
The data availability problem is resolved in modern constructions and scaling to much higher TPS numbers is already possible and has been demonstrated.
DEXes that use Plasma as a non-custodial solution are coming out very soon, UX is improving every month and monitoring complexity is reduced every month. It’s also very democratic to learn and implement.
How Plasma Will Benefit Digitex
Implementation and integration of Plasma will come in stages, this is true. Plasma is not an overnight solution, as it is cannot be used in its full power in futures trading model due to the centralized price oracle. Nevertheless, a lot of Plasma aspects can be used and these will help Digitex to break into a class of its own.
Economically, even in a centralized oracle model, Digitex has no economical incentive to cheat using the price oracle. DGTX tokens are the only kind of asset in the system, so any kind of byzantine behaviour that could potentially allow Digitex to "steal" tokens from other users would result in the token value being reduced to zero, which results in zero expected outcome of such an action.
The non-custodial nature of Plasma is still preserved. In some extreme scenario of global technical problems with the exchange (like Great Britain leaving the EU and cutting all fiber channels as they go) users of the Digitex Futures Exchange will be able to move their DGTX tokens back to the Ethereum mainnet at any time for any reason and withdraw them immediately and in full.
Plasma can be fully used in the next iterations of the exchange when spot trading is introduced. In this case, a fully decentralized system can be built as long as communication with parties is made efficient. Completely public blocks that list every transaction over some time interval give the full price discovery information to interested users.
Inexpensive trades in Plasma will allow even low-volume traded ERC-20 tokens to have higher liquidity. All of this is in a full non-custodial regime. Plasma isn’t only the future, Plasma implementation is underway now and Digitex is at the forefront of making that happen.