NEO and Qtum. Yes, that’s it.
tl;dr: This post covers the only two viable and live alternatives to Ethereum as a distributed application platform (NEO and Qtum) and explains my confidence in Ethereum’s dominance.
I just devoured Ed Posnak’s ongoing series, On The Origin of Smart Contract Platforms. It’s a well-argued collection of essays on several high-profile smart contract platforms — at the time of this writing, he’s covered Tezos, DFINITY, NEO, EOS, Cardano, Lisk, Qtum, and Waves.
As it turns out, there aren’t currently many alternatives to Ethereum when it comes to supporting arbitrarily complex distributed applications. The space holds a lot of promise, and I’m excited to see how projects like EOS and Cardano fare, but most of these aren’t nowhere near production.
In this short post, we’ll quickly look into the only two alternatives to Ethereum with a live mainnet: NEO, and Qtum.
Note: My focus lies mostly with public utility networks. It’s not that I don’t see value of permissioned networks (I do), but the allure of the impact of properly designed public blockchains is very hard to resist.
Consensus nodes use Byzantine Fault Tolerance Algorithm to reach consensus and ensure the finality of transactions. It also ensures that the system keeps its finality and availability as long as Byzantine fault occurs on less than 1/3 of the nodes.
This allows them to boast some pretty healthy numbers, like 1,000 transactions per second, confirmed within 20 seconds. From their whitepaper:
In the NEO dBFT consensus mechanism, taking about 15 to 20 seconds to generate a block, the transaction throughput is measured up to about 1,000TPS, which is excellent performance among the public chains. Through appropriate optimization, there is potential to reach 10,000TPS, allowing it to support large-scale commercial applications.
There’s no free lunch, however. This comes at a cost of centralization in validator nodes, since BFT can only function at up to ⅓ of dishonest actors, and sees its performance heavily degraded the closer you get to that number. In practice, this means that NEO keeps a very close eye on who gets to run a validator node on their network. From their whitepaper:
the bookkeepers can be a real name of the individual or institution. Thus, it is possible to freeze, revoke, inherit, retrieve, and ownership transfer due to judicial decisons on them. […] The NEO network plans to support such operations when necessary.
NEO is not decentralized enough as of today, and that is fully intentional. […] NEO Council is still holding 50% of the tokens […] the NEO Council want to ensure that all consensus nodes have honest, non-malicious intentions.
While there might be great arguments for doing so, I believe this is anathema to the principle of decentralization.