# An Internet of Things Access Control Scheme Based on Permissioned Blockchain and Edge Computing
## 2 Related Work  
Access control is a protection manipulation mechanism to ensure that licensed customers can acquire the required assets whilst denying unauthorized customers access to any resources. Researchers have proposed many extraordinary access control models.  
Reference [13] uses the blockchain to solve the problem of cross-organization access control in RBAC, and realizes the cross-organization authentication of user roles. The model proposed in reference [14] automatically revokes and reconfigures user roles by observing user access behavior. The model is used to provide \"role-assignment-service\" in the cloud to optimize the cost of built-in roles. RBAC uses a central server to process the access requests of all users, and usually assigns the same permissions to a class of roles, which reduces the complexity of permission granting and the overhead of management, but it is lacking a dynamic. There will also be the role explosion, which is not suitable for the implementation of security policies in complex and fuzzy IoT scenarios. At the same time, a large number of information, such as users and roles as well as roles and permissions are calculated and saved, which brings greater challenges to the limited computing and storage resources of Internet of Things devices.  
ABAC is more suitable for complex scenarios than RBAC, can provide more fine-grained access control, and has high flexibility. In reference [15], the policy language of attribute rules and the method of solving the policy of conflict and redundancy are proposed, which simplifies the complexity of traditional ABAC. In reference [16], the attribute-based access control mechanism is used to verify the user's identity, focusing on how to achieve data security access for low-power IoT devices. Like RBAC, ABAC has a trusted central server.  
CapBAC has achieved lightweight, distributed, dynamic, and scalable properties in the IoT environment [17], which is considered as a promising solution for the IoT system. A decentralized IoT access control method based on the blockchain has been proposed [18]. Each participant (i.e., person and IoT device) in the IoT system is identified by at least one unique did, and the access control of a specific IoT device service is determined by the ownership/capability token and credential.  
Although CapBAC's dispensed diagram avoids the single factor of failure brought on by using the use of centralized servers when CapBAC implements dispensed gain admission to manipulating selections on light-weight gadgets in the IoT, lightweightlightweight units can now not guarantee their personal security, and it is feasible for attackers to threaten the protection of get admission to manipulate through susceptible safety IoT devices. Therefore, disbursed CapBAC can no longer clear up the trouble of IoT access control to manipulate it in an untrusted environment.  
In this paper, we combine ABAC model with the blockchain; take advantage of the characteristics of the blockchain, such as decentralization, tamper proof and traceability; treat the blockchain as a trusted entity; and write the access control policy as a smart contract deployed on the blockchain. This can not only solve the problem of untrusted access control in the IoT, but can also achieve fine-grained and dynamic access control. At the same time, the introduction of edge computing, a new computing mode, can reduce the delay as well as improve the response time and the quality of service.