In the context of Bitcoin, the blockchain is a shared public ledger on which the entire Bitcoin network relies. It has a linked list data structure, with each block containing a hash of the previous block. Each block is formed by a proof-of-work algorithms, through which consensus of this distributed system could be obtained via the longest possible chain. The simple explanation is a ‘bitcoin block details west’ of blocks.
A block is an aggregated set of data. Data are collected and processed to fit in a block through a process called mining. In this way, all the data could be connected via a linked list structure. Source: Bitcoin: A Peer-to-Peer Electronic Cash System, S. In bitcoin blockchain, the block contains a header and relevant transaction data. A merkle tree of transactions is created and the hash of the root is included in the header. A merkle tree is a full binary tree of a hash values.
At the bottom level of the tree, each transaction has a node containing its hash value. After that, the tree is constructed in a way such that the parent node has a value of the hash of the data contained in its children concatenating together. The merkle tree data structure allows fast validation by constructing a merkle tree path from the bottom level of the tree up to the root node. Since each bitcoin transaction output can be spent once only, as long as the output is spent, it could be erased out of the tree structure using some pruning algorithms. In this way, disk usage could be reduced while the validation functions preserve. A visual illustration of a merkle tree. Each block contains a hash of its previous block.