Introduction to NEO. Part 7. Byzantine Fault Tolerance on the NEO Network. NEO Tokens.

Because of the BFT algorithm, the Neo network will have more roles than just users and miners. On the network, there will be ordinary nodes, bookkeeping nodes and users. Just like on other blockchain networks, users will be able to use the network without having to download a full copy of the network blockchain.

Ordinary nodes will be discovering and compiling transactions on the network. However, they will not be validating any transactions.

Bookkeeping nodes will be doing the job of transaction validation through reaching consensus and will be receiving Neo Gas as a reward for their work. The network will have a number of requirements for bookkeeping nodes. The requirements would include a minimum stake, possibly of around 1,000 Neo Gas, and certain minimum computer memory requirements. Just like with other cryptocurrencies that don’t use proof-of-work algorithms, if a bookkeeping node spends the minimum stake, it will stop functioning as a bookkeeping node. Also, bookkeeping nodes are not going to be anonymous. They will need to get consensus authority permission from the network.


Advantages of the Neo Platform

Both Bitcoin and Ethereum networks have always underlined the importance of anonymity of their users. However, anonymity comes with a number of significant limitations, including integrity of transactions and use of anonymous networks by banks and government. Neo wants to address these limitations by adding digital identity functionality to the network. Because Neo is based in China, the introduction of digital identities to the network will help Neo gain a wider adoption in the country. Beyond China, the potential of the network lies in its integration with services and business that require identity confirmation as a part of their business processes.

Another advantage of Neo is support of common programming languages.

To create smart contracts on the Ethereum network, developers need to learn and use Solidity. Gavin Wood, Yoichi Hirai and several other Ethereum developers have created the language specifically for smart contracts and the Ethereum network. Being a new programming language, Solidity lacks a lot of features of advanced research languages. As a language for smart contracts, solidity is very permissive. In its current form, it doesn’t have a lot of constraints, which is one of the reasons why the hack of “The DAO” project happened in the first place.

Neo is different from Ethereum in that it is compatible with traditional programming languages such as C++, Java, VBA, JavaScript, Python and others. Neo developers can use Visual Studio and Eclipse to create apps on the Neo Platform.

In addition to this, Neo Virtual Machine has debugging functionality at the level of the virtual machine. This means that a coder can test his or her software by setting breakpoints in the code of a contract and then debug the contract at the virtual machine level.


Neo Tokens

The Neo platform has two native tokens. They are Neo (NEO) and Gas (GAS). Some platforms list Gas as Neo Gas. The Neo token can only have 100 million tokens. Holders of the Neo token get rights to manage the Neo platform, including rights to run bookkeeping nodes, change the parameters of the network and so on.

The network does not allow for the division of Neo, which is very different from Bitcoin and Ethereum network, were tokens can be divided into many parts. (With Bitcoin, the smallest part that the network would accept is Satoshi or one hundredth of a millionth, or 0.00000001 Bitcoin. The smallest part of Ether currency is Wei or 1*10^(-18) or 0.000000000000000001 ETH). Therefore, the smallest unit of Neo currency is 1 NEO. Neo holders also have rights to receive dividends in Gas. Out of the 100 million coins, the creators of the project have sold 50 million during the Initial Coin Offering of NEO. Neo Council manages the remaining 50 million tokens. The Council has pledged to not spend more than 15 million tokens per year. Out of the 50 million tokens, 10 million will go to Neo developers and members of the Neo Council. Developers that belong to the Neo ecosystem will also receive 10 million tokens. The Council will use 15 million tokens to invest in other blockchain initiatives by the Council. The condition is that the initiatives need to be used only for projects on the Neo network. The Council will hold the remaining 15 million tokens as a contingency.

The Neo Network generates GAS currency as it creates new blocks on the Neo blockchain. The initial supply of Gas was zero. The total limit of Gas tokens is the same as the limit of Neo tokens, 100 million. The founders of the Neo network plan that the network will generate all gas tokens in about 22 years because the Neo platform adds a block to its blockchain every 15-20 seconds, meaning that the blockchain generates about 2 million new blocks annually.

The first blocks of the Neo blockchain have been generating 8 units of Gas per block. The network will be reducing this number by 1 unit of Gas per block per year. This means that the network will generate all 100 million units of gas as it reaches 44 million blocks on the Neo blockchain. After that, there will be no generation of Gas.

This means that the release curve of Gas is the following: 16% of the Gas coin will enter the circulation in the first year of Neo, 36% in the years 2-4 and 30% in years 5-12. This means that the network will have 80% of gas in the first twelve years of its existence. The distribution of the tokens will occur in correspondence with the holding ratio of the Neo token.

The Neo network will be charging its users in Gas for running smart contracts on the network, running decentralized apps, and storing digital assets. Smart contract deployment will have a one-time fees of 500 Gas in addition to implementation fees that will depend on the complexity of a specific contract. If Gas costs to implement a contract are less than 10 Gas, the network will execute the contract for free.