In his recent post on the ETH Research Forum last Saturday, Ethereum co-founder Vitalik Buterin spoke about solving Ethereum’s scalability issue using Zk-Snarks technology. Zk-Snarks is the same cryptography technology powering the privacy-centric cryptocurrency ZCash.
Buterin said that the use of Zk-Snarks can boost the capacity of the Ethereum network by a huge amount. According to Buterin, Zk-Snarks can achieve up to 500 transactions per second. This is more than 30x the current maximum capacity of processing 15 transactions per second, of the Ethereum network. More importantly, he notes that it can happen without using any second-layer scalability solutions like Plasma of Raiden:
“We can actually scale asset transfer transactions on ethereum by a huge amount, without using layer 2s that introduce liveness assumptions (eg. channels, plasma), by using zk-SNARKs to mass-validate transactions,” Buterin wrote.
He further tweeted:
And there are layer 2's without data availability tradeoffs or liveness requirements, eg. tx mass-validation via ZK-SNARKs can reduce costs to < 1000 gas per tx if done well. That's ~500 tx/sec on-chain with all the security guarantees of on-chain.
— Vitalik Non-giver of Ether (@VitalikButerin) September 22, 2018
Buterin Explains Relayer Node
In his post, Buterin says that the Zk-Snarks technology allows ‘relayer’ node to “verify the correctness of computations without having to execute them” or “learn what was executed.” A relayer node is like a computer which does the task of aggregating transactions in exchange for the transaction fees. Buterin explained:
“There are two classes of user: (i) transactor, and (ii) relayer. A relayer takes a set of operations from transactors, and combines them all into a transaction and makes a ZK-SNARK to prove the validity, and publishes the ZK-SNARK and the transaction data in a highly compressed form to the blockchain. A relayer gets rewarded for this by transaction fees from transactors.”
“Anyone can be a relayer; there is no assumption of even an untrusted special ‘operator’ existing,” Buterin added. However, he agreed to the fact that aggregating transactions using Zk-Snarks is a computationally challenging task, but expects the technology to improve in the future. He wrote:
“I understand that the above requires some quite heavy duty computing work on the part of the relayers. But at this point it’s widely known that optimizing snark/stark provers is super-important so I’m sure there will be more and more software engineering work going into it over time.”
This proposal from Vitalik Buterin comes just at a time when the Ethereum developers are actively working on solving the network’s scalability issue. One of the key challenges ahead of the Ethereum developer team is to reduce network congestion and alleviate the pressure of growing number of dApps on its blockchain.
As the Ethereum Constantinople hard fork is scheduled for next month October, we expect some changes coming to the network very soon.