What is block in blockchain
Blocks are records that together form a blockchain. In the world of cryptocurrencies, blocks are like the pages of a book, and the whole book as a whole is blockchain. A block is a file that stores immutable data related to a network.
They store all records of valid (confirmed or valid) cryptocurrency transactions. They are hashed and encoded into a hash tree or Merkle tree. The first block on the blockchain is the Genesis block. He is the only one who has no data in the previous block, because there is nothing in front of him. All other blocks have a cryptographic hash, which is obtained from the previous block.
Each block replicates all data from previous blocks. Instead of having a central register with data from the entire system, each block in the entire chain has all the data. In other words, blockchains use a distributed register system, not a centralized one.
What is a Block Candidate
A candidate block is a block that tries to get a mining node (miner) in order to receive a reward. Thus, a candidate block can be described as a temporary block that will be either checked and confirmed, or discarded by the network. Miners compete with each other to check the next block and add it to the chain, but first they must create a candidate block to participate in the competition.
Candidate blocks are formed by miners by collecting and organizing several unconfirmed operations from the memory pool. Transactions are then hashed to form the Merkle tree structure, which will eventually create the Merkle root (root or master hash). This is one hash that represents all the previous hashes of this tree and, therefore, all the transactions that were included in this particular block.
The master hash, together with the hash of the previous block and a random number that can be used only once (nonce), is placed in the block header. Then, the block header is hashed by the miner, generating output based on these components (root hash, previous block hash and one-time number), as well as several other elements.
The result is a block hash and will serve as a unique identifier for the newly generated block (candidate block). To be considered valid, the output (block hash) must begin with a certain number of zeros (less than the target value defined by the protocol).
This means that the mining process is based on multiple attempts (trial and error) because the data mining nodes have to perform many hash functions with different nonce values until a valid hash block is finally created. The resulting block hash proves that the miner did his job (hence the protocol of the consensus of proof of work).
After the miner finds a valid hash block, its candidate block will be broadcast to the rest of the network nodes in order to authenticate. If all is well, the candidate block will be recorded on the blockchain. At this point, each testing node updates its copy of the blockchain data to reflect the last mined block, and the miner receives his reward.
What are hosts
A node (node) is a network mechanism with a chain of blocks, which, in fact, is the basis for the functioning of the blockchain. Nodes belong to a widespread network and perform a variety of tasks. Node can be any working electronic device that has Internet access and, accordingly, its own static personal IP.
The function of the node is to support the network, that is, to store a copy of the block information. Each digital currency has personal nodes that interact only with data from its blocks. Nodes are fragments of a larger data architecture called blockchain.
Since the holders of the nodes give access to their computing resources for storing and revising operations, they receive a reward for this (most often in coins of the blockchain’s mother currency). This is called mining.
Processing these transactions requires significant computational performance – this means that a typical average personal computer is not capable of this. Therefore, those who specialize in mining are forced to spend very impressive amounts on technical support, for example, on the central processing unit (CPU) or on the graphics processing unit (GPU) to reach the required level.
The performance required for the operation of multiple nodes also requires high energy costs. Therefore, the largest and most profitable mines are located in those countries where the cost of electricity is lower, for example, China, the United Arab Emirates, Saudi Arabia, etc. A node can act as a final or relay station, which communicates with other nodes. All nodes have the same voting right, but not all of them perform the same work. Conventionally, they can be divided into full and partial. A full node contains absolutely all the information from the blockchain and conducts an audit of all new operations.
A partial node stores pieces of information and may not participate in the processing of new transactions. But all nodes within the same blockchain operate on the same consensus protocol in order to maintain compatibility among themselves. But all nodes in one network.
Why blocks make cryptocurrencies safe
Blockchain is extremely difficult to crack or manipulate data in it. Carrying out such a large-scale cyber attack is practically impossible. Physical (fiat) money, such as dollars, euros, pounds, and so on, are legal tender, and therefore are under the control of the central government – for example, the National Bank.
That is, any physical currency is controlled by a single center, which stores all the information. Digital currencies do not have such a central bank or ledger – each block contains all the system data.
Therefore, for a successful cyber attack, it is necessary to crack each of the blocks separately, but at the same time, which is extremely difficult. Creating a fake cryptocurrency is much more difficult than physical. Therefore, you can be 100% sure that buying bitcoins – we get them, and not high-quality fake.
Given all the above information, you can draw a simple chain. There is a node (computer) that processes all existing and new information (candidate block), and after solving the cryptographic problem (finding the correct hash), sends it to other nodes. If other nodes recognize (using the consensus protocol) the hash of the candidate block (the result of solving the problem) as valid – a block is created – a fixed fixed information page of the account book.