What is a Node?
A node is a device on a blockchain network, that is in essence the foundation of the technology, allowing it to function and survive. Nodes are distributed across a widespread network and carry out a variety of tasks. In this segment of the Academy we will examine the qualities of a node on a blockchain network.
A node can be any active electronic device, including a computer, phone or even a printer, as long as it is connected to the internet and as such has an IP address. The role of a node is to support the network by maintaining a copy of a blockchain and, in some cases, to process transactions. Nodes are often arranged in the structure of trees, known as binary trees. Each cryptocurrency has its own nodes, maintaining the transaction records of that particular token.
Nodes are the individual parts of the larger data structure that is a blockchain. As the owners of nodes willingly contribute their computing resources to store and validate transactions they have the chance to collect the transaction fees and earn a reward in the underlying cryptocurrency for doing so. This is known as mining or forging.
Processing these transactions can require large amounts of computing and processing power, meaning that the average computer’s capabilities are inadequate. Generally, professional miners tend to invest in extremely powerful computing devices known as CPUs (central processing units) or GPUs (graphics processing units) in order to keep up with the demand for processing power that is required for them to validate transactions and as such earn the rewards that comes with doing so.
A node can either be a communication endpoint or a point of communication redistribution, linking to other nodes. Every node on the network is considered equal, however certain nodes have different roles in the manner in which they support the network. For example, not all nodes will store a full copy of a blockchain or validate transactions.
A full node downloads a complete copy of a blockchain and checks any new transactions coming in based on the consensus protocol utilized by that particular cryptocurrency or utility token. All nodes use the same consensus protocol to remain compatible with each other. It is the nodes on the network that confirm and validate transactions, putting them into blocks. Nodes always come to their own conclusion on whether a transaction is valid and should be added to a block with other transactions, irrespective of how other nodes act.
Types of Nodes:
Root node – The highest node in a binary tree.
Parent node – A node that has other nodes extending from it.
Child node – A node that extends from a different node.
Leaf node – A node with no children.
Sibling nodes – Nodes connected to the same parent node.
Tree – A data structure of nodes starting with a root node.
Forest – A set of trees of nodes.
Degree – The number of children of the node.
Edge – The connection between nodes.
Running a Lisk Blockchain Node
The requirements to own a node vary between cryptocurrencies and their consensus protocols. For example, Lisk uses a Delegated Proof of Stake consensus protocol which requires stakeholder approval. Therefore, in order to become an owner of a node that is forging, a user must first become a delegate which requires a certain number of LSK tokens supporting them. In the Lisk ecosystem this is done by gaining votes, each LSK token being worth a vote.
In practice, this means either buying Lisk tokens or receiving votes from other users of the network who are holding tokens. Regardless, the delegate must have enough LSK supporting them to break into the top 101 and become a node that can validate transactions and earning Lisk token as a reward.
What is Hashing?
The reliability and integrity of blockchain is rooted in there being no chance of any fraudulent data or transactions, such as a double spend, being accepted or recorded. A cornerstone of the technology as a whole and the key components in maintaining this reliability is hashing.