In the earlier notes, we had seen a mechanism called time-stamping digital documents, a digital document sharing technique where multiple people can edit the document, and the entire traces will be captured and stored in the chain of blocks so that any malicious modification in the chain can be detected easily by the others. This scheme is best for a single document. However, an effective technique would be to use Merkle Tree where multiple documents hash will be stored in a binary tree-like structure and modification of whole documents can be detected by just comparing root hash. This concept is known as a hash tree and used in blockchain technology.
Every leaf node is labeled with the hash of a data block and every non-leaf node is labeled with the cryptographic hash of the labels of its child nodes. In the above diagram, we are securing four documents D1, D2, D3, & D4 together and the root hash value will be propagated and any change in the document effectively reflect the change in the root hash value. This way we can collectively secure the number of documents together by using the concept of Merkle Tree.
In 1992, Bayer, Harber, and Stornetta used Merkle Tree for timestamping and verifying a digital document. This technique improved the efficiency by combining timestamping of several documents into one block.
Other uses of Merkle Tree
- Peer to Peer Networks: Data blocks received in undamaged and unaltered; other peers do not lie about a block.
- Bitcoin implementation – Shared information is unaltered; no one lies about a transaction.
References:
- NPTEL lecture series on Blockchains Architecture, Design and Use Cases by Prof. Sandip Chakraborty, IIT Kharagpur.
259 total views, 1 views today