Improved Attribute-Based Encryption Using Chaos Synchronization and Its Application to MQTT Security  
[PERSON]  
1 Control Engineering Group, Department of Engineering Science, National Cheng Kung University,  
Tainan 701, Taiwan; [EMAIL_ADDRESS] (T.-L.L. ); [EMAIL_ADDRESS] (H.-R.L. ); [EMAIL_ADDRESS] (P.-Y.W.) [PERSON]  
1 Control Engineering Group, Department of Engineering Science, National Cheng Kung University,  
Tainan 701, Taiwan; [EMAIL_ADDRESS] (T.-L.L. ); [EMAIL_ADDRESS] (H.-R.L. ); [EMAIL_ADDRESS] (P.-Y.W.) [PERSON]  
1 Control Engineering Group, Department of Engineering Science, National Cheng Kung University,  
Tainan 701, Taiwan; [EMAIL_ADDRESS] (T.-L.L. ); [EMAIL_ADDRESS] (H.-R.L. ); [EMAIL_ADDRESS] (P.-Y.W.) [PERSON]  
2 Department of Electronic Engineering, National Chin-Yi University of Technology, Taichung 41107, Taiwan  
Correspondence: [EMAIL_ADDRESS]; Tel. : +886-4-23924505 (ext. 7379)217 October 201921 October 20192  
devices, they cannot use too powerful or complicated cryptographic algorithms to ensure the security of data. To solve this problem, we have studied and discussed the security mechanism of MQTT protocol commonly used in IoT [4; 5; 6; 7]. To solve the data security of resource-constrained devices, cryptography is generally used to protect the data, so that clearly visible information can be transformed into seemingly messy ciphertext to protect them from malicious people. It is usually not a complex process to encrypt data when using the MQTT protocol. In this way, the data will be vulnerable to eavesdroppers. To encrypt the data, the available encryption schemes on the Internet fall into two categories: symmetric encryption and asymmetric encryption. Both of these have to repeatedly encrypt the data by the key and decrypt the data by the same or another key data-by-data. The traditional encryption technique is not suitable for publish/subscribe communication protocol such as MQTT. To solve this problem, [PERSON] and [PERSON] proposed a new cryptographic technique called attribute-based encryption (ABE) [8]. A data owner (or publisher) can specify access to the data as a Boolean formula related to a set of attributes and the data will be encrypted in relation to this. Then, the data user (or subscriber) can only decrypt the ciphertext if they possess the attributes satisfying the Boolean formula ascribed to the ciphertext. ABE has two types: Ciphertext-Policy ABE (CP-ABE) [9] and Key-Policy ABE (KP-ABE) [10]. However, the disadvantage of these is their complex computation, which is not suitable for resource-constrained devices. Therefore, in this direction, some approaches have been proposed [6; 11; 12]. The common way to reduce computation is to use an elliptic curve in a bilinear map [6; 11]. A pre-computation method was proposed to store a set of pairs and to simply put and exchange the memory for the encryption time [12]. Since we aimed to design an encryption algorithm suitable for resource-constrained devices, the computing ability and memory requirements had to be reduced enough. A widespread consensus is that the computation overhead of bilinear pairing is excessive in the practical application of ABE, especially for devices with limited computational resources. Therefore, the authors [13] proposed a scheme called Pairing-Free CP-ABE (PF-CP-ABE) [13], replacing bilinear pairing with simple scalar multiplication on elliptic curves, in order to reduce the overall computational overhead. It substantially works like CP-ABE, and the elliptic curve is difficult to compute, so it is still safe enough. However, since data keeps transmitting between resource-constrained devices, and the authority (MQTT broker) needs to identify users and send certification results to them each time, the schemes mentioned above cannot provide effective data communication. In the last two decades, chaos systems have been widely applied in secure communication.