A key technical challenge for many blockchains is how to support an increasing number and complexity of transactions as more users begin using the network. Zilliqa was one of the first projects to propose a concrete design to sharding, an innovative blockchain scaling technique that allows blockchain networks to scale by breaking network nodes into subgroups, or shards. Zilliqa was the first project to implement sharding on a full public blockchain and estimates that, with an eventual network size of 10,000 nodes, the Zilliqa blockchain will enable a network speed and capacity that matches the average transaction rate of VISA and MasterCard with the advantage of lower fees.
The Zilliqa team’s qualifications reflect a unique academic background: many on the team are former or current doctoral students and professors at the National University of Singapore’s School of Computing, Princeton, Berkeley, and France’s Inria. Zilliqa was founded by Xinshu Dong and the projects advisors notably include Loi Luu, Kyber Network founder and an original architect of the sharding concept. Zilliqa raised approximately $22m in a token sale that concluded in 2018.
In the Zilliqa network, shards work in parallel to process transactions and reach consensus more efficiently. The sharding concept employed by Zilliqa was first proposed in an academic paper A Secure Sharding Protocol For Open Blockchains, co-authored by Zilliqa’s Chief Scientific Officer, Prateek Saxenan. Sharding works by dividing different nodes of a network into subgroups, or shards. User transactions are processed by nodes within an individual shard rather than all nodes. Shards then work in parallel to process transactions within their own shard of the network, and then reach consensus about the overall cross-shard state of the network. Eventually, such transactions are merged into a new block and processed on the blockchain. Sharding reduces the quantity of data each node must store, the number of transactions each node must process, and the volume of data to be processed across the network. The Zilliqa team estimates that sharding will allow the Zilliqa blockchain to reach 8,000 to 10,000 transactions per second.
Zilliqa’s consensus model utilizes Practical Byzantine Fault Tolerance (PBFT), a consensus mechanism that assumes a portion of the nodes in the network will cause errors or be actively malicious. Hyperledger, Stellar, and Ripple all use variations of PBFT. Unlike many proof-of-work and proof-of-stake architectures, in which one validator confirms a bulk of transactions and other validators confirm it, PBFT involves nodes voting on whether transactions are valid and leader nodes commiting the result.. Consensus is reached based on the total decisions submitted by nodes.
With Zilliqa’s model in particular, consensus is divided into epochs, which last approximately 3000 blocks. At the start of the epoch, a set of nodes are elevated to serve on the Directory Services (DS) Committee, which is responsible for sharding the network and assigning miners to the shards. During the epoch, each shard generates ‘micro blocks’ and submit those to the DS Committee, which aggregates them into a transaction block and distributes block rewards. At the end of each epoch, one member of the DC committee is swapped out and the entire network is shuffled. A more detailed explanation can be found in a three-part series released by the Zilliqa team in 2018 and in the technical whitepaper.
Zilliqa smart contract platform differs from Ethereum’s architecture in a focus on data-intensive computation, which leverages Zilliqa’s sharded structure. In Ethereum’s architecture, contracts are processed sequentially, each node confirming the same computation. In Zilliqa’s sharded architecture and its language Scilla, computation can be spread throughout the network and processed simultaneously. To enable this and enjoy the scalability to make this possible, Scilla will not be Turing-complete, and instead may implement formal verification that enables high-level smart contracts. This focus means that Zilliqa is aiming at highly scalable computations, such as data mining, machine learning, and financial modeling.
Zilliqa uses proof of work based on Ethash (Ethereum’s hash algorithm) as part of its overall consensus process, though not in the same way that bitcoin or other primarily PoW protocols do. Instead, proof of work is used to establish node identity during epochs. First, a round of PoW establishes which miners can join the DS committee (each epoch one member is kicked off and replaced), and then another round is used to allocate eligible nodes into different shards. Once the committee and shards have been performed, consensus resembles a practical byzantine fault tolerant process until the next DS epoch. Thus, the network only enters proof of work periodically, approximately 1-2 minutes every 2-3 hour cycle. As of late 2019, GPUs and CPUs could mine Zil but Ethash ASICs could not; many miners simply mined Zilliqa during its proof of work period and switched to Ethereum at other times.
Block rewards in Zil are distributed among nodes as follows: 25% of rewards are distributed evenly to all validating nodes in the network. 70% are distributed based on node activity during the DS consensus. 5% are distributed to lookup and seed nodes, which play a special role in maintaining the sharded state of the network.
Zilliqa tokens are called, “Zillings,” or ZILs for short. Users can spend Zillings to run transactions and smart contracts on the Zilliqa blockchain, similar to how Ether functions on Ethereum. Validators’ contributions to network security are compensated with ZILs.
Zilliqa Supply Schedule
Zilliqa's maximum token supply is 21 billion. Zilliqa had a token sale in 2018 in which it sold 30% of its 21 billion tokens, distributed another 30% to various entities described below, and withheld 40% for future mining rewards. This sale distributed ERC-20 tokens and was available primarily to community members; once the Zilliqa mainnet launched in January 2019, users could swap their ERC-20 tokens for native ZIL.
Of the 30% allocated outside of the token sale:
- 12% to Zilliqa research (vesting quarterly over 3 years)
- 10% to Anquan Capital, which developed the core technology and incubated zilliqa (vesting quarterly over 3 years)
- 5% to the Team (vesting quarterly over 3 years)
- 3% to agencies and advisors (vesting quarterly over 3 years), with 1% to Bitcoin Suisse with no vesting
Zilliqa has stated it will emit 40% of total ZIL supply over 10 years.