Summary: | Currently, Internet of Things (IoT) and blockchain technologies are experiencing exponential growth in academia and industry. Generally, IoT is a centralized system whose security and performance mainly rely on centralized servers. Therefore, users have to trust the centralized servers; in addition, it is difficult to coordinate external computing resources to improve the performance of IoT. Fortunately, the blockchain may provide this decentralization, high credibility and high security. Consequently, blockchain-based IoT may become a reasonable choice for the design of a decentralized IoT system. In this paper, we propose a novel blockchain-based threshold IoT service system: BeeKeeper. In the BeeKeeper system, servers can process a user's data by performing homomorphic computations on the data without learning anything from them. Furthermore, any node can become a leader's server if the node and the leader desire so. In this way, BeeKeeper's performance can continually increase by attracting external computing resources to join in it. Moreover, malicious nodes can be scrutinized. In addition, BeeKeeper is fault tolerant since a user's BeeKeeper protocol may work smoothly as long as a threshold number of its servers are active and honest. Finally, we deploy BeeKeeper on the Ethereum blockchain and give the corresponding performance evaluation. In our experiments, servers can generate their response with about 107 ms. Moreover, the performance of BeeKeeper mainly depends on the blockchain platform. For instance, the response time is about 22.5 s since the block interval of Ethereum blockchain is about 15 s. In fact, if we use some other blockchain with short block interval, the response time may be obviously short.
|