Blockchain-based database in an IoT environment: challenges, opportunities, and analysis

Source of Publication

Cluster Computing


© 2020, Springer Science+Business Media, LLC, part of Springer Nature. As Bitcoin and other cryptocurrencies become widely popular recently, the underlying concept—Blockchain—gets unprecedented attentions. One popular usage of Blockchain is a distributed replicated database. In this paper, we present initial studies on the challenges and opportunities of using Blockchain as a database for Internet-of-Things (IoT) applications. For IoT applications, latency is an important factor, whereas for application developers, consistency is an important property which specifies how the system orders the operations over blocks (that are stored in the Blockchain). However, consistency property of Blockchain-based database is not well studied, especially in the case when network is not synchronized and the system is dynamic—both are typical scenario in an IoT environment. Intuitively, Blockchain is designed to maintain a single ground truth—one can view the Blockchain itself as the order of the blocks that all participants should observe and respect. In most Blockchain designs, the participants will eventually converge to the same chain of blocks. However, there is very few study on the challenges of using Blockchains as a database in an IoT environment. This paper focuses on the enabling technology behind Bitcoin, Bitcoin Backbone Protocol (BBP). We first survey Blockchain-based IoT applications, and identify why it is necessary to use it as a database for IoT applications. Then we explore several reasonable consistency models for BBP-based database, and then show that such a database does not satisfy many consistency models under certain typical IoT environments. Moreover, we use simulation to study how network quality and system dynamic affect consistency. Finally, we propose a simple mechanism to make the BBP-based database satisfy both read-my-write and eventual consistency.

Document Type


First Page


Last Page


Publication Date