I Looked Into NEO's Code Base - What I Found Should Worry Any NEO Investor
The presence of these hardcoded values in the code base means that the entire NEO network relies on the existence of the 7 servers that the NEO team runs and if any of these servers were to shut down, the network shuts down.
Before I begin, I’d like to remind the reader about what makes cryptocurrencies fundamentally valuable. With so much euphoria and new blood in the market, it can often be incredibly easy to lose sight of the fundamentals.
When the 2008 financial crisis occurred, Western central banks began something known as Quantitative Easing (QE) to dig Western economies out of the recession. What was QE? It was fundamentally the mass printing and distribution of fiat money. This extra money was quickly channeled into investment assets such as stocks and real estate. It was the only way to prevent inflation from gobbling up your net worth. The heavy influx of QE money explains how the equity markets rebounded so quickly after the crash and why the equity markets today are arguably highly overvalued.
Although QE brought us out of the recession, it also highlighted the fundamental problem of treating fiat money as a store of value. Fiat money was controlled by central banks and these banks could reduce its value on a whim. Imagine putting 40 hours a week into a job, earning x dollars, placing the money into a savings account, and having it devalued when the banks decides to print more money. How shitty of a feeling is that?
Enter Bitcoin
In 2009, barely a year after the market crash, Satoshi released the whitepaper, Bitcoin: A Peer-to-Peer Electronic Cash System. This paper introduced the world to one of the most revolutionary economic paradigms since the advent of money. Bitcoin was a way to store and transfer value over the Internet quickly and securely without needing a middleman and without having to trust a central authority. The supply was fixed and the entire ledger was transparent. Bitcoin could not be controlled or taken away by any one entity. It was controlled by democratic consensus and as long as the Internet existed, Bitcoin existed.
This was crazy! Bitcoin was everything fiat money was not. For once, the people had complete control of the monetary system in which they were a part of.
Bitcoin achieved all this through a powerful distributed consensus algorithm that upholds majority rule without making any assumptions on who the participants in the system are. This algorithm ensures decentralized control since it allows anyone to be a miner and for miners to enter and leave the system as they please. Majority rule ensures trustless security since participants don’t need to trust any one specific miner. They only need to trust that the majority of miners will do the right thing.
Bitcoin’s transparency, decentralized control, and trustless security is what makes it so attractive and powerful.
Et tu, NEO?
Bitcoin set the standards with which all future cryptocurrencies were evaluated on. After all, if the cryptocurrency relied on a central authority, it was no better than fiat money lying in a database run by a bank.
This was why I was so disappointed to find out that NEO was so incredibly centralized. Investing in NEO was akin to investing in a number in Da Hongfei’s personal database. I tried to get the word out by writing a couple blog posts but NEO’s investors insisted that I was just “spreading FUD” and that NEO was worth as much as or even more than Ethereum!
NEO currently has 7 validation nodes across the entire network. All of them are controlled by the team.
To this, the NEO investor would rebute with, “so what? they promised to decentralize by Christmas”. The only problem is, the “decentralization” being referred to here only involves giving the City of Zion (CoZ) a few of these nodes. CoZ is an entity that is closely tied to NEO’s team.
Decentralization is a core value proposition of cryptocurrencies. In a decentralized network, there should never be a single entity that controls the network. If NEO’s team is the only entity that can run validation nodes, they have full control and NEO is no longer a cryptocurrency. It is simply an unregulated and unsecured bank operated by a few Shanghai businessmen.
NEO is not ready for any kind of decentralization
NEO’s consensus algorithm is called the Delegated Byzantine Fault Tolerance algorithm, or dBFT. dBFT requires the number of validation nodes in the system to be fixed and known globally. In addition, every validation node needs to know the location of every other validation node. If more than one third of the nodes go offline, consensus cannot occur and the blockchain will effectively shut down. NEO currently has 7 validation nodes, which means that no more than 3 of the 7 nodes can go offline at any time.
NEO’s team argues that a decentralized model can still be built around this system by allowing the community to vote for users to run validation nodes. However, NEO’s code base is far from being ready to run this model. I poked around and discovered that NEO’s developers hardcoded the addresses of each validation node into the code base. Additionally, the official wallet also relied on these hard coded values. Each of these addresses points to a server controlled by NEO.
The presence of these hardcoded values means that NEO’s entire network relies on the existence of 7 servers fully controlled by NEO’s team. NEO’s blockchain is essentially a proprietary database that the team can modify or shut down at anytime.
This is insane.
Remember the October incident when NEO’s blockchain shut down for several hours? Now I know exactly why. One of more of the consensus nodes run by the NEO team broke down and consensus could not be achieved. The NEO team had too manually go in and reboot that machine to keep the lights running in this fake cryptocurrency pyramid scheme they’ve set up.
NEO is not a cryptocurrency, NEO is a centralized database with no capability of decentralizing any time soon. NEO is also a 3 year old project with a $4 billion marketcap. What the fuck is going on?
This also explains why the NEO team is so reluctant to open up the validation servers to the public. They can’t! They’re only able to give a few to the CoZ and make sure that the CoZ never, ever shut down any of the validation nodes they’re running.
In addition, NEO giving the CoZ a few validation nodes to run is not decentralization. it’s just a formal agreement between two entities and is analogous to Netflix running their servers on Amazon! Decentralization by Christmas? It’s just a show.
The CoZ practically confirms my findings in their latest blog post on decentralization. In the blog post, they state:
All nominees for consensus nodes will go through a rigorous identification process before being voted in on MainNet. This process includes providing identification that can hold the owners of the consensus node host legally liable. Each node requires exactly two managing legal entities (individuals or institutions) that will be responsible for their maintenance and patching. There will also be a requirement to provide contact availability to ensure that time-critical events can be handled if they arise.
Parties that demonstrate they can maintain consensus nodes with outstanding uptime and performance will be voted in as initial MainNet consensus nodes after identification process is complete.
To be honest, it was already a huge red sign when an individual can be held “legally liable” if they were to run a consensus node. Now it makes complete sense. If the individual can’t keep the node running, NEO’s blockchain stops and it’ll severely hurt the project.
People without technical backgrounds continue to promote NEO
You will notice that many YouTubers and Reddit users continue to shill NEO. They don’t understand the technology behind it and continue to pump out poorly researched videos and comments proclaiming that NEO is a top-of-the-line cryptocurrency.
The reality is, NEO is far from it. I’ve had my suspicions for a long time about NEO’s problems but never truely understood the nuances. Luckily I have a software engineering background and was able to scrounge up some time to look into NEO’s code base to understand how the whole thing works. What I found should worry any NEO investor.
NEO is a 3 year old project. The degree of centralization that permeates the project is utterly unacceptable. Its code base is nowhere close to being ready for decentralization. It is not a cryptocurrency and is far from being worth a $4 billion market cap.
Checkout my other blog posts on this subject: