Decentralized Access Control for IoT Based on Blockchain and Smart Contract
Ronghua Xu, Yu Chen, Erik Blasch · 2020
The Internet of Things (IoT) technology has been widely recognized as an essential part of Smart Cities. However, the highly connected smart IoT devices with heterogeneous platforms also bring new challenges in terms of privacy and security. Access control (AC) is among the top security concerns, which is critical in resource sharing and information protection over IoT devices. Traditional AC approaches, like Access Control Lists (ACL), Role-based Access Control (RBAC), and Attribute-based Access Control (ABAC), are not able to provide a scalable, manageable, and efficient mechanism to meet the requirements of IoT systems. Another weakness in today's AC is the centralized authorization server, which can cause a performance bottleneck or be the single point of failure. Thanks to cryptographic and consensus mechanisms, the recently raised smart contract technology on top of a blockchain protocol provides a promising solution to implement more flexible and fine-grained AC models. Given research of arts on security mechanisms for IoT system, this chapter discusses key issues of AC in IoT systems, which cover both AC models and architecture. As a case study, a BLockchain-ENabled, Decentralized, Federated, Capability-based Access Control (BlendCAC) scheme is introduced to enable effective protection for devices, services, and information in large-scale IoT systems. The mechanism for delegate authorization and revocation is explored. A robust identity-based capability token management strategy takes advantage of the smart contract for registration, propagation, and revocation of the access authorization. A proof-of-concept prototype has been implemented on both resources-constrained devices (i.e. Raspberry PI nodes) and more powerful computing devices (i.e. laptops) and tested on a local private blockchain network. The experimental results demonstrate the feasibility of the BlendCAC to offer a decentralized, scalable, lightweight, and fine-grained AC solution for IoT systems.