NEO uses a variant of PBFT where nodes are elected by token holders. This approach to consensus has been criticized as too centralized, as it is usually employed in private chains such as hyperledger deployments. While the NEO council will continue to fund research and improvements to consensus, we see that as an opportunity to try a new, promising approach for decentralizing public blockchains. We believe that achieving decentralization by economic incentives for nodes has fundamental problems, and leads to network improvements being stalled and prevented if they would result in less financial gain for the nodes. Users and developers are forced into an environment where transaction fees are kept high by design, significantly limiting their ability to build profitable decentralized applications.

We propose that coopetition in a confederation of nodes is a better approach.

Coopetition is the logic behind industrial open source and several energy industry consortiums. It is a setup where businesses who would otherwise be competitors cooperate in a shared project. Through such cooperation, they can develop platforms and technologies that radically change how services are delivered, increasing the total market reach significantly.

In line with these ideas, NEO will begin its decentralization by allowing well known commercial projects and communities to run consensus nodes, forming an initial confederation of actors with a strong interest in guaranteeing the security and success of the network. While it might seem counterintuitive, this architecture will be less centralized than many other networks today. Through coopetition, we can ensure that all players are equal in the network by design. Their power won’t depend on how much money they have, or how cheap their electricity may be.

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.

Decentralization of TestNet will begin with the City of Zion and include several other parties that will be revealed in the future. 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. When all initial 7 consensus nodes are run by 7 different entities, then the NEO voting process will begin, where more nodes could be added to increase failure tolerance of the network.

At CoZ we believe that candidates for new nodes should be approved by current nodes before being voted in: the exact setup for this will depend on simulations and how the network behaves in the next months.

These nodes will be run by people of different nationalities using different service providers in different countries and under different operating systems. This means that no jurisdiction, service provider or software flaw can affect the failure limit of the network. Like everything that CoZ does, this will be documented as a contribution to the community: we will define standards and refine recommendations on how to setup secure nodes.

CoZ nodes are expected to be online on TestNet in the next week and if successful be deployed to MainNet by Christmas, our gift to NEO community.

Best regards,

— CoZ Council