Zilliqa mainnet launches into month-long bootstrap phase
Zilliqa is on the verge of cementing its position as the first sharded live public blockchain.
"The name Zilliqa is actually a play on the word silica," says Zilliqa CEO Xinshu Dong. Because like silicon, Zilliqa aims to become an essential, ever-present and world changing ingredient, playing an essential role in the expansion of the digital age.
The Zilliqa mainnet has just launched today, marking the start of a month-long wind-up phase, because complex machinery like the Zilliqa blockchain needs to be heated up before use.
Conceptually heavy equipment
"With this launch, Zilliqa is now the first public blockchain platform to successfully implement sharding, to address one of the biggest challenges to mainstream blockchain adoption - scalability," Dong says. "To date, Zilliqa is one of the most complex blockchains built."
Sharding is a technique that has been around longer than blockchain. As the name suggests, it refers to splitting information into multiple parts. On a blockchain, this method can help keep down the size of a chain and facilitate speedier transactions, and generally make a blockchain more scalable.
Ethereum and many other blockchains have sharding plans of their own, but Zilliqa's go a bit further than most.
What makes Zilliqa so fast?
The main element of Zilliqa sharding is the dividing of nodes themselves. The nodes on the network subdivide into smaller clusters, and each of these processes transactions in parallel.
Divide your network into two groups of nodes and let each process transactions in parallel? Boom, you've just (approximately) doubled your throughput. Divide it into a hundred little clusters and you've increased it (approximately) a hundred fold.
Of course, this is easier said than done.
The first catch is that each of these clusters needs to be as reliable and secure as the network itself. This is difficult because size generally equals security on blockchains. If an attacker takes over the majority of a single node, or multiple nodes, they could do some real damage.
The main objective, then, is to prevent a single entity from picking up too much control. This is accomplished:
- Firstly by requiring proof of work mining from participants who want to be a node. Performing a proof of work will get a node a seat at the table for the next few blocks before it must be redone. This makes it relatively efficient, while still ensuring that potential attackers need to be investing money into becoming a node. Because one proof of work covers several blocks, miners will share relatively consistent rewards for the transactions processed on their shard.
- Secondly, by semi-randomising and automating the assignment of nodes to shards. This prevents attackers from gaming the system to take full control of one node.
- Thirdly by ensuring that each shard is large enough. Bigger shards are much more secure. Zilliqa has calculated 600 as being a nice and secure number, so that's the minimum shard size allowable.
Within these parameters, Zilliqa is quite confident that at least two thirds of the network will be honest, which makes its consensus mechanism work. The consensus mechanism in question is a practical Byzantine fault tolerant model.
When transactions are put into the Zilliqa network they're automatically divvied up between shards, which will then work to verify the correctness of these transactions.
Each shard has a leader (which rotates over time). The leader's job is to look at each transaction and declare whether it passes (it's a normal transaction) or fails (it's an attempted double spend, and so on). The rest of the nodes in each shard will also look at the transaction and decide whether they agree with the shard leader.
A transaction is accepted when at least two thirds of the nodes in a shard agree with the leader. If this threshold is not reached, the transaction will remain pending. After a set amount of time, when it becomes clear that a shard can't reach consensus, the nodes in a shard can launch a vote to replace the shard leader. This vote passes if at least 66% of nodes agree that the leader is wrong.
This kind of system brings additional speed advantages on top of sharding.
Firstly, because you don't actually have to wait for all nodes in a shard to reach consensus. A transaction can tick through with only a 66% response rate as long as they're all the same, and they generally will be. Even if a node is hostile it still has nothing to gain from going against the status quo until it has enough majority power to pull off a coup, so it's reasonable to assume the number of honest nodes in a shard will be about 100% most of the time.
Secondly, because transaction finality is reached within each shard. Unlike bitcoin, there's no need to wait for multiple confirmations on a transaction before you can be sure it's locked in.
As you can see, the Zilliqa blockchain is a sprawling machine with a lot of moving parts (shards). It would be tough to securely get it into the air entirely under its own steam, so the Zilliqa team will be taking it through a bootstrap phase to ensure it's protected while lifting off for the first time.
For the most part, this bootstrapping involves the Zilliqa team creating lots of its own nodes to fill different roles when there aren't yet enough members of the general public to run a network of this size and complexity. During it, so-called "guard nodes" will be automatically created and winked out of existence as needed to fill in for everyday nodes, while those shard leader roles and similar will also be directly handled by bots.
The idea is that as people move into the system they gradually take over from the robots currently running it, until the entire thing is a decentralised human-powered blockchain.
After the mainnet launch there are some near future plans for Zilliqa, and some more distant goals.
The near future goals include a blockchain-powered advertising supply chain, delivered in partnership with Mindshare, with the first campaign set to go live within the next two months or so. Also on the books is a Zilliqa-powered exchange, with Hg Exchange aiming to launch on the platform to trade privately-held shares and security token offerings. It's currently waiting for regulatory approval and will get there when it gets there.
There are also further technical developments planned.
"The launch of our mainnet is only the start of our journey," Dong explains. "We now have the necessary infrastructure on which we can add new features and protocols, and will also be constantly enhancing the platform. Some areas that we will be exploring include a more efficient backend for Scilla [a purpose-built Zilliqa smart contract language], efficient smart contract sharding, and research on incentive and staking mechanisms for different blockchains."
Zilliqa (ZIL) prices have fallen by over 10% in the last 24 hours because that's what cryptocurrency does.
Disclosure: At the time of writing the author holds ETH.