Understanding the applications of Merkle Tree(Data Structures and Algorithms)

Monodeep Mukherjee
4 min readJul 26, 2022
Photo by Todd Quackenbush on Unsplash
  1. Decentralized Digital Currency System using Merkle Hash Trees(arXiv)

Author : Shreekanth M Prabhu, Natarajan Subramanyam, Ms. Shreya P Krishnan, Ms. Brindavana Sachidananda

Abstract : In India, post the demonetization exercise in 2016, digital payments have become extremely popular. Among them, the volume of transactions using Paytm wallets and UPI (Unified Payment Interface) have grown manifold. The lockdowns due to COVID-19 Pandemic have furthered this trend. Side by side, crypto-currencies such as bitcoin are also gaining traction. Many countries are considering issuing a Digital Currency via their Central Banks. In this paper, we propose a novel Decentralized Digital Currency System (DDCS) that makes use of Merkle Hash-Trees as Authenticated Data Structures. DDCS uses a Ledger-less, distributed, peer-to-peer architecture. We name the proposed currency δ-Money. δ-Money is intended as a replacement for physical currency and has in-built security features that rival crypto-currencies. Transactions using δ-Money happen in a disintermediated manner but with post-facto reconciliation. In place of Central Bank-issued Digital Currency (CBDC), we envisage a scenario where multiple Payment Banks issue digital currencies that have stable valuations without being subject to either volatility or perennial devaluation.

2. A space- and time-efficient Implementation of the Merkle Tree Traversal Algorithm(arXiv)

Author : Markus Knecht, Willi Meier, Carlo U. Nicola

Abstract : We present an algorithm for the Merkle tree traversal problem which combines the efficient space-time trade-off from the fractal Merkle tree [3] and the space efficiency from the improved log space-time Merkle trees traversal [8]. We give an exhaustive analysis of the space and time efficiency of our algorithm in function of the parameters H (the height of the Merkle tree) and h (h = H L where L is the number of levels in the Merkle tree). We also analyze the space impact when a continuous deterministic pseudo-random number generator (PRNG) is used to generate the leaves. We further program a low storage-space and a low time-overhead version of the algorithm in Java and measure its performance with respect to the two different implementations cited above. Our implementation uses the least space when a continuous PRNG is used for the leaf calculation.

3.MTFS: Merkle-Tree-Based File System (arXiv)

Author : Jia Kan, Kyeong Soo Kim

Abstract : The blockchain technology has been changing our daily lives since Bitcoin — i.e., the first decentralized cryptocurrency — was invented and released as open-source software by an unidentified person or a group called Satoshi Nakamoto in 2009. Of many applications which can be implemented based on the blockchain, storage is an important one, a notable example of which is the InterPlanetary File System (IPFS). IPFS is a distributed web based on a peer-to-peer hypermedia protocol to make the web faster, safer, and more open and focuses on public accessible files. To provide a solution for private file storage in the blockchain way, in this paper we propose a Merkle-tree-based File System (MTFS). In MTFS, the blockchain is more than a trust machine; it is an abstract of a cluster system. Distributed random nodes form a tree network cluster without a central controller to provide a secure private storage service and faster message propagation. Advance proxy re-encryption algorithm is applied to guarantee secure file exchanges under permission. Merkle tree will make sure that the files are distributed among the service nodes in a balanced way. The proposed MTFS can be used not only for personal file storage and exchange but also for industry requiring mutual trust in file uploading and downloading in making contracts like insurances.

4. Concentrated Stopping Set Design for Coded Merkle Tree: Improving Security Against Data Availability Attacks in Blockchain Systems(arXiv)

Author : Debarnab Mitra, Lev Tauz, Lara Dolecek

Abstract : In certain blockchain systems, light nodes are clients that download only a small portion of the block. Light nodes are vulnerable to data availability (DA) attacks where a malicious node hides an invalid portion of the block from the light nodes. Recently, a technique based on erasure codes called Coded Merkle Tree (CMT) was proposed by Yu et al. that enables light nodes to detect a DA attack with high probability. The CMT is constructed using LDPC codes for fast decoding but can fail to detect a DA attack if a malicious node hides a small stopping set of the code. To combat this, Yu et al. used well-studied techniques to design random LDPC codes with high minimum stopping set size. Although effective, these codes are not necessarily optimal for this application. In this paper, we demonstrate a more specialized LDPC code design to improve the security against DA attacks. We achieve this goal by providing a deterministic LDPC code construction that focuses on concentrating stopping sets to a small group of variable nodes rather than only eliminating stopping sets. We design these codes by modifying the Progressive Edge Growth algorithm into a technique called the entropy-constrained PEG (EC-PEG) algorithm. This new method demonstrates a higher probability of detecting DA attacks and allows for good codes at short lengths

--

--

Monodeep Mukherjee

Universe Enthusiast. Writes about Computer Science, AI, Physics, Neuroscience and Technology,Front End and Backend Development