Node Out: NEO Embarks On Journey To Network Decentralization
NEO is a public blockchain launched in 2014 under the original moniker Antshares. A long-held criticism of the blockchain has been that at its core, NEO is still a centralized platform. Of the network’s seven consensus nodes, the NEO Foundation owns five. But it aims to fully decentralize consensus nodes in 2019.
From the beginning, Antshares sought to become a “blockchain-based decentralized network protocol, capable of digitalizing real-world assets and rights.” In August of 2017 Antshares rebranded to NEO, with the change in identity came a shift in focus from digital assets to smart contracts.
The project has been dubbed by some as an “Ethereum Killer,” which could resonate from competitive factors such as reduced energy consumption needs of the distributed network’s consensus mechanism, delegated Byzantine Fault Tolerance (dBFT). Or, the transaction speeds, enterprise-level scalability, and finality of the dBFT consensus protocol, among others.
In October of 2018, NEO Global Development (NGD) released an updated document entitled “How to Become NEO Consensus Node,” which highlights the consensus node application process and subsequent voting process.
To best understand the consensus node model, it’s helpful to understand NEO’s consensus mechanism.
NEO’s consensus protocol: dBFT
The dBFT consensus mechanism aims to eliminate the threat of malicious nodes by ensuring “every node has a copy of a recognized version of the total ledger.” Binance has also opted to implement dBFT as the consensus mechanism into their upcoming Binance Chain.
The “Byzantine” portion of dBFT is a derivative from the Byzantine Generals’ Problem, where all parties involved must agree on a single strategy to avoid failure. With the dBFT protocol, a consensus is achieved once 2/3 of the “bookkeeper” nodes agree on a block proposed by a speaker.
The NEO dBFT consensus mechanism achieves finality with each block as it’s validated. Once the block is signed, it is 100% final and cannot be bifurcated nor rewritten. It is this finality that removes the need to wait for several confirmations when sending transactions.
Additionally, dBFT ensures there is one chain, and that forks cannot occur. Though, Vitalik Buterin argues 100% finality could be philosophically probabilistic.
With dBFT, it currently takes 15 – 20 seconds to generate a new block, where a portion of NeoGAS (GAS) generates with each new block. GAS is then distributed on a relational basis to the amount of NEO held in a corresponding wallet.
The mechanism is similar to some Proof of Stake (PoS) systems in that NEO coin holders need to vote on bookkeeping node.
How do NEO’s consensus nodes work?
NEO’s consensus nodes maintain the ledger by voting to approve blocks suggested by a “speaker” node. The mechanism enables “large-scale participation in consensus through proxy voting.”
With the dBFT consensus mechanism, consensus nodes will take turns assuming the role of the speaker or delegate. The speaker is responsible for transmitting block proposals to the network. Whereas as the delegate is tasked with voting on the proposed block and reaching consensus on transactions.
The NEO Foundation has also placed a maximum limit on the number of consensus nodes, which is limited to 1,024.
Decentralization in 2019 and the voting process
Firstly, candidate node hosts will need to meet minimum hardware requirements for core CPU power, RAM, bandwidth, and a hard drive.
In addition to hardware, applicants will also need to provide information for their budget to maintain the node, a maintenance schedule, and plans for long-term stability, among other requested details.
Once a candidate has submitted all pertinent information, the NEO Foundation will review the application and select potential nodes to the NEO TestNet. Candidates will face selection cycles of three months, which began November 30th, 2018, and will end on the same date in 2019.
Should a candidate fail to be elected to TestNet in an election cycle, they will have the following three-month period to make any adjustments required to become eligible.
Once the NEO Foundation has sufficiently decentralized the first seven consensus nodes and voted them onto the MainNet (expected to occur in 2019), then NEO coin holders will be able to elect future consensus nodes.
Moving forward, new consensus nodes will be voted onto MainNet in batches of three, to ensure the adequate ratio of nodes to achieve dBFT’s requirements for 2/3’s consensus. NEO’s consensus nodes would increase to 10, then 13, then 16, and so on.
Is this enough to assuage the investors who’ve clamored NEO has long been centralized? It is undoubtedly a step in the right direction, but true decentralization of the network will occur when token holders can vote their preferred consensus nodes to the network.
The author currently invests in NEO.