OnChain

NEO’s founders Da HongFei and Erik Zhang founded a company called OnChain. Understanding OnChain is critical to understanding NEO. They’re not the same company, but their interests align and they have a partnership together. OnChain’s system, known as DNA (Decentralized Network Architecture) aims to work with Chinese businesses and government. NEO acts as the foundation of DNA. If OnChain can integrate with Chinese businesses and government, that will greatly spur adoption of NEO.

Ultimately, DNA develops public and private blockchains for businesses. These blockchains then link up to NEO to join the decentralized economy. Businesses then have all the benefits of both private and public blockchains. Think of NEO as providing the public blockchains and OnChain’s DNA providing the private blockchains. Then, they can link up and get the best of both worlds.

OnChain also has several projects and partnerships and newsworthy mentions that all contribute to the DNA ecosystem:

OnChain’s recent development was of the ICO Ontology. Ontology uses the same architecture as NEO but ultimately works with businesses in creating a private, encrypted data network. Essentially, this is important when we have information that we need securing, but we also need it to be private. This will enable people to bring this information in a secure manner to blockchains.

References on OnChain’s roadmap

Honestly, I don’t understand why NEO doesn’t advertise their collaboration with OnChain more. NEO in itself is solid, offering several potential benefits over Ethereum. But combined with OnChain, NEO truly has the potential to implement itself as THE smart economy platform of the East.

The Ethereum Comparison: Ethereum’s equivalent is the Enterprise Ethereum Alliance, an open source blockchain initiative dedicated to linking Ethereum with the business world. Their list of partnerships is robust and impressive — no surprise for those familiar with Ethereum. Included among their members are: BP, HP, Toyota, MasterCard, Microsoft, and Intel, among many others.

TLDR: OnChain is a company partnered with NEO. They have extensive experience and many accolades in bringing blockchain to businesses. They work with companies and governments in the East. They are a huge component to NEO’s potential.

NEOX:

NEOX is NEO’s version of atomic swaps (directly swapping tokens without any exchange) and cross-chain integration. Think Ark Ecosystem. This will enable people to swap crypto assets and transact across different blockchains. It also allows smart contracts to interact across chains.

NEOX is important because it allows collaboration between the blockchains (both private and public) created by OnChain and by NEO’s public blockchain. As more components of the Smart Economy develop, NEOX will link them all together.

Ethereum Comparison: Ethereum has the ability to do atomic swaps, but has only completed this once — this isn’t to put down Ethereum; NEO has never completed one. However, Ethereum will need an outside application to accommodate large scale cross-chain integration.

Not quite the City of Zion we’re talking about…

City of Zion:

City of Zion (CoZ) is an independent, open source community of developers, translators, and designers who work towards the betterment of NEO. They have received funding from NEO to help incentivize project development. The community has contributed considerably to NEO. They have developed the NEON wallet, created a NEO block scanner, translated documents for NEO, and developed the NEX platform (see below). They recently received NEO funding to award $270,000 to 10 winners as part of their DApp competition. It is incredibly advantageous to have a network of support such as CoZ.

Ethereum Comparison: There isn’t really a good comparison for this on the Ethereum network.

NEX:

Nex is an upcoming ICO developed by City of Zion that offers a platform for the creation of payment solutions and decentralized exchanges on NEO. It links to NEO with NEOX.

Because of differences with NEO in the token model, account balances, and way smart contract interact — in comparison to Ethereum — NEO needed a solution to be able to effectively house decentralized exchanges. NEX offers that solution.

Ethereum Comparison: Already ERC20 tokens are easy to transact with on decentralized exchanges.

ProjectICO:

A turnkey, all-in-one ICO company that helps blockchain companies develop: from initial idea to ICO. They recently decided to move from Ethereum to NEO. They have an interesting Reddit AMA on their reasons for switching.

Ethereum Comparison: TokenHub is a similar project developing on Ethereum.

Microsoft China:

NEO is currently hosting a developer competition in partnership with Microsoft China with $490,000 as prize money.

Ethereum Comparison: Ethereum is incredibly well connected with established corporations. NEO is playing catchup.

DApps and ICOs:

The bread and butter of platforms; until now, NEO has only had one ICO (Red Pulse) and one DApp (AdEx). However, with several planned in the near future and with an upgrade last month which will enable NEO smart contracts to interact with website interfaces, I think this is only the beginning for NEO.

Ethereum Comparison: Ethereum hands down beats NEO in this area. Ethereum is the go-to platform for ICOs and DApps.

Ecosystem Recap

We hopefully have a strong understanding of the differences in the goals of Ethereum and NEO, as well as a good overview of NEO’s network and the network’s advantages in the smart economy. It’s important to understand this network for NEO because NEO is more than just a public blockchain, it is a piece in the larger picture. When NEO’s public blockchain can link up with OnChain’s private and business oriented blockchains and ultimately with all other DApps on it’s platform, it could truly become a smart economy.

The biggest differences between Ethereum and NEO

Ethereum’s energy consumption could power 1,025,438 American homes for a year. — Source —

Protocol

Ethereum uses the same protocol as Bitcoin — Proof of Work (PoW). With Proof of Work, computers on the network compete to solve mathematical formulas and win the right to confirm transactions into the blockchain, and thus, secure the network. The two major drawbacks to the PoW protocol is the danger of a 51% attack and the massive energy consumption required for network security. For these reasons, I think that PoW will soon be an outdated system, as blockchain transitions to a new protocol called Proof of Stake (PoS).

Proof of Stake works similarly to PoW except that instead of computers validating the network and receiving rewards equivalent to their relative computing power, PoS uses token holders. Those who hold tokens can “stake” their tokens (staking means to temporarily place the tokens in a locked smart contract — until staking is over) and in exchange, confirm transactions and receive rewards based on the relative number of tokens held. In PoW, if you operate 5% of the total computing power of the network, you can expect to get 5% of the block rewards. In PoS, if you own 5% of tokens, you can also expect to receive 5% of block rewards.

PoS offers a solution to the issues plaguing PoW — mainly it takes virtually no energy to run PoS — without compromising the security. I would argue that it actually improves security. With Ethereum, and all other PoW protocols, the difficulty algorithm (how hard it is to solve the mathematical formula) must constantly be updated to account for better computer hardware and more powerful mining groups. With PoS there is no need to do this. With Ethereum, you could conceivably purchase enough computing hardware to achieve a 51% attack; even after comprising the network, you would still have all of that hardware and could potentially use it to attack other PoW platforms. With PoS, because you must stake your coins, any malicious behavior results in the loss of all staked coins. So if you bought 51% of all tokens, you would immediately lose your substantial investment. In addition, the costs of purchasing 51% of the network tokens are equal for everyone. The costs of obtaining 51% of computer power — due to discounts for mass computer purchases and countries with extremely cheap electricity — are not.

Byzantine Fault Tolerance attempts to solve the Byzantine General’s Problem

NEO uses a protocol called dBFT (Delegated Byzantine Fault Tolerance) sounds like a term you’d see on your AP History Test. The simplest explanation of Byzantine Fault Tolerance is the issue with how to get everyone on the network to be honest and work together — because one bad apple could ruin everything. NEO’s dBFT is a modification of the classic PoS protocol, with some significant advantages and one primary disadvantage.

I imagine dBFT as working similar to how the U.S. Senate works (and if that analogy made you want to just give up on Neo entirely, I understand, but hold on…keep reading). If every person in America — all 323.1 million—was allowed to directly participate in the governmental decision making process, it would be catastrophic. It would be brutally slow as millions competed for the microphone, all shouting their opinion and arguing with each other. Making decisions would also be agonizingly slow. So instead, everyone in the country gets a vote. And with this vote, they can elect their representatives, someone to speak for them. This system directly reflects NEO’s governance. Instead of everyone participating in the validating process — which can be incredibly limiting in terms of transaction speed — those who hold NEO tokens can vote for delegates. These delegates (called bookkeepers) maintain the network for everyone. Thus, NEO can run faster, more efficiently, and with quicker and more finite decisions, and you can stay home, drink Bud Light, and watch the Patriots game with your computer in sleep mode.

Remember too that these bookkeepers will have their digital identity known, making NEO much more compliant with national regulations.

The disadvantage with this system is a lack of decentralization. In its purest sense, instead of thousands of validators being scattered all across the world, governance is concentrated in a few dozen validators. The majority of these nodes are currently operated by the NEO team. However, as of Quarter 1, 2018, NEO will hold less than 2/3 and will continue to hold fewer as time progresses. Regardless, NEO will never be as decentralized as other pure PoS platforms.

I would however argue that Ethereum is also not as decentralized as you might think. While the PoW protocol is decentralized, you can count the number of core developer’s for Ethereum on one hand. In addition, while I trust Vitalik Buterin, he does have enormous power and influence over the direction of Ethereum.

Ethereum will transition to a PoS protocol in the future. They already have begun the process and the mining difficulty of confirming new blocks will increase exponentially until it is impossible to mine anymore and everyone must transition to the PoS protocol. This will happen but it is likely more than a year out.

TLDR: Ethereum uses a Proof of Work protocol and will evolve into Proof of Stake. NEO uses a Delegated Byzantine Fault Tolerance (dBFT) protocol which is a modification of the standard proof of stake protocol.

Transaction Speed:

Because NEO doesn’t run on PoW and has a more streamlined PoS protocol, NEO can process transactions far more quickly than Ethereum. Now when we compare these, there are both theoretical and practical speeds. Theoretical transaction speeds are the absolute maximum speed mathematically possible for the network. For NEO, this number is 10,000tps (transactions/second). Ethereum can do 30tps. In practicality, because of real world inconsistencies and difficulties, NEO can do 1,000tps in comparison to Ethereum’s 15tps. As protocols improve it is possible that both platforms will approach their theoretical speed.

This is an enormous difference and a massive advantage for NEO. NEO’s transaction speeds could conceivably accommodate the kind of smart economy they’re envisioning; Ethereum’s can not. Now in exchange for this speed, NEO is not as decentralized as Ethereum. In addition, it’s important to recognize that Vitalik and Ethereum are well aware of this limitation. Solutions such as Raiden and sharding (two fascinating technologies but far beyond the scope of this article) are on the roadmap for Ethereum and could drastically improve Ethereum’s transaction speed.

TLDR: Ethereum can transact at 15tps with a maximum of 30tps. NEO can transact at 1,000tps with a maximum of 10,000tps. Ethereum has plans and solutions to scale to close this gap.

Forking and scaling:

Ethereum forks to update its software, just like Bitcoin. I describe this here. Forks aren’t necessarily bad, but they certainly can be. Look at Ethereum’s DAO fork for an example of this. After millions were stolen from an Ethereum smart contract, Ethereum forked to refund the money to the original holders. Whether or not this decision was correct, it divided the community and Ethereum Classic was created alongside Ethereum.

Forks happen because there is no finality in the consensus mechanism of Ethereum. Multiple chains in the blockchain can be created at once — ultimately, both are valid chains and can continued to be mined on. Forks happen constantly but are usually resolved when the chain with the most computer power is chosen as legitimate. With Ethereum, it’s always recommended that when you place a transaction, you wait until a few blocks have been mined on top of yours before considering the transaction permanent.

NEO has finality. This is because the bookkeepers must reach a 66% consensus for the transaction to be placed into the blockchain. Here is an analogy to understand this. Imagine a first grade class. Timmy asks how much chocolate milk costs. Cynthia has no concept of price (she’s in first grade for God’s sake) and shouts $15! A few students walk over to her in agreement. Bobby’s a chocolate milk aficionado — he knows his milk. He says $1.25. Most of the room walks over to him. He has a majority. Now assuming Cynthia’s group realizes their flaw and joins Bobby’s group, then the group reaches consensus. But if Cynthia is having a particularly stubborn day, she could keep on with her decision — a fork. It might not be the right answer, but she still has a valid answer. This is how Ethereum works.

Only in Israel do they have chocolate milk in a bag…

NEO works like this. Imagine the same scenario. Timmy again asks how much chocolate milk costs. First Cynthia speaks up: “$15!” A few murmur in support, but it’s clearly not 66% of the class so her idea is discarded. Next Bobby says “$1.25.” 66% of the class support his claim and thus, his idea is final. With NEO, the bookkeepers each propose the correct state of the next block. When 66% of them support the proposition, the block is finalized.

The implications of this are huge. Finality is incredibly important for the type of economy NEO hopes to support. The financial industry and other complicated, fast moving markets (stock markets for example), can’t operate on a system without finality. They need to know that when their information is placed into the blockchain, it is there for good. They also need the assurance that their blockchain won’t suddenly become irrelevant because of a fork.

TLDR: Ethereum can fork; NEO can’t — this is important for adoption by our real world economy.

Decoupling of GAS and NEO

This may very well be NEO’s most ingenious characteristic. The native token of Ethereum is ether. The gas needed to run the Ethereum network (execute contracts, conduct transactions, etc.) is actually just small units of ether. There is no separation between ether and gas.

However, NEO decoupled itself from the token needed to run the network: GAS. The NEO token is like partial ownership of the NEO platform. NEO token holders are entitled to vote for bookkeepers. NEO’s use as a share in the company rather than a token is furthered by the fact that NEO is non-divisible. NEO is not meant to be transacted with — that’s why there is GAS.

GAS is used for all operations on the NEO network. Now when a company registers or changes assets on the NEO blockchain, they pay in GAS — this GAS is then distributed to all NEO holders. Anyone can claim this GAS by just holding their NEO in a personal wallet. Such as this one: NEON

Bookkeepers are entitled to charge a transaction fee (in GAS) for general transactions on the blockchain that only they (the bookkeepers) receive. However, by decoupling NEO and GAS, there is an incentive to keep transaction fees low; here’s why:

High transaction fees, which only benefit the bookkeepers, will prevent people from wanting to register their assets on the blockchain. The less assets registered, the less rewards NEO holders will get. Thus, NEO holders are incentivized to vote in bookkeepers who will keep transaction fees low.

“ Low transaction fees = more users = more assets registered = more GAS to NEO holders.” — Malcolm Lerider from his article:

Bookkeepers are primarily incentivized by their desire to secure the network. They use the network, benefit from it, and have money staked in NEO. Thus, it is advantageous for them to secure it.

It is unclear how rewards will be divided amongst ether holders when Ethereum becomes Proof of Stake. However, it appears that only large Ethereum holders will be able to stake and receive rewards.

The NEON Wallet with the “claim gas” button

The genius of the NEO token is that it allows users to passively acquire GAS in their wallet. No need to run the computer, keep the wallet open, or expend electricity. No need to “stake” your tokens — bookkeepers do this for you. You could even have your NEO in a paper wallet. GAS is collected when you physically push the “claim GAS” button. This also ensures that the NEO network doesn’t need to calculate the interest of NEO holders with every block, reducing traffic and simplifying the compound interest formulas. The delegated bookkeepers maintain the network; your investment gains interest. This would not be possible without two separate tokens.

Both NEO and GAS are capped at 100 million tokens.

TLDR: Ethereum has one token: ether. NEO has two: NEO and GAS. There are huge advantages to having two tokens when using a proof of stake protocol.

Smart Contract Language

The biggest difference between Ethereum and NEO smart contracts is the coding language options available. With Ethereum, contracts must be written in solidity — A coding language created specifically for Ethereum. NEO on the other hand supports a variety of different languages, including the most commonly known. NEO supports five programming languages with plans to support an additional five in the future.

There are certainly advantages to crafting a particular language for a particular platform. Ethereum developers designed solidity for Ethereum. However, far fewer people know solidity. By supporting the most common coding languages, NEO has an advantage in facilitating adoption. Most programmers today would have to learn solidity before working with Ethereum whereas with NEO, their knowledge is already applicable. It’s also possible that existing business platforms could be placed onto the NEO blockchain without much modification.

TLDR (seriously? It’s like two paragraphs): Ethereum has one coding language: Solidity. NEO supports many different coding languages.

Smart Contract Execution

Smart contracts use what are called virtual machines (VM). Essentially, in layman’s terms, virtual machines are machines that execute smart contracts and run inside the computers of miners or other validators. The VM is the environment that the smart contract runs in. Thus, if we want to know how efficient and effective smart contracts can be, we need to analyze the VM.

NEO’s VM optimizes smart contract code before executing the contract. What this means is that it takes the code and reorganizes it to make it more efficient. Imagine your mom gives you a grocery list. If it’s anything like my mom’s lists — and she will probably object to this — the items have no organization and I am constantly ping-ponging back and forth across the grocery store. But by organizing all the items into categories that I can then pick up together at the same part of the store (dairy, canned goods, cereals), my job becomes much quicker and easier. NEO does this; Ethereum does not. Now while this makes things much easier in the long run, in the initial phase it takes a bit longer to organize the list. NEO’s contract execution takes slightly longer than Ethereum’s, but is much more efficient in the long run.

Ethereum plans to roll out this mechanism, but there is no timeline for it. Ultimately, this allows NEO to execute and run complex smart contracts faster and more efficiently than Ethereum.

TLDR: NEO has a more efficient and faster way of executing smart contracts than Ethereum.

Additional Important Differences