Show / Hide Table of Contents
Last modified: 2024-05-20
sidebar_labelsidebar_position
'Neo Node Introduction'0

Neo Node Introduction

Nodes that store all of the blockchain are called โ€œfull-nodesโ€. They are connected to the blockchain through a P2P network. All the nodes in the blockchain network are equal, they act both as a client interface and as a server.

There are two full-node programs:

  • Neo-CLI, which provides a command-line interface and a set of RPC API for developers. It also helps other nodes achieve consensus with the network and is involved in generating new blocks.

  • Neo-GUI, which provides a graphical interface for ordinary users and developers, with most functions except consensus.

Neo-GUINeo-CLI
Releases Download Download
Source code GitHub GitHub

Neo-GUI and Neo-CLI comparison

Neo-GUINeo-CLI
General
Graphic interfaceโœ”
Command line interfaceโœ”
Query blocks/transactions/assetsโœ”
Wallet
Create walletโœ”โœ”
Open walletโœ”โœ”
Import/Export key pairโœ”โœ”
Import mnemonics into walletโœ”
Upgrade wallet fileโœ”
Show all key pairsโœ”โœ”
Show all addressesโœ”โœ”
Show all assetsโœ”โœ”
Transferโœ”โœ”
Claim GASโœ”โœ”
Create addressโœ”โœ”
Create multi-party signed addressโœ”โœ”
Generate multiple addressesโœ”
Change wallet passwordโœ”โœ”
Delete addressโœ”โœ”
Contract
Query contractโœ”
Deploy contractโœ”โœ”
Invoke contractโœ”โœ”
Advanced
Register to candidateโœ”โœ”
Votingโœ”โœ”
Custom transaction constructionโœ”
Signatureโœ”โœ”
Data conversionโœ”
JSON-RPCโœ”
Participate in blockchain consensusโœ”

NEO-CLI security policy

To enable an external program to access the node API, you need to open the firewall port.

To avoid the significant security risk, a whitelist or firewall must be used to block external server requests.

Neo-CLI does not provide the function to remotely switching on/off the wallet, and it does not verify the process when opening a wallet. Therefore, you should set your own security policies. The wallet must be kept open all the time to respond to the withdrawal requests of users. For security reasons, the wallets should be run in an independent server on which the firewall is configured properly, as shown below.

Main NetTest Net
JSON-RPC via HTTPS1033120331
JSON-RPC via HTTP1033220332
P2P via TCP1033320333
P2P via WebSocket1033420334