DISCLAIMER: I am in no way associated with the Zilliqa team. Neither am I a financial advisor, nor is this meant to be financial advice. Whatever follows, just reflects my understanding of the project, and my personal opinion on its future outlook.
Recently we have seen a lot of debate surrounding scalability of public blockchains, partly stemming from the CryptoKitties fiasco. CryptoKitties is an online game, created by Vancouver-based Axiom Zen, that allows users to purchase, trade, and breed digital kittens. Soon after its public release on November 28, the game took the cryptocurrency world by surprise, accounting for about 11% of total transactions on the Ethereum network, the blockchain that the CryptoKitties application is built on. The volume of traffic on the platform within the first week of its release was enough to put serious strain on the Ethereum blockchain, clogging the network, causing significantly slower transactions times and higher transaction costs for all the blockchain users.
Some may argue that having an application like Cryptokitties on the Blockchain is frivolous, since the application is a non-coin related gaming platform. However, I think that this is a great application of the Blockchain technology, and why the technology is so disruptive. In fact Ethereum Co-founder, Vitalik Buterin, himself tweeted in support of the application, emphasizing on the value that the blockchain technology brings:
So, maybe instead of asking the question: ‘Should we have an application like CryptoKitties on a public blockchain?’, we should really be asking the question: ‘Shouldn’t public blockchains be more scalable to real world application?’. The fact is that, as of today, blockchains are limited in their ability to scale, which some argue is the biggest technological barrier to global adoption of the technology.
What limits scalability of blockchains?
Consensus protocols on existing public blockchains (Ethereum, Bitcoin, Neo, Ripple etc.) have a critical requirement for validation of transactions: every participating node on the network has to validate each transaction sequentially, and then store transactions on the ledger, a copy of which is maintained by each node. This requirement is what imparts, to blockchains, their key characteristic — ‘decentralization’.
However, in such a decentralized system, as the number of transactions on the network increases (with, for example, blockchain adoption), the need for additional nodes, to process and store transactions, also increases. As the number of nodes on the network increases, the data for each transaction has to travel a lot more before being validated and stored by ALL the nodes on the network. Therefore, the network does not scale well as more nodes are added to the network due to the inter-node latency that increases logarithmically with each additional node. In effect, blockchain scalability reduces as the network size increases.
Public blockchain consensus protocols, that operate in this fashion, are forced to choose decentralization over high transaction throughput.
Today, approximately 900 distributed applications (dApps) are built on the Ethereum Network. With a transaction throughput of about 15 transactions-per-second (tx/s), Ethereum is barely capable of handling the current transaction volume, and would have to scale significantly to be able to handle the expected transaction volume in the near future. The Bitcoin network is even worse in terms of transaction throughput, processing only about 4 to 7 tx/s. Similar is the story for all the existing public blockchain platforms, with some being slightly more scalable than others, but all glaring into a future where blockchain transaction throughput could be a severe bottleneck, hindering mass adoption of the blockchain technology.
Researchers from the National University of Singapore (NUS) have founded a blockchain startup called Zilliqa. This new blockchain uses the ‘sharding’ technology, that is set to achieve Visa and MasterCard level transaction throughput of about 4000 tx/s.
How is Zilliqa a game-changer in the domain of public blockchains
Zilliqa is a high-throughput public blockchain platform designed to scale to thousands of transactions per second. The reasons, I believe, Zilliqa stands out as a public blockchain platform suitable for global adoption are as follows:
- Zilliqa is linearly scalable. Linear scalability means that as the number of participating nodes in the network increases, the transaction throughput also increases at an almost linear rate. Although it may sound intuitive, the fact is that, for most blockchains, the opposite is actually true, i.e. as the number of participating nodes in the network increases, each transaction now has to be broadcasted to a greater number of nodes before being validated and added to the ledger, thereby limiting transaction throughput. This is the reason why many solutions to increase transaction throughput depend on restricting the number of participating nodes on the network, which comes at the cost of a reduced degree of decentralization.
- Zilliqa is the first public blockchain to implement sharding. Sharding is a concept that has existed for distributed systems for a long time, where it is used to improve scalability, performance, and I/O bandwidth. However, the concept has not yet been implemented on any public blockchain. Sharding is the process of automatic splitting of a network of nodes into parallel chains called ‘shards’, where each shard processes a small portion of all transactions in conjunction with other shards, resulting in a microblock from each shard. These micro-blocks are then merged into one complete block that is added to the blockchain. Zilliqa is now leading the way in implementing this automatic network parallelization for public blockchains.
- In October 2017, running with 3600 nodes and 6 shards, Zilliqa has already recorded a peak throughput of 2488 tx/s on its internal testnet. This is already about 250 times higher throughput than Ethereum. With the first version of Zilliqa’s public mainnet scheduled for Q2 2018, this is a remarkable feat, and goes to show how Zilliqa is well on track to make the blockchain technology practical for high throughput applications, and hence global adoption.
- Zilliqa uses Proof-of-Work (PoW) just to establish mining identities, and not as a consensus protocol, thereby significantly reducing the overall energy footprint. This is fundamentally different from other PoW blockchains, like Bitcoin, where PoW is performed to mine every block, making the mining process energy intensive.
- Zilliqa uses an optimized practical Byzantine Fault Tolerant (pBFT) consensus protocol which gives finality to transactions. In other words, unlike PoW-based consensus, where multiple confirmations are required, pBFT does not allow temporary forks due to the consensus protocol, i.e. once a block gets committed to the blockchain, no other block can share the same parent as the committed block. As a result, no confirmations are required.
- Zilliqa’s pBFT based consensus allows for efficient management of storage requirements. Because of finality, the entire transaction history does not have to be saved on the blockchain. Instead it is sufficient to store only the latest state. With smart contracts, however, the storage requirements increase significantly. But Zilliqa is exploring collaboration opportunities with distributed cloud storage networks such as Bluzelle and Genaro Network, to be able to utilize their storage for storing blocks and fetching them, when needed, for the execution of smart contracts.
- Zilliqa’s smart contract language is easier to reason and less prone to bugs. Unlike Ethereum, Zilliqa’s smart contract language is not Turing complete, and instead it uses a non-Turing complete language, which makes it simpler, easy to understand, and more receptive to formal methods-based verification.
- Zilliqa is the only blockchain protocol that is truly scalable without sacrificing security or decentralization. There are other blockchain protocols that claim to have higher transaction throughput, but they achieve this, either by restricting the number of participating nodes on the network, thereby increasing the degree of centralization, or by making the blockchain more vulnerable to attacks, and hence reducing the security of the blockchain.
How does Zilliqa compare against its ‘competitors’?
Although Zilliqa’s team does not see the other existing public blockchains as competitors, and rather takes a more open approach towards them, facilitating a healthy environment of learning from each project and developing on it, I use the term ‘competitors’ here in the conventional sense to be able to compare Zilliqa head-to-head against the existing blockchains. The following comparisons are based on the information shared by Zilliqa’s team with the community.
Zilliqa versus Bitcoin:
- Bitcoin network processes about 4 to 7 tx/s, whereas Zilliqa has already processed about 500 times more transactions per second on its testnet.
- Since Bitcoin uses PoW as a consensus protocol, it applies PoW on each block, making mining of blocks much more energy intensive. Zilliqa, on the other hand, uses pBFT as a consensus protocol, with PoW just being applied for miner identification. Therefore, the high energy costs associated with PoW will not apply in Zilliqa.
- Unlike Bitcoin’s consensus mechanism, Zilliqa’s pBFT gives finality to transactions, requiring no confirmations, which significantly reduces the storage requirements.
- Unlike Bitcoin, Zilliqa has smart contract functionality and it supports the building of dApps on its platform.
Zilliqa versus Ethereum:
- Ethereum network processes about 10 to 12 tx/s, whereas Zilliqa’s transaction throughput is already about 250 times higher.
- Just like Bitcoin, Ethereum also uses PoW as its consensus protocol. Therefore Zilliqa’s pBFT consensus protocol makes it much more energy efficient.
- Ethereum’s PoW-based consensus does not protect it against temporary forks, and hence requires a certain number of confirmations before the block is committed. However, Zilliqa’s pBFT gives finality to transactions, requiring no confirmations, which significantly reduces the storage requirements.
- Unlike Ethereum, Zilliqa uses a non-Turing complete language for smart contracts, making it less prone to bugs, and more receptive to formal methods-based verification.
- Ethereum is still exploring Proof-of-Stake (PoS) and sharding as alternatives to improve scalability. However, Zilliqa has already chosen, and implemented sharding as its approach towards solving blockchain scalability constraints, possibly allowing it to run high throughput applications long before Ethereum. Zilliqa has the first mover advantage in the arena of truly scalable blockchains.
Zilliqa versus NEO:
- As a consensus protocol, NEO uses delegated BFT (dBFT) that requires a sub-set of nodes, called book-keeping nodes, to run consensus on behalf of the entire network. These book-keeping nodes are also required to deposit and lock a sufficiently large collateral. The disadvantage of this approach is that if the number of book-keeping nodes is too large, it significantly reduces the liquidity from the market due to the locking up of a large collateral; and if the number of book-keeping nodes is too small, it reduces the degree of decentralization of the blockchain, making it less secure from attacks. On the other hand, Zilliqa uses pBFT for consensus, with a significantly large number of nodes that are not required to lock up any collateral. Therefore, Zilliqa’s consensus protocol reduces neither market liquidity, nor the degree of decentralization or security.
- NEO deals with the challenge of scalability by running dBFT on a subset of the nodes, thereby reducing decentralization and security. Zilliqa solves the scalability challenge by using sharding the network and the transactions into parallel chains, each chain processing its own micro-block, to be merged into a final block. Thus, Zilliqa is truly scalable, while maintaining decentralization and security.
Zilliqa versus EOS:
- EOS uses delegated PoS (dPoS) as its consensus protocol, where a subset of 21 nodes, called block producers, are used to propose blocks. This does yield a high throughput with scalability, but induces significant centralization and security risks for the network. Zilliqa is scalable without compromising the decentralization or security of the blockchain.
- The dPoS of EOS does not guarantee transaction finality, the way Zilliqa’s pBFT does.
Team and Advisors
Zilliqa’s team consists of highly renowned scientists, entrepreneurs and engineers with significant experience in the blockchain domain and cyber-security.
The Chief Executive Officer (CEO) of Zilliqa, Xinshu Dong, has a PhD in Computer Science from the National University of Singapore (NUS), and is a practitioner in building secure systems. He has led several national cyber-security projects in Singapore, and has extensively published his research in renowned international conferences.
Prateek Saxena is the Chief Scientific Advisor for Zilliqa, and has a PhD in Computer Science from University of California, Berkeley. He is a research professor in computer science at NUS, and has received several premier awards such as the Top 10 Innovators under 35 (MIT TR35 Asia) in 2017.
The advisory board of Zilliqa also includes the prominent names in the blockchain industry, like Loi Luu — Co-founder of Kyber Network, Vincent Zhou — Founding Partner of FBG Capital, Nicolai Oster — Partner at Bitcoin Suisse AG, and Alexander Lipton — Founder and CEO of StrongHold Labs.
The highlights of Zilliqa’s roadmap are as follows:
- Zilliqa has already released public testnet v1.0
- Public testnet v1.5 release is scheduled for Q1 2018
- Public mainnet release is scheduled for Q2 2018
- dApps release scheduled for Q3 2018
Zilliqa has a very active roadmap ahead, with the biggest event being its mainnet launch.
The bottom line is that, for Zilliqa, truly, sky is the limit. And this is what makes Zilliqa’s future potential so exciting and worth keeping an eye on!