In my recent research i have been learning about Merkle trees in blockchain, and during my study I read that it is data encrypted design used for data identification and stored all transaction data mined on the bitcoin network safely in blockchain. I also read that it helps miners identify whether transaction have been tempered with and it remove any duplicate transaction and that it has no delay when sending data across the network. They also total and stores all set of transaction in a block and produce digital fingerprint to all these transactions and allow efficient validation from user to check if it include a transaction in a block.
It clear to me from my research that Merkle trees are crucial in blockchain, but I'd like some assistance in understanding what would happen if merkle trees didn't included in the blockchain and what difficulties arise while using them. I would appreciate any corrections you may have so I may improve my research, because learning the technical aspects of bitcoin is my top goal here.
I think many answers were given but I will like add this too,Although Merkle trees make it possible to improve the performance, security and scalability of the blockchain. Without them, blockchain would face the most serious problems leading to congestion, centralization and lower rates of adoption.
I think you need to explain further why lack of merkle trees leads to congestion, centralization and lower rates adaption. After all,
1. Merkle tree doesn't determine block size limit, which means total transaction which can fit in a block doesn't change.
2. Full nodes verify whole block, where lack of merkle tree wouldn't have such major impact on verification time.
3. Average user doesn't know or care about how Bitcoin works in details.
CMIIW.
Congestion: Without Merkle trees:
Increased storage requirements: Hence, the block sizes would also increase since every block would need to contain all transaction information and therefore would require more storage space.
Increased transaction verification time: Every transaction within that particular block has to be verified meaning over reliance on computational resources which will take a long time, this also might lead to the network getting congested.
Slower transaction processing speed: Due to the delay in computational time, there is a reduction in the speed and number of transactions that can be conducted in a block. Thus overall decreasing the transaction throughput.
Centralization: Without Merkle trees:
Growing computational requirements,Every stage of the transaction verification processes will be very complicated and thus it will favor only big mining companies having the necessary capabilities.
Greater barriers to entry,Smaller miners and nodes may find it difficult to successfully verify transactions which might result into centralization and lesser decentralization of the network.
Greater dependence on trust nodes, People may depend on centralized services or trusted nodes more than what is desirable to end up disrupting the decentralized scope of Blockchains.
Lower adoption rates Without Merkle trees:
Substandard user experience,Due to delays in transaction processing and transaction verifications, when users are engaging in these activities, they are left in so much frustration.
Very limited scalability,As a result, the throughput in number of transactions would make it impossible for blockchains to achieve widespread support
Thank you for making me elaborate it more.