Tree-Chain: A Lightweight Consensus Algorithm for IoT-based Blockchains
Ali Dorri, Raja Jurdak
Abstract
In this paper, we propose Tree-chain a fast scalable consensus algorithm that bases the validator selection on an existing function in relatively all existing blockchains: hash function output. Tree-chain is a leader selection consensus algorithm that moves away from a linear blockchain structure, to a tree-structured blockchain where each branch is managed by a particular validator. Each validator is periodically allocated to a random consensus code range which matches specific patterns of the most significant bits of the hash function output. Each validator is then responsible for transactions whose hash falls within the consensus code allocated to the validator. Because transactions are allocated deterministically to validators based on random consensus code allocations, Tree-chain eliminates the significant inefficiency of conventional blockchains for validator selection, such as proof-of work. Tree-chain does not require the validators to follow any additional algorithms before committing blocks which in turn significantly increases its throughput. Implementation results show that Tree-chain can run on small tiny IoT devices with limited resources which in turn highlights its resource efficiency.