14
Received May 10, 2018, accepted June 3, 2018, date of publication June 11, 2018, date of current version June 26, 2018. Digital Object Identifier 10.1109/ACCESS.2018.2846037 Efficiently Revocable and Searchable Attribute-Based Encryption Scheme for Mobile Cloud Storage SHANGPING WANG 1 , DUO ZHANG 2 , YALING ZHANG 3 , AND LIHUA LIU 2 1 School of Science, Xi’an University of Technology, Xi’an 710055, China 2 School of Automation and Information Engineering, Xi’an University of Technology, Xi’an 710055, China 3 School of Computer Science and Engineering, Xi’an University of Technology, Xi’an 710055, China Corresponding author: Duo Zhang ([email protected]) This work was supported in part by the National Natural Science Foundation of China under Grant 61572019, in part by the Key Project of the Natural Science Foundation of Shaanxi Province of China under Grant 2016JZ001, and in part by the Key Laboratory Research Project of the Education Bureau of Shaanxi Province of China under Grant 16JS078. ABSTRACT Attribute-based encryption (ABE) is suitable for mobile cloud storage to protect data confi- dentiality and realize fine-grained data access control. It is essential for ABE schemes to achieve attribute revocation as users’ attributes may be changed frequently. Keyword search over encrypted data also needs to be solved in the mobile cloud storage. In addition, computational efficiency is a consideration for the resource-constrained mobile device. Focusing on the above-mentioned problems, an efficiently revocable and searchable ABE (RSABE) scheme for the mobile cloud storage is proposed. In our scheme, the function of attribute revocation is efficiently achieved by delegating the update of secret key and ciphertext to the powerful cloud server. Keyword search is also supported, in which data owners and users can generate the keywords index and search trapdoor, respectively, without relying on always online trusted authority. Furthermore, an outsourced decryption technology is used to reduce the computational load of decryption on user side. Our RSABE scheme is proven to be semantically secure against selective ciphertext policy and chosen plaintext attack, and to be secure against chosen keyword attack in the random oracle model. Finally, performance evaluation demonstrates that our scheme is highly efficient. INDEX TERMS Attribute-based encryption, attributes revocation, fine-grained access control, keywords search, mobile cloud storage. I. INTRODUCTION With the rapid development of mobile networks [1], portable mobile devices are widely favored by users, followed by the rapid growth of per capita holdings of mobile devices. This makes mobile terminals gradually become an important application platform. The contradiction between the growing user demand for data storage and data processing and rela- tively limited hardware resources of mobile terminals makes the mobile cloud storage services become a hot research area. In such a mobile cloud environment, mobile users can outsource their data to the cloud sever through the mobile networks so as to store or share it with others. However, one of the main concerns is to preserve the confidentiality of the outsourced data. This is owing to the fact that the data stored in cloud is far from owners’ physical control and it would be very vulnerable to unauthorized access by malicious users and even the semi-trusted cloud server itself. An effective method to address the issue is to encrypt the sensitive data before outsourcing. The integrity of data shared is also a security consideration, and it usually can be solved by remote data possession checking protocols [2]. We mainly focus on the confidentiality of the data. To meet the secure requirements on outsourced data, Sahai and Waters [3] firstly presented a new method for data encryption: attribute-based encryption (ABE), which is envisioned to be a promising cryptographic primitive to protect the data security and realize fine-grained access con- trol in one-to-many communications. ABE features such a mechanism that enables the operations like key issue, data encryption and decryption to be performed on the basis of attributes. In an ABE scheme, a user’s keys is associated with a set of attributes, and every data owner can specify an access 30444 2169-3536 2018 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. VOLUME 6, 2018

Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

  • Upload
    others

  • View
    20

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

Received May 10, 2018, accepted June 3, 2018, date of publication June 11, 2018, date of current version June 26, 2018.

Digital Object Identifier 10.1109/ACCESS.2018.2846037

Efficiently Revocable and SearchableAttribute-Based Encryption Schemefor Mobile Cloud StorageSHANGPING WANG1, DUO ZHANG 2, YALING ZHANG 3, AND LIHUA LIU21School of Science, Xi’an University of Technology, Xi’an 710055, China2School of Automation and Information Engineering, Xi’an University of Technology, Xi’an 710055, China3School of Computer Science and Engineering, Xi’an University of Technology, Xi’an 710055, China

Corresponding author: Duo Zhang ([email protected])

This work was supported in part by the National Natural Science Foundation of China under Grant 61572019, in part by the Key Project ofthe Natural Science Foundation of Shaanxi Province of China under Grant 2016JZ001, and in part by the Key Laboratory Research Projectof the Education Bureau of Shaanxi Province of China under Grant 16JS078.

ABSTRACT Attribute-based encryption (ABE) is suitable for mobile cloud storage to protect data confi-dentiality and realize fine-grained data access control. It is essential for ABE schemes to achieve attributerevocation as users’ attributes may be changed frequently. Keyword search over encrypted data also needsto be solved in the mobile cloud storage. In addition, computational efficiency is a consideration for theresource-constrained mobile device. Focusing on the above-mentioned problems, an efficiently revocableand searchable ABE (RSABE) scheme for the mobile cloud storage is proposed. In our scheme, the functionof attribute revocation is efficiently achieved by delegating the update of secret key and ciphertext to thepowerful cloud server. Keyword search is also supported, in which data owners and users can generatethe keywords index and search trapdoor, respectively, without relying on always online trusted authority.Furthermore, an outsourced decryption technology is used to reduce the computational load of decryptionon user side. Our RSABE scheme is proven to be semantically secure against selective ciphertext policy andchosen plaintext attack, and to be secure against chosen keyword attack in the random oracle model. Finally,performance evaluation demonstrates that our scheme is highly efficient.

INDEX TERMS Attribute-based encryption, attributes revocation, fine-grained access control, keywordssearch, mobile cloud storage.

I. INTRODUCTIONWith the rapid development of mobile networks [1], portablemobile devices are widely favored by users, followed bythe rapid growth of per capita holdings of mobile devices.This makes mobile terminals gradually become an importantapplication platform. The contradiction between the growinguser demand for data storage and data processing and rela-tively limited hardware resources of mobile terminals makesthe mobile cloud storage services become a hot research area.

In such a mobile cloud environment, mobile users canoutsource their data to the cloud sever through the mobilenetworks so as to store or share it with others. However, oneof the main concerns is to preserve the confidentiality of theoutsourced data. This is owing to the fact that the data storedin cloud is far from owners’ physical control and it wouldbe very vulnerable to unauthorized access by malicious users

and even the semi-trusted cloud server itself. An effectivemethod to address the issue is to encrypt the sensitive databefore outsourcing. The integrity of data shared is also asecurity consideration, and it usually can be solved by remotedata possession checking protocols [2]. We mainly focus onthe confidentiality of the data.

To meet the secure requirements on outsourced data,Sahai and Waters [3] firstly presented a new method fordata encryption: attribute-based encryption (ABE), whichis envisioned to be a promising cryptographic primitive toprotect the data security and realize fine-grained access con-trol in one-to-many communications. ABE features such amechanism that enables the operations like key issue, dataencryption and decryption to be performed on the basis ofattributes. In an ABE scheme, a user’s keys is associated witha set of attributes, and every data owner can specify an access

304442169-3536 2018 IEEE. Translations and content mining are permitted for academic research only.

Personal use is also permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

VOLUME 6, 2018

Page 2: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

control formula described by attributes when encrypting data.A user has access right to the encrypted data only when theattributes set embedded in his private key satisfy the accesspolicy of the encrypted data. However, the computational costof ABE schemes will dramatically increases with the numberof attributes described in the access policy, which have beencriticized a lot. The shortcoming becomes more serious in theresource-limited mobile environment.

With the deepening research onABE,more andmore atten-tion has been paid to the revocation mechanism, for user’sattributes can be changed dynamically in practice. However,attribute revocation is a challenging issue in ABE schemes asevery attribute is conceivably shared by multi-users. It meansthat revocation of any attribute of a user would affect theother users who possess the revoked attribute. To overcomethe difficulty, the traditional solution inevitably require datare-encryption and user secret key updates [4]–[7], whichwould bring heavy computation overhead when there are alarge quantity of data stored on cloud and lots of users in thesystem.

Moreover, how to retrieve the encrypted data is anotherissue when applying ABE to practice. Searchable encryp-tion (SE), put forward by Song et al. [8], is such a technologythat allows a semi-trusted server to provide retrieval serviceon encrypted data with search trapdoor of keyword providedby a user, while the server knows nothing about the searchkeyword.

These above issues can be summarized as two points:firstly, most of the existing ABE schemes are not ableto simultaneously achieve efficient attribute revocation andkeyword search.While it is not easy to combine the exitingtechniques in a straightforward way, since system param-eter between a revocable ABE scheme and a searchableABE scheme usually are different, and their focus are alsodifferent.Moreover, even if the direct combination is feasible,it will possibly result in redundancy of some parameters; sec-ondly, the heavy computational cost on user side will affectthe quality improvement of mobile cloud storage service.Thus, we argue that it is of great significance to design arevocable and searchable attribute-based encryption scheme,to deal with data access control in mobile cloud environment.Our Contribution. In this paper, an efficiently revocable

and searchable attribute-based encryption (RSABE) schemefor mobile cloud storage is proposed. We stretch Waters’CP-ABE scheme [9] from the aspects of functionality, effi-ciency and security. The contributions of our scheme can beconcluded as follows.

1) We construct an RSABE scheme, which simultane-ously supports efficient attribute revocation, attributegrant and keyword search inmobile cloud environment.

2) We provide an immediate revocation method with highefficiency. In our RSABE scheme, the attribute author-ity securely delegates the most update tasks to cloudserver. During the whole revocation, the secret keycomponent that user holds keeps unchanged, whichbrings great convenience for mobile users.

3) We present an efficient solution to search keywords onthe encrypted data. The cloud server will return thesearch results only when the keywords and indexesare matched and the attributes set of user satisfiesthe access policy in ciphertext. Moreover, data ownerand user can generate the keywords index and searchtrapdoor respectively without relying on trusted thirdparty.

4) We greatly improve the computation efficiency ofusers. Specifically, each user has a delegated secretkey for cloud server, so partial decryption operationscan be outsourced to the cloud server. By this way,user decryption cost can be greatly reduced, whichmakes our scheme more suitable for mobile cloudenvironment.

5) Our RSABE scheme is proven to be selectively securein the security model we defined in the subsequentsection. The analysis shows that our solution has betterperformance than schemes [4], [6].

II. RELATED WORKA. ATTRIBUTE-BASED ENCRYPTIONABE, introduced by Sahai and Waters [3], is regarded as acreative extension of identity based encryption (IBE) [10] byviewing an identity as set of descriptive attributes. In [3],the data are encrypted under a set of attributes ω, and theprivate key was labeled with another set of attributes ω′. Theciphertext can only be decrypted only if there are at leastd attributes overlap between the set ofω andω′, where d is thethreshold parameter. However, there are a limitation in thisscheme: lack of expressibility. Goyal et al. [11] further intro-duced the concept of ABE and proposed two different formsof ABE: ciphertext-policy ABE (CP-ABE) and key-policyABE (KP-ABE). In the first type, the ciphertext is associatedwith an access policy and the secret key is integrated withan attributes set, a secret key can decrypt a ciphertext if andonly if the attributes set satisfies the access policy, whilethe situation is inversed in KP-ABE schemes. Due to itsimplement about fine-grained access control and expressiveaccess policy, ABE can be widely applied to many practi-cal scenarios [11]–[13], such as electronic medical system,online social network and so on. Consider an honest-but-curious server model, CP-ABE fits well with the applicationin mobile cloud storage system.

B. ATTRIBUTE-BASED ENCRYPTION WITH ATTRIBUTEREVOCATIONThe attribute revocation is an essential mechanism inABE applications as the fact that user’s attribute may changefrequently in reality. The attribute revocation was first intro-duced by Pirretti et al. [14], which was realized by means ofthe timed rekeyingmechanism. In their scheme, each attributewas designated to an expiration date, thus authority centerare required to periodically reissue updated key. To revokean attribute in the system, the authority center only need tostop issuing and updating the new version of the attribute.

VOLUME 6, 2018 30445

Page 3: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

Enhancing Pirretti’s solution, Bethencourt et al. [12]associated the private key of user with a single expira-tion time. This scheme produces a lower load on author-ity than that in [14] since a user needn’t update his secretkey frequently. Boldyreva et al. [15] presented an efficientrevocable KP-ABE scheme extended from their previousrevocable IBE. Wang et al. [16], [17] gave two directly revo-cable construction of CP-ABE based on the bilinear maps andmulti-linear maps respectively.

In recent years, several ABE schemes with immediateattribute revocation have been proposed. Yu et al. [20] andIbraimi et al. [21] put forward CP-ABE schemes whichenforced immediate attribute revocation by introducing asemi-trusted proxy server. This method transferred most ofthe workload of the authority to the proxy server, whichgreatly reduced the pressure of the authority. However, theyhave failed to achieve fine-grained access control. Moreover,the update workload of proxy server is very large whenthe number of users has a sharp increase. Hur and Noh [4]presented a fine-grained attribute revocation scheme using abinary key encrypting key (KEK) tree to implement rekey-ing. However the maintenance of the KEK tree cost highly.Xie et al. [22] made some improvements over Hur’s scheme,reduced the size of the ciphertexts and secret keys and thecomputation amount in the key update phase. Li et al. [23]provided an efficient CP-ABE scheme with user revocation,and the lower computation cost make it can be applied toresource constrained devices. They also presented a CP-ABEscheme [24] with attribute revocation, which is secure againstuser collusion attack by existing users and revoked users.Several recent schemes on attribute revocation can be seenin [5], [7], [19], and [25]–[27].

C. KEYWORD SEARCH OVER ENCRYPTED DATASE is such a cryptographic primitive that enables users tosearch keywords over the encrypted data without leaking key-words information. Song et al. [8] firstly designed a practicalSE scheme based on symmetric cryptography, which createdan important precedent for implementing keyword search onthe encrypted data. Later, Boneh et al. [28] originated thestudy of SE on the public-key cryptography. In the scheme,bilinear map is adopted and single keyword search is sup-ported. After that, various SE schemes have been devisedto promote the search efficiency, enhance the system secu-rity or enrich the searching functionalities. The schemesin [29]–[32] supported conjunctive keyword search, SE withfuzzy keyword search can be seen in [33]–[36]. Also, multi-user SE [37]–[39] has been developed since it is more prac-tical than single-user setting in cloud environment. However,none of the above schemes support the fine-grained searchauthorization to distinguish users’ search right. In recentyears, attribute-based keyword search integrating the prop-erties of ABE with SE have attracted much attention.Li et al. [40] proposed a searchable CP-ABE scheme withattributes revocation. In their scheme, the keyword search

is supported and the access structure is partially hidden toprotect privacy information in ciphertexts. More elatedachievements can be seen in [18] and [41]–[46].

D. OUTSOURCED DECRYPTIONComputational efficiency is another point need to be takeninto account in the current ABE schemes. Outsourced decryp-tion technology can largely reduce the computational load ofuser side. Green et al. [47] firstly presented an efficient ABEscheme supporting outsourced decryption, where majority ofdecryption tasks are performed by the could server with atransformation key of users. Zhou and Huang [48] proposedan efficient data storage scheme focusing on mobile devices,where parts of the encryption and decryption operations aresecurely outsourced to the service providers without crit-ical secrets leakage. Lai et al. [49] put forward an ABEscheme considering verifiability of outsourced decryption.The verifiability assures that users could examine whetherthe outsourced decryption is completed correctly. Lately,Li et al. [50] firstly designed a fine-grained access con-trol scheme with outsourced key generation and decryption,where two secure cloud service providers are adopted toexecute key-issuing and decryption respectively. On the basisof Li et al., Lv et al. [19] applied outsourced key generationand decryption to the mobile environment, and efficientlyachieved user revocation. Li et al. [51] presented an out-sourced ABE scheme with checkability of the outsourcedcomputation results, where two service providers are alsoused to delegate key generation and decryption operations.They also introduced the outsourced technology into IBE andachieved outsourced user revocation in scheme [52]. Later,they constructed an ABE scheme [53] overcoming severaldrawbacks of outsourcing computation when applying it toresource-limited mobile users. Li et al. [54] presented anABE scheme with full verifiability for outsourced decryp-tion, where the issue of how to guarantee the outsourceddecryption correctness for unauthorized users is consid-ered. There are several applications of outsourced decryptionin [45] and [55]–[57].

Here, we compare the functions of some existing schemeswith our scheme as shown in Table 1. We can see thatthe functionalities of our scheme are more perfect, whichmakes our scheme more suitable for mobile cloud storagesystem.

III. PRELIMINARIESA. BILINEAR MAPDefinition 1 (Bilinear Map [9]): Choose two multiplica-

tive cyclic group G and GT of prime order p. Let g be agenerator of G. A function e : G × G → GT is called abilinear map, if it satisfies:

1) Bilinearity: For all u, v ∈ G, and all a, b ∈ Zp,e(ua, vb) = (u, v)ab.

2) Non-degeneracy: e(g, g) 6= 1.3) Computability: For all u, v ∈ G, the pairing e(u, v) can

be efficiently computed.

30446 VOLUME 6, 2018

Page 4: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

TABLE 1. Comparisons of functionality.

B. DECISIONAL PARALLEL BILINEAR DIFFIE-HELLMANEXPONENT ASSUMPTIONThe decisional q-parallel bilinear Diffie-Hellman exponent(BDHE) problem [9] can be described as follows. Choose agroup G with prime order p. Given

y = (g, gs, ga, · · · , gaq, , ga

q+2, · · · , ga

2q,

∀1≤j≤q gsbj , ga/bj , · · · , gaq/bj , , ga

q+2/bj , · · · , ga2q/bj ,

∀1≤k,j≤q,k 6=j gasbk/bj , · · · , gaqsbk/bj )

where a, s, b1, · · · , bq ∈ Zp are chosen at random and gis a generator of G. It’s hard to distinguish a valid tuplee(g, g)a

q+1s∈ GT from a random element R ∈ GT .

An algorithm B that outputs z ∈ {0, 1} has advantage ε insolving q-parallel BDHE problem in G if∣∣∣Pr [B(y, e(g, g)aq+1s) = 0

]− Pr [B(y,R) = 0]

∣∣∣ ≥ εDefinition 2 (Decisional q-Parallel BDHE Assumption):

We say the decisional q-parallel BDHE assumption holdsif no probabilistic polynomial time algorithm can solve thedecisional q-parallel BDHE problem with a non-negligibleadvantage.

C. BILINEAR DIFFIE-HELLMAN ASSUMPTIONThe bilinear Diffie-Hellman (BDH) problem [28] can bedescribed as follows. Choose a group G of prime order p.Given a tuple (g, ga, gb, gc), where a, b, c ∈ Zp are chosenat random and g is a generator of G. It’s hard to computee(g, g)abc ∈ GT .Definition 3: (BDH Assumption): We say the BDH

assumption holds if no probabilistic polynomial time algo-rithm can solve the BDH problem with a non-negligibleprobability.

D. LINEAR SECRET SHARING SCHEMEDefinition 4: (Linear Secret Sharing Scheme, LSSS [9]):

A secret-sharing scheme 5 over a set of parties P is calledlinear (over Zp) if1) The shares for each party form a vector over Zp.2) There exists a share-generating matrix M for5, where

M has l rows and n columns. For all i = 1, 2, · · · , l,we let the function ρ label the i-th row of M as ρ(i).Consider the vector v = (s, r2, · · · , rn), where s ∈ Zqis the secret to be shared, and r2, · · · , rn ∈ Zq arechosen at random. Mv is the vector of l shares of the

secret s according to 5. The share (Mv)i belongs toparty ρ(i).

Every LSSS has the property of linear reconstruction:Assume that 5 is an LSSS for the access structure A. LetS ∈ A be any authorized set, and I ⊂ {1, 2, · · · , l} be definedas I = {i : ρ(i) ∈ S}. Then, there exist constants {ωi ∈ Zp}i∈Isuch that, if {λi} are valid shares of any secret s accordingto 5, we have 6i∈Iωiλi = s. These constants {ωi} can befound in polynomial time in the size of the share-generatingmatrix M .Note that the vector (1, 0, · · · , 0) is the ‘‘target’’ vector for

any linear secret sharing scheme. For any authorized set ofrows I in M , the target vector is in the span of I . For anyunauthorized set of rows I , the target vector is not in the spanof the rows of set I . Moreover, there exists a vector η suchthat η · (1, 0, · · · , 0) = −1 and η ·Mi = 0 for all i ∈ I .

IV. FRAMEWORK AND SECURITY MODELA. FRAMEWORKOur RSABE scheme includes four entities: attribute au-thority (AA), cloud servers (CS), data owners and users.• AA. The AA is fully trusted by the other three entities.It takes charge of setup of the system parameters and theregistration of users. Moreover, the AA is in charge ofthe revoking and entitling user’s attributes on the basisof his dynamical role.

• DataOwners. The data owner is responsible for upload-ing data to the cloud. The data owner firstly encrypts hisdata file with a symmetric key. Then, the owner extractskeywords set from the data file and establishes keywordsindex. Moreover, the owner defines an access policy ofthe data file and encrypts the symmetric key under theaccess policy to obtain a corresponding ciphertext.

• CS. The CS is in charge of data storage and providesdata access service for its significant storage space andcomputation resource. Once it receives an access requestfrom a user, the CS performs the retrieval operation withthe submitted search trapdoor. If the search trapdoormatches the keyword index of some data file, the CSwillpartially decrypt the ciphertext of that file, and it will besuccessful only if the attributes of user satisfy the accesspolicy in ciphertext. If succeed, then partially decryptedciphertext and corresponding encrypted data file will besent to the user. In addition, the CS is also responsi-ble for large computing tasks during revocation phase,

VOLUME 6, 2018 30447

Page 5: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

FIGURE 1. Framework of Our RSABE Scheme.

such as ciphertexts update and delegated secret keysupdate et al.

• Users. Every user has a unique identity, an attributes set,and a secret key associated with his attributes set. A usercan access data files on the CS by providing a searchtrapdoor generated with an interested keyword and hissecret key. Once receiving the search results, the userdecrypts the partially decrypted ciphertext by using ofhis secret key, and finally gets the symmetric key.

The framework of our RSABE scheme is shown in Fig. 1.Definition 5: Our RSABE scheme includes thirteen prob-

abilistic polynomial time algorithms as follows:• Setup(λ) → (MK ,PP, {VKx}x∈U , {PKx}x∈U ). Thesetup algorithm is run by the AA. It takes as input asecurity parameter λ, and then outputs the master keyMK , public parameters PP, a set of attribute versionkeys {VKx}x∈U and public attribute keys {PKx}x∈U forthe attribute universe U in the system.

• KeyGen(MK , Suid , {VKx}x∈Suid )→ SK . The secret keygeneration algorithm is run by the AA. It takes as inputsthe master key MK , an attributes set Suid that describesthe user uid and the corresponding attribute version keys{VKx}x∈Suid , then outputs a secret key SK = {SK1, SK2},where SK1 will be sent to the user, and the SK2 will besent to the CS as the delegation key of user uid .

• KeyIndex(PP,W )→ IW . The keywords index genera-tion algorithm is run by the data owner. It takes as inputsthe public parameters PP and a keywords set W of theshared data file, then outputs the keywords index IW .

• Encrpt(PP, {PKx}x∈U , κ,A) → CT . The encryptionalgorithm is run by the data owner. It takes as inputsthe public parameters PP, the public attribute keys{PKx}x∈U , the symmetric key κ and an access policy A,then outputs a ciphertext CT .

• Trapdoor(w, SK1) → Tw. The trapdoor generationalgorithm is run by user. Taking a search keyword w andthe secret key component SK1 of user uid , this algorithmoutputs the search trapdoor Tw.

• Test(Tw, SK2, IW ) → {0, 1}. The test algorithm is runby the CS. Taking a search trapdoor Tw submitted byuser uid , the secret key component SK2 of user uid anda keywords index IW , this algorithm outputs 1 if it ismatched and 0 otherwise.

• PreDecrpt(CT , SK2) → CT ′. The preprocessingdecryption algorithm is run by the CS. Taking the cipher-textCT associated with an access policyA and the secret

key component SK2 integrated with attributes set Suid ,this algorithm will output a partially decrypted cipher-text CT ′ if Suid satisfies A, and the error symbol ⊥otherwise.

• PostDecrpt(CT ′, SK1) → κ . The post-processingdecryption algorithm is run by user. Taking the cipher-text CT ′ which is partially decrypted by SK2 and thesecret key component SK1 of user uid , this algorithmoutputs the symmetric key κ only if SK1 and SK2 areboth generated for the user uid by the AA.

• UKeyGen(x ′,VKx ′ ) → VK x ′ ,UKx ′ . The update keygeneration algorithm is run by the AA. Taking therevoked attribute x ′ and its current attribute versionkey VKx ′ , this algorithm outputs a new attribute versionkey VK x ′ and an attribute update key UKx ′ .

• PKUpdate(PKx ′ ,UKx ′ ) → PK x ′ . The public attributekey update algorithm is run by the AA. Given the publicattribute key PKx ′ and the attribute update keyUKx ′ , thisalgorithm outputs an updated public attribute key PK x ′ .

• CTUpdate(CT ,UKx ′ ) → CT . The ciphertext updatealgorithm is run by the CS. Given the ciphertext CTassociated with the revoked attribute x ′ and the attributeupdate keyUKx ′ , the algorithm outputs an update cipher-text CT .

• SKUpdate(SK2,UKx ′ ) → SK 2. The secret key updatealgorithm is run by the CS. Given the secret key com-ponent SK2 of non-revoked user uid and the attributeupdate keyUKx ′ , the algorithm outputs an updated secretkey component SK 2.

• GrantAtt(SK2,VKx ′′ )→ SK 2. The attribute grant algo-rithm is run by the AA. Given the secret key componentSK2 of granted user uid and the version number VKx ′′of the granted attribute x ′′, the algorithm outputs anupdated secret key component SK 2.

B. SECURITY MODELThe security of RSABE relies on decisional q-parallel BDHEassumption and BDH assumption. As most of the updateworks are implemented by the CS, it is assumed that the CSwill not collude with the revoked users. To demonstrate thesecurity of our scheme, we design two security games: indis-tinguishability against selective ciphertext-policy and chosenplaintext attack (IND-sCP-CPA) game and indistinguishabil-ity against chosen keyword attack (IND-CKA) game.IND-sCP-CPA game:Init. The adversary A declares an access structure A∗

which he wishes to challenge upon.Setup. The challenger B runs the Setup algorithm. Then

he sends the public parameters PP toA, and keeps the masterkey MK for himself.

Phase 1. A can issue the following oracles in polynomialmany times:• OSK (uid, Suid ): A can issue queries for secret key SKby submitting pairs (uid, Suid ), where uid is an identity,Suid is an attributes set of user uid , with the restrictionthat Suid does not satisfy A∗.

30448 VOLUME 6, 2018

Page 6: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

• OUK (x ′): A also can make update key queries by sub-mitting any attribute x ′.

• OGA(uid, Suid , x ′′): A is allowed to issue queries forupdate secret key SK by submitting tuple (uid, Suid , x ′′)with the following constrains: (uid, Suid ) has beenqueried for oracle OSK , and Suid ∪ {x ′′} does not satisfyA∗, where x ′′ is the attribute granted to user uid .

Challenge.A submits twomessages κ0, κ1 of equal length.B randomly tosses a bit b ∈ {0, 1} and encrypts κb under A∗,then passes the challenge ciphertext CT ∗ to A.

Phase 2. Same as Phase 1.Guess. A outputs a guess b′ of b and wins the game

if b′ = b.The advantage of A in this game is defined as

AdvIND−sCP−CPAA =

∣∣∣∣Pr [b′ = b]−

12

∣∣∣∣ .Definition 6: An RSABE scheme is IND-sCP-CPA secure

if all polynomial time adversaries have at most a negligibleadvantage in the above game.IND-CKA game:Setup. The challenger B runs the Setup algorithm. Then

he sends the public parameters PP toA, and keeps the masterkey MK for himself.

Phase 1. A can query the trapdoor of a keyword w inpolynomial many times.

Challenge. A submits two equal length keywords w0,w1with the restriction that w0 and w1 have not been queried forthe trapdoor. B flips a random bit b ∈ {0, 1} and generatesindex Iwb for keyword wb, then passes the challenge index Iwbto A.Phase 2.A can issue more trapdoor queries for keyword w

with the restriction w 6= w0,w1.Guess. A outputs a guess b′ of b and wins the game

if b′ = b.The advantage of A in this game is defined as

AdvIND−CKAA =

∣∣∣∣Pr [b′ = b]−

12

∣∣∣∣ .Definition 7: An RSABE scheme is IND-CKA secure if

all polynomial time adversaries have at most a negligibleadvantage in the above game.

V. OUR CONSTRUCTIONThis paper aims to address the issue of how to support effi-cient computation, attribute revocation, attribute grant andkeyword search. Specially, our solution greatly reduces thecomputational and storage overload of the user side by meansof outsourced decryption technology. The users only storesecret key component SK1 independent with user’s attributes,and outsource secret key component SK2 associated withuser’s attributes to the CS, which reduces storage load on userside to a large extent. Thus, partial decryption operations inwhich computational cost growswith the number of attributesare outsourced to the cloud server, so the user only needsto decrypt with constant computation. During the revoca-tion, user’s secret key SK2 update and data re-encryption

can be outsourced to the cloud server, and the other secretkey component SK1 that user holds does not need to update.Our RSABE scheme can satisfy the special application needof low computation and storage overhead in mobile cloudstorage systems with resource-limited mobile users, so it canbe applied to many mobile cloud storage systems, such aselectronic health record system.

Inspired by Waters’ CP-ABE [9] and Boneh’s PKES [28],we give the detailed construction of our RSABE scheme inthis section. There are seven phases in the whole construc-tion: system setup, key generation, data outsourcing, keywordsearch, data decryption, attribute revocation and attributegrant.

A. SYSTEM SETUPAt this phase, AA initializes the system by calling the algo-rithm Setup.

Setup(λ) → (MK ,PP, {VKx}x∈U , {PKx}x∈U ): It takesas input a security parameter λ. This algorithm chooses abilinear map e : G × G → GT , where G and GT aretwo multiplicative cyclic groups of prime order p. Let g bea generator of G. It also chooses three hash functions H :{0, 1}∗ → G, H1 : {0, 1}∗ → G, and H2 : GT → {0, 1}log p

that will be modeled as random oracles. Then, define U asattribute universe. For each attribute x ∈ U , denote the setof users whose attribute x is revoked as attribute revocationlist RLx , and denote the set of users who are granted theattribute x as attribute grant list GLx . It randomly choosesnumbers a, α, α ∈ Zp and sets the master keys as

MK = {α, α},

where α is used for data encryption, and α is used for keywordsearch. It sets the public parameters as

PP = {p, g,H ,H1,H2, ga, e(g, g)α, gα}.

For each attribute x ∈ U , it randomly chooses vx ∈ Zp andcomputes the public attribute key PKx = gvx by implicitlysetting the corresponding attribute version key VKx = vx .Then AA publishes the public parameters PP and publicattribute keys {PKx}x∈U , and keep the master keys MK andattribute version keys {VKx}x∈U secret.

B. KEY GENERATIONWhen a new user joins the system, AA assigns a uniqueidentity uid and an attributes set Suid for him. Then, AA runsthe algorithm KeyGen to issues secret key SK to this user.

KeyGen(MK , Suid , {VKx}x∈Suid )→ SK : It takes as inputsthe master keys MK , an attributes set Suid belonging to useruid and the corresponding attribute version keys {VKx}x∈Suid .The algorithm chooses random numbers α1, α2 ∈ Z∗p suchthat α = α1 + α2 mod p. It also randomly chooses δuid , t ∈Z∗p, then computes the secret key as SK = {SK1, SK2}, where

SK1 = {α = α/δuid ,K = gα1gat },

SK2 = {δuid ,E = gα2 ,L = gt , {Kx = H (x)t/vx }x∈Suid }.

VOLUME 6, 2018 30449

Page 7: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

The AA sends SK1 to user uid and SK2 to the CS. TheCS adds the tuple (uid, Suid , SK2) into the user secret keylist LSK2 .

C. DATA OUTSOURCINGWhen a data owner outsource a file F to the mobile cloudsever, he proceeds as follows:Step 1: keywords index buildingTo share the data file with other users, the owner should

first build an encrypted keywords index for the file by callingthe algorithm KeyIndex.

KeyIndex(PP,W ) → IW : It takes as inputs the publicparameters PP, and the keywords setW = {w1,w2, · · · ,wm}extracted from the data file F . For each keyword wj ∈ W ,the algorithm randomly selects a number λj ∈ Z∗p andcomputes

Iwj ={Aj = gγj ,Bj = H2

(e((gα)γj ,H1(wj)

))}Finally, the algorithm outputs the index for the keywords

set W as IW = {Iwj}j=1,··· ,m.Step 2: data encryptionThe data owner encrypts the data file F with a random

symmetric key κ by means of symmetric encryption algo-rithm such asAES, and denotes the encrypted result asEκ (F).Then it defines an LSSS access policy (M , ρ) about thesymmetric key κ and encrypts κ under (M , ρ) by callingalgorithm Encrypt.

Encrpt(PP, {PKx}x∈U , κ, (M , ρ)) → CT : It inputs thepublic parameters PP, the public attribute keys {PKx}x∈U ,the symmetric key κ and an access policy (M , ρ), whereM is an l × n matrix, the function ρ maps each row of M toan attribute. In our construction, the function ρ is no morelimited to an injective function. It first chooses a randomencryption exponent s ∈ Zp and vector v = (s, y2, · · · , yn) ∈Znp, where y2, · · · , yn will be used to share the encryptionexponent s. For i = 1 to l, it computes λi = Mi · v,where Mi is the vector corresponding to the i-th row of M .Then, it randomly chooses r1, · · · , rl ∈ Zp and computes theciphertext as

CT = { (M , ρ),C = κ · e(g, g)αs,C ′ = gs,

∀i = 1, · · · , l : Ci = gaλiH (ρ(i))ri ,

Di = (PKρ(i))ri }

After all that work, the owner sends the keyword index IW ,the ciphertext CT and the encrypted data file to the CS withthe format in Fig. 2.

D. KEYWORD SEARCHWhen a data user want to download some interestedencrypted file in CS, he proceeds as follows:Step 1: trapdoor generation by userThe user uid first generates a trapdoor of the interested

keyword w by calling the algorithm Trapdoor.Trapdoor(w, SK1) → Tw: It takes as inputs a search

keyword w and the secret key component SK1 of user uid .

FIGURE 2. Format of encrypted data stored in cloud sever.

The algorithm computes the trapdoor as

Tw = H1(w)α.

On obtaining the trapdoor Tw, the user sends the tuple(uid,Tw) to the CS.Step 2: search for data by the CSThe CS performs the search operation by calling the algo-

rithm Test.Test(Tw, SK2, IW )→ {0, 1}: It takes as inputs the trapdoor

Tw submitted by user uid , the secret key component SK2of user uid and an index IW = {Iwj}j=1,··· ,m of the datafile F . It checks if the following equation holds H2(e(Aj,(Tw)δuid )) = Bj for some keyword index Iwj ∈ IW . If theequation holds, it outputs 1 and go to the phase of datadecryption. Otherwise, it outputs 0.

E. DATA DECRYPTIONThe outsourced decryption technology is used here to reducethe decryption overhead on user side. The decryption phraseconsists of two steps.

Step1: decryption by the CSIf the output of the previous Test algorithm is 1, which

means that the keyword index is matched with the keywordtrapdoor, the CS partially decrypts the corresponding cipher-text CT by calling the algorithm PreDecrpt.

PreDecrpt(CT , SK2)→ CT ′: It takes as inputs the cipher-text CT and the secret key component SK2 of user uid . If theattributes set Suid used in SK2 satisfies the access structure(M , ρ) embedded in CT , the algorithm proceeds as follows:Let I ⊂ {1, 2, · · · , l} be defined as I = {i : ρ(i) ∈ Suid }.

Then, it chooses a set of constants {ωi ∈ Zp}i∈I such that6i∈Iωiλi = s if {λi} are valid shares of any secret s accordingto M . It computes

A =5i∈I e(Ci,L)ωi

e(C ′,E)5i∈I e(Di,Kρ(i))ωi=

e(g, g)ats

e(g, g)α2s.

The algorithm outputs a partially decrypted ciphertextCT ′ = {C,C ′,A}. Then, the CS transmits the partiallydecrypted ciphertext CT ′ along with the encrypted data fileEκ (F) to user uid .

Step2: decryption by userWhen the user uid receives the search results from the CS,

it further decrypts the partially decrypted ciphertext CT ′ bycalling the algorithm PostDecrpt.

PostDecrpt(CT ′, SK1)→ κ: It takes as inputs the partiallydecrypted ciphertext CT ′ and the secret key component SK1of user uid . The symmetric key is computed as

κ =C · A

e(C ′,K ).

30450 VOLUME 6, 2018

Page 8: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

Eventually, the user could decrypt the encrypted datafile Eκ (F) utilizing the symmetric key κ , and finally gets thedata file F .

F. ATTRIBUTE REVOCATIONWhen an attribute x ′ is revoked from some users, the AA addsthese users’ identity into attribute revocation list RLx ′ . Ourrevocation method includes the following two steps:Step 1: attribute update key generation and public attribute

key update by the AAThe AA computes the attribute update key by running the

algorithm UKeyGen.UKeyGen(x ′,VKx ′ ) → VK x ′ ,UKx ′ : It takes as inputs

the revoked attribute x ′ and its current attribute version keyVKx ′ = vx ′ . The algorithm first chooses a new attributeversion key VK x ′ = vx ′ ∈ Z∗p (vx ′ 6= vx ′ ) for the revokedattribute x ′, and then the attribute update key is computed as

UKx ′ = vx ′/vx ′ .

Then AA updates the public attribute key of the revokedattribute x ′ by calling the algorithm PKUpdate.PKUpdate(PKx ′ ,UKx ′ ) → PK x ′ : It takes as inputs the

public attribute key PKx ′ and attribute update key UKx ′ ,the new public attribute key is computed as

PK x ′ = (PKx ′ )UKx′ .

The AA publishes the updated public attribute key onpublic board, and sends the update key UKx ′ together withthe attribute revocation list RLx ′ to the CS.Step 2: ciphertexts and delegated secret keys update by

the CSWhen the CS receives the attribute update key UKx ′ ,

it updates the ciphertexts related to the revoked attribute x ′

by running the algorithm CTUpdate.CTUpdate(CT ,UKx ′ ) → CT : It takes as inputs the cur-

rent ciphertextCT and the attribute update keyUKx ′ . The newciphertext is computed as:

CT = { C = C, C ′ = C ′,

∀i = 1, · · · , l : Ci = Ci,

for ρ(i) 6= x ′ : Di = Di,

for ρ(i) = x ′ : Di = (Di)UKρ(i) } .

The CS updates the delegated secret key component SK2for these non-revoked users by running the algorithmSKUpdate.

SKUpdate(SK2,UKx ′ )→ SK 2: It inputs the current secretkey component SK2 of user uid /∈ RLx ′ and the attributeupdate key UKx ′ . The algorithm computes the updated secretkey component SK 2 as:

SK 2 = {δuid = δuid , E = E, L = L,

for x 6= x ′ : Kx = Kx ,

for x = x ′ : Kx = (Kx)UK−1

x′ }.

Then CS maintains the user secret key list LSK2 .

Note.1) Only the secret key components SK2 need to be

updated, while components SK1 held by users keepunchanged. By this means, our solution can largelyreduce the communication overload of users during therevocation.

2) When an attribute x ′ is revoked from some users,the AA adds these users’ identity into attribute revoca-tion listRL ′x . The components associatedwith attributeswill be affected, like cipertexts and user’s secret key.Note that attribute revocation would not influence key-word searching operations, as the keyword index andtrapdoor that keyword searching operations involve areunrelated with attributes.

3) To handle the revocation more efficiently in mobilecloud storage, we could adopt the lazy-update tech-nique [58]. The CS stores the attribute update keysUKx ′ and once the ciphertext is accessed by someuser, the CS will first check whether any attributesembedded in the ciphertext have been revoked. If any,the CS will update the ciphertext. Moreover, the CS isable to batch multiple UKx ′ by calling the CTUpdatealgorithm once with

∏UKx ′ . For example, in a certain

accessed ciphertext, there are three attributes x ′, x ′′, x ′′′

which have been revoked from some users, theCS only needs to call the CTUpdate algorithm oncewith UKx ′ ×UKx ′′ ×UKx ′′′ . Similarly, secret key com-ponent SK2 will not be updated until the correspondinguser makes search requests.

G. ATTRIBUTE GRANTWhen some users come to hold a new attribute x ′′, the AAadds these users’ identity into attribute grant list GLx ′′ ,then issues the secret key component related to the grantedattribute x ′′ for these users by running the algorithmGrantAtt.GrantAtt(SK2,VKx ′′ ): It takes as inputs the current secret

key component SK2 of user uid ∈ GLx ′′ and the attributeversion key VKx ′′ . Then the algorithm computes the updatesecret key component SK 2 as

SK 2 = {δuid = δuid , E = E, L = L,for x 6= x ′′ : Kx = Kx ,for x = x ′′ : Kx = H (x)t/VKx′′ }.

Then, the AA sends the SK 2 together with the attributegrant list GLx ′′ to the CS. The CS maintains the user secretkey list LSK2 .

VI. SECURITY ANALYSISA. CORRECTNESSThe correctness of decryption:

A =

∏i∈I e(Ci,L)

ωi

e(C ′,E)∏

i∈I e(Di,Kρ(i)

)ωi=

∏i∈I e

(gaλiH (ρ (i))ri , gt

)ωie (gs, gα2)

∏i∈I e

((gvρ(i) )ri ,H (ρ (i))t/vρ(i)

)ωi=

e(g, g)ats

e(g, g)α2s.

VOLUME 6, 2018 30451

Page 9: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

then

C · Ae(C ′,K )

=κ · e(g, g)αs · e(g, g)ats

e(gs, gα1gat ) · e(g, g)α2s= κ.

The correctness of keyword searchčž

H2(e(Aj, (Tw)δuid )

)= H2

(e(gγj ,

(H1(w)α

)δuid))

= H2

(e(gγj , (H1(w)α/δuid )δuid )

)= H2

(e(gγj ,H1(w)α)

)= H2

(e((gα)γj ,H1(w))

)= Bj

(iff w = wj

).

B. SECURITY PROOFWe exploit Waters’ [9] proof method to prove the security ofIND-sCP-CPA game in our RSABE.Theorem 1: Suppose the decisional q-parallel BDHE

assumption holds in G and GT . Then no polynomial timeadversary can win the IND-sCP-CPA game with a non-negligible advantage.

Proof: Suppose there exists a polynomial time adver-sary A who is able to distinguish a valid ciphertext froma random element with non-negligible advantage ε1 =AdvIND−sCP−CPAA . Then we can construct a simulator Bto solve the decisional q-parallel BDHE problem withnon-negligible advantage ε1/2. The simulation proceeds asfollows.

The q-parallel BDHE challenger C first choosesa, s, b1, · · · , bq in Zp at random, and sets:

y = (g, gs, ga, · · · , gaq, , ga

q+2, · · · , ga

2q,

∀1≤j≤q gsbj , ga/bj , · · · , gaq/bj , , ga

q+2/bj , · · · , ga2q/bj ,

∀1≤k,j≤q,k 6=j gasbk/bj , · · · , gaqsbk/bj ),

Then C picks a fair binary coin µ ∈ {0, 1}: if µ = 0, Csets T = e(g, g)a

q+1s; if µ = 1, then C chooses a randomelement T from GT .

Init. B is given a decisional q-parallel BDHE challengeinstance (y,T ). A declares the challenge access structure(M∗, ρ∗), where M∗ has n∗ < q columns.Setup.B randomly selects a numberα′ ∈ Zp and implicitly

lets α = α′+ aq+1 by setting e(g, g)α = e(ga, gaq) · e(g, g)α

.B programs the random oracle H using a hash list LH .

Consider a call to H (x), if H (x) was already appeared in LH ,then B simply returns the same answer as before. Otherwise,let X denote the set of indices i, such that ρ∗(i) = x.B randomly selects zx ∈ Zp, and processes as:

H (x) = gzx∏i∈X

gaM∗

i,1/bi · ga2M∗i,2/bi · · · ga

n∗M∗i,n∗/bi .

Note that if X = ∅ then H (x) = gzx , and the responses ofH (x) are randomly distributed due to the value gzx . Moreover,for each attribute x, B initializes an attribute version key vx

by randomly selecting vx ∈ Zp, and sets public attribute keyPKx = gvx .Phase I.Bmaintains a list of tuples (uid, Suid , SK ) denoted

as LSK which is initially empty.A can polynomially query thefollowing oracles:• OSK (uid, Suid ): Assume that B is given secret key queryfor (uid, Suid ), where Suid does not satisfy (M∗, ρ∗),B proceeds as follows:If the pair (uid, Suid ) has been queried before, retrieveSK from the LSK with respect to (uid, Suid ), and thenreturns SK .Otherwise, B finds a vector η = (η1, · · · , ηn∗ ) ∈ Z∗psuch that η1 = −1 andM∗i ·η = 0 for all iwhere ρ∗(i) ∈Suid . Such a vector must exist by the definition of LSSS.The simulator randomly chooses α′1, α

2 ∈ Zp, such thatα′1+α

2 = α′ mod p, and set α1 = α′1+a

q+1, α2 = α′

2.Then B computes E as:

E = gα′

2 = gα2 .

B randomly selects a number r ∈ Zp, and implicitlydefines t as:

t = r + η1 aq + η2 aq−1 + · · · + ηn∗aq+1−n∗

.

It performs this by setting L as:

L = gr ·∏

i=1,··· ,n∗(ga

q+1−i)ηi = gt .

By the definition of t , we know that gat includes a item ofthe form g−a

q+1, which will cancel out with the unknown

item in gα1 when computing K . B calculates K as:

K = gα′

1gar ·∏

i=2,··· ,n∗(ga

q+2−i)ηi = gα1gat .

Now B calculates Kx for all x ∈ Suid . For each attributesx ∈ Suid , when there is no i such that ρ∗(i) = x, letKx = Lzx/vx . While for those attributes x ∈ Suid used inthe access structure,Kx contains itemswith form ga

q+1/bi

that B cannot simulate. However, we have M∗i · η = 0,all of these items of form ga

q+1/bi will be canceled. Bcomputes Kx as:

Kx = Lzx/vx∏i∈X

∏j=1,··· ,n∗

((gaj/bi )r )M

∗i,j/vx

·

∏i∈X

∏j=1,··· ,n∗

∏k=1,··· ,n∗

k 6=j

((gaq+1+j−k/bi )ηk )M

∗i,j/vx

= H (x)t/vx

B adds the secret key SK = {E,L,K , {Kx}x∈Suid } intolist LSK and gives it to A.

• OUK (x ′): A submits an attribute x ′ for the attributeupdate key query. B chooses a random value vx ′ ∈ Zpas a new attribute version number of x ′, and returns theattribute update key UKx ′ = vx ′/vx ′ to A.

• OGA(uid, Suid , x ′′):A submits a pair (uid, Suid ) that hasbeen queried for SK and the attribute x ′′ granted to uid ,

30452 VOLUME 6, 2018

Page 10: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

where Suid ∪{x ′′} does not satisfy (M∗, ρ∗). When thereis no i such that ρ∗(i) = x ′′, B returns Kx ′′ = Lzx′′/vx′′ .Otherwise, B queries OSK with (uid, Suid ∪ {x ′′}) to geta new secret key SK for uid , then updates the list LSKand returns the new secret key SK to A.

Challenge. A gives two challenge messages κ0, κ1 of equallength to B. Then B flips a coin b ∈ {0, 1}, and calculates C∗

as follows:

C∗ = κb · T · e(gs, gα′

), C ′∗ = gs

It is difficult for B to simulate C∗i because it contains itemsga

js thatB cannot simulate. However,B could cancel out theseitems by choosing the secret splitting. Intuitively,B randomlychooses y′2, · · · , y

′n∗ ∈ Zp, then shares the secret s utilizing

the vector

v = (s, sa+ y′2, sa2+ y′3, · · · , sa

n∗−1+ y′n∗ ) ∈ Zn

p

For i = 1, · · · , l, we define Ri as the set of all k 6= i suchthat ρ∗(i) = ρ∗(k).B also randomly chooses r ′1, · · · , r

′l ∈ Zp.

By implicitly setting ri = −r ′i − sbi, B computes D∗i and C∗i

as:

D∗i = g(−r′i−sbi)·vρ∗(i)

C∗i = H (ρ∗(i))−r′i · (gsbi )−zρ∗(i) ·

∏j=2,··· ,n∗

(ga)M∗i,j·y′j

·

∏k∈Ri

∏j=1,··· ,n∗

(gajsbi/bk )−M

∗k,j

B gives the challenge ciphertext CT ∗ = {C∗,C ′∗, {C∗i ,D∗i }i=1,2,··· ,l} to A.

Phase II. Same as Phase I.Guess. A will eventually output a guess b′ of b. Then

B outputs µ′ = 0 to guess that T = e(g, g)aq+1s if b′ = b.

Otherwise, B outputs µ′ = 1 to indicate that T is a randomgroup element in GT . If µ = 0, A obtains a valid ciphertextof κb. A’s advantage in this situation is ε1 by definition,therefore Pr[b′ = b|µ = 0] = 1/2 + ε1. Since B guessesµ′ = 0 when b′ = b, we have Pr[µ′ = µ|µ = 0] = 1/2+ ε1.If µ = 1, A gets no information about b, we have Pr[b′ 6=b|µ = 1] = 1/2. As B guesses µ′ = 1 when b′ 6= b, we havePr[µ′ = µ|µ = 1] = 1/2. The advantage of B to solve thedecisional q-parallel BDHE problem is

Pr[µ′ = µ]−12=

12Pr[µ′ = µ|µ = 0]

+12Pr[µ′ = µ|µ = 1]−

12

=12(12+ ε1)+

12·12−

12

=ε1

2.

WeexpandBoneh’s [28] proofmethod to prove the securityof IND-CKA game in our RSABE.

Theorem 2: Suppose the BDH assumption holds in Gand GT . Then no polynomial time adversary can win theIND-CKA game with a non-negligible advantage.

Proof: Suppose there exists a polynomial time adversaryA who is able to distinguish a valid index from a randomelement with non-negligible advantage ε2 = AdvIND−CKAA .Suppose A makes at most qH2 > 0 hash queries to H2 and atmost qT > 0 trapdoor queries. Thenwe can construct an algo-rithm B that solves the BDH problem with probability at leastε2/(eqT qH2 ), where e is the base of the natural logarithm.Init. Let g be a generator of G. The simulator B is given

a BDH instance (g, u1 = gα, u2 = gβ , u3 = gγ ). B aims atcomputing e(g, g)αβγ ∈ GT .Setup.B gives the public parameter component (g, u1) that

only related to keyword search to A.Phase 1. A can polynomially query the following oracles:• OH1 (wi): To respond to H1 queries, B maintains ahash list of tuples (wj, hj, aj, cj) denoted as LH1 . WhenA issues H1 query with a keyword wi ∈ {0, 1}∗,B proceeds as follows:– Ifwi already appears in a tuple (wi, hi, ai, ci) of LH1 ,

then B responds with H1(wi) = hi ∈ G.– Otherwise, B picks a random coin ci ∈ {0, 1}

such that Pr[ci = 0] = 1/(qT + 1), and thenrandomly selects a number ai ∈ Zp. If ci = 0,B calculates hi ← u2 · gai ∈ G. Otherwise,B calculates hi ← gai ∈ G. Then simulator B addsthe tuple (wi, hi, ai, ci) to LH1 and returns H1(wi) =hi toA. Note that either way hi is uniform inG andis independent of A’s current view as required.

• OH2 (ti): To respond to H2 queries, B maintains a hashlist of pair (ti, vi) denoted as LH2 . When A issues H2query with an element ti ∈ GT , B proceeds as follows:– If ti has been queried before,B retrievesH2(ti) from

the LH2 with respect to ti. Eventually, it returnsH2(ti).

– Otherwise, B picks a new random value vi ∈{0, 1}log p for a new ti. Then it responds to A bysetting H2(ti) = vi, and adds the pair (ti, vi) to LH2 .

• OSK (uid): B initializes an empty list Lu. Given a useridentity uid , the simulator B proceeds as follows:– If the user uid has been queried before, B retrievesδuid with respect to uid from list Lu.

– Otherwise, B selects a random number δuid ∈ Zp,and then adds (uid, δuid ) to list Lu and returns δuid .

• OTw (uid,wi): When A issues a trapdoor query withkeyword wi and user uid , B responds as follows:– B queries OH1 to obtain an hi ∈ G such thatH1(wi) = hi. Let (wi, hi, ai, ci) be the correspond-ing tuple in LH1 . If ci = 0 then B reports failure andterminates.

– Otherwise ci = 1, so hi = gai ∈ G. B queriesOSK (uid) to obtain δuid with respect to the user uid ,then defines Ti = uai/δuid1 = H1(wi)α/δuid . we cansee that Ti is the correct simulation of the trapdoor

VOLUME 6, 2018 30453

Page 11: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

TABLE 2. Comparisons of computation complexity.

for the keyword wi with the public parameters com-ponent (g, u1). B returns Ti to A.

Challenge.A submits a pair of challenge keywordsw0,w1of equal length. B produces the challenge index as follows:B queries OH1 twice to obtain h0, h1 ∈ G such that

H1(w0) = h0 andH1(w1) = h1. For i = 0, 1, let (wi, hi, ai, ci)be the corresponding tuple in LH1 . If both c0 = 1 and c1 = 1,then B reports failure and terminates.

We know that at least one of c0, c1 is equal to 0.B randomlypicks a bit b ∈ {0, 1} such that cb = 0.

B responds with the challenge index Ib = (u3, J ) for arandom J ∈ {0, 1}log p. Observe that this challenge indeximplicitly defines H2(e(u

γ

1 ,H1(wb))) = J , that is,

J = H2(e(uγ

1 ,H1(wb))) = H2(e(uγ

1 , u2 gab ))

= H2(e(g, g)αγ (β+ab)).

Therefore, Ib is a valid index of wb as required.Phase 2. A can query the trapdoor oracle for keywords wi

same as Phase 1, where the only restriction is wi 6= w0,w1.Guess.A outputs his guess b′ ∈ {0, 1} of b. Then,B picks a

random pair (ti, vi) from LH2 and outputs ti/e(u1, u3)ab as his

guess for e(g, g)αβγ . This is because thatAmust have issueda query for either H2(e(u

γ

1 , H1(w0))) or H2(e(uγ

1 ,H1(w1))).Therefore, with probability 1/2 the list LH2 contains apair whose left hand side is ti = e(uγ1 ,H1(wb)) =e(g, g)αγ (β+ab). If B picks this pair (ti, vi) from the list LH2

then ti/e(u1, u3)ab = e(g, g)αβγ as required.This finishes the description of the simulation pro-

cess. Now we will analyze the probability that B cor-rectly outputs e(g, g)αβγ . During the simulation phase,B does not abort with probability at least 1/(eqT ). Andin a real attack game, A issues a query for eitherH2(e(u

γ

1 ,H1(w0))) or H2(e(uγ

1 ,H1(w1))) with probabilityat least 2ε2. The detailed analyses of above two resultsare shown in [28]. That is, the value e(uγ1 ,H1(wb)) =e(g, gβ+ab )αγ will appear on the left hand side of some pairin the list LH2 with probability at least ε2. And B will choosethe correct pair with probability at least 1/qH2 . Therefore,B will output e(g, g)αβγ with probability at least ε2/qH2 inthe case of that B completes the simulation without aborting.

In general, the success probability ofB is at least ε2/(eqT qH2 )as required.

VII. PERFORMANCE ANALYSISIn this section, we give the performance analysis fromthe perspective of computation cost, storage overhead andcommunication cost, and make some comparison withschemes [4], [6]. The notations used in this section is intro-duced as follows.P the pairing operationE the group exponentiation in GM the group multiplication in GET the group exponentiation in GTMT the group multiplication in GT|p| bit size of an element in Zp|g| bit size of an element in G|gT | bit size of an element in GTna the number of attributes in the systemnu the number of users in the systemnx the number of revoked attributesna,u the number of attributes a user possessesl the number of attributes embedded in a ciphertext

A. COMPUTATION COSTThe numerical evaluation of the computation amount of thekey operations in our RSABE scheme is shown in Table 2.

The simulation of our proposed RSABE scheme is con-ducted on a Windows system with an Intel Core i7 CPU at3.60GHz and 8.00 GB RAM. The implementation is basedon the Pairing-Based Cryptography (PBC) library [59]. Thetype A elliptic curve of 160-bit group order is adopted toprovide groups in which a bilinear map e : G × G → GTis defined. The base field size is 512-bit and the size of thegroup elements is set to be 1024-bit. The curve provides1024-bit discrete log security. The computation cost is eval-uated in terms of system setup, key generation, encryption,decryption, ciphertext update and secret key update as shownin Fig. 3.

Fig. 3(a), Fig. 3(b) and Fig. 3(c) describe the time costof setup, key generation and encryption respectively. It isclear that their time cost linearly increase with the number ofattributes in universe, secret keys and ciphertexts. As shownin Fig. 3(d), the time cost of decryption at user side is boundedby a small constant, since most decryption task is outsourcedto CS. In the revocation phase, AA delegate update tasks

30454 VOLUME 6, 2018

Page 12: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

TABLE 3. Comparisons of storage overhead.

TABLE 4. Comparisons of communication cost.

FIGURE 3. Performance evaluation on RSABE (a) System setup (b) Keygeneration (c) Encryption (d) Decryption (e) Ciphertext update(f) Secret key update.

of ciphertexts and secret keys to CS, Fig. 3(e) and Fig. 3(f)show that the time cost is linear with the number of revokedattributes.

B. STORAGE OVERHEADThe storage overhead is one of the important factors thatneeds to be considered in mobile cloud storage. comparisons

of the storage overhead on each entity between our RSABEscheme and schemes [4], [6] are shown in Table 3.

Note that, comparing with the schemes [4], [6], the storageoverheads of our solution for the AA and owner are relativelyincreased. This is due to that we use the public attributekeys. Although the storage overhead on the CS is remarkablyincreased, this will not produce much effect since we knowthat the storage ability of CS is so strong. In comparison,we add the storage of the secret key component of users andthe index over keywords. However, in this paper, it shouldbe noted that the storage load on users is limited in a smallconstant, for the reason that the users only store secret keycomponent SK1. This feature is really suitable for the mobileenvironment.

C. COMMUNICATION COSTIn Table 4, we compare the communication cost on eachentity of our RSABE scheme with that of the schemesin [4] and [6].

Observe that, communication cost of owner is relativelyincreased as we add keywords index. However, we greatlyreduce the user’s communication costs. Especially, the com-munication cost between user and the authority, cloud serverrespectively is independent to the number of attributes na,uidthat the user uid owns.

VIII. CONCLUSIONIn this article, we have presented an attribute-based encryp-tion scheme for mobile storage system supporting efficientattribute revocation, attribute grant and keyword search.Specially, our solution greatly enhances the computationalefficiency of the client by means of outsourced decryptiontechnology. In revocation phase, the CS is delegated bythe AA to execute a series of update operation. And thesecret key component user holds does not need to updateduring the revocation. Furthermore, our scheme is provenIND-sCP-CPA secure and IND-CKA secure. Our RSABE

VOLUME 6, 2018 30455

Page 13: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

scheme can be applied to manymobile cloud storage systems,such as electronic health record system. A further directionis to consider the situation of multi-authority which is moreaccordant with practical circumstances.

REFERENCES[1] N. Fernando, S. W. Loke, and W. Rahayu, ‘‘Mobile cloud computing:

A survey,’’Future Generat. Comput. Syst., vol. 29, no. 1, pp. 84–106, 2013.[2] J. Li, H. Yan, and Y. Zhang, ‘‘Certificateless public integrity checking of

group shared data on cloud storage,’’ IEEE Trans. Services Comput., to bepublished, doi: 10.1109/TSC.2018.2789893.

[3] A. Sahai and B. Waters, ‘‘Fuzzy identity-based encryption,’’ in Advancesin Cryptology—EUROCRYPT, R. Cramer, Ed. Berlin, Germany: Springer,2005, pp. 457–473.

[4] J. Hur and D. K. Noh, ‘‘Attribute-based access control with efficientrevocation in data outsourcing systems,’’ IEEE Trans. Parallel Distrib.Syst., vol. 22, no. 7, pp. 1214–1221, Jul. 2011.

[5] L. Zu, Z. Liu, and J. Li, ‘‘New ciphertext-policy attribute-based encryp-tion with efficient revocation,’’ in Proc. IEEE Int. Conf. Comput. Inf.Technol. (CIT), Sep. 2014, pp. 281–287.

[6] K. Yang and X. Jia, ‘‘ABAC: Attribute-based access control,’’ in Secu-rity for Cloud Storage Systems. New York, NY, USA: Springer, 2014,pp. 39–58.

[7] T. Naruse, M. Mohri, and Y. Shiraishi, ‘‘Provably secure attribute-basedencryption with attribute revocation and grant function using proxy re-encryption and attribute key for updating,’’ Human-Centric Comput. Inf.Sci., vol. 5, no. 1, p. 8, 2015.

[8] D. X. Song, D. Wagner, and A. Perrig, ‘‘Practical techniques for searcheson encrypted data,’’ in Proc. IEEE Symp. Secur. Privacy (S&P), May 2000,pp. 44–55.

[9] B. Waters, ‘‘Ciphertext-policy attribute-based encryption: An expressive,efficient, and provably secure realization,’’ in Public Key Cryptography—PKC, D. Catalano, N. Fazio, R. Gennaro, and A. Nicolosi, Eds. Berlin,Germany: Springer, 2011, pp. 53–70.

[10] A. Shamir, ‘‘Identity-based cryptosystems and signature schemes,’’ inAdvances in Cryptology—CRYPTO, G. R. Blakley and D. Chaum, Eds.Berlin, Germany: Springer, 1985, pp. 47–53.

[11] V. Goyal, O. Pandey, A. Sahai, and B. Waters, ‘‘Attribute-based encryptionfor fine-grained access control of encrypted data,’’ in Proc. 13th ACMConf. Comput. Commun. Secur. (CCS). New York, NY, USA: ACM, 2006,pp. 89–98.

[12] J. Bethencourt, A. Sahai, and B.Waters, ‘‘Ciphertext-policy attribute-basedencryption,’’ in Proc. IEEE Symp. Secur. Privacy (S&P). Washington, DC,USA: IEEE Computer Society, May 2007, pp. 321–334.

[13] S. Yu, C. Wang, K. Ren, and W. Lou, ‘‘Achieving secure, scalable, andfine-grained data access control in cloud computing,’’ in Proc. 29th IEEEINFOCOM. Piscataway, NJ, USA: IEEE Press, Mar. 2010, pp. 534–542.

[14] M. Pirretti, P. Traynor, P. McDaniel, and B. Waters, ‘‘Secure attribute-based systems,’’ in Proc. 13th ACMConf. Comput. Commun. Secur. (CCS).New York, NY, USA: ACM, 2006, pp. 99–112.

[15] A. Boldyreva, V. Goyal, and V. Kumar, ‘‘Identity-based encryptionwith efficient revocation,’’ in Proc. 15th ACM Conf. Comput. Commun.Secur. (CCS). New York, NY, USA: ACM, 2008, pp. 417–426.

[16] H. Wang, Z. Zheng, L. Wu, and P. Li, ‘‘New directly revocable attribute-based encryption scheme and its application in cloud storage environ-ment,’’ Cluster Comput., vol. 20, no. 3, pp. 2385–2392, Sep. 2017,doi: 10.1007/s10586-016-0701-7.

[17] H. Wang, D. He, J. Shen, Z. Zheng, X. Yang, and M. H. Au, ‘‘Fuzzymatching and direct revocation: A new CP-ABE scheme from multi-linear maps,’’ Soft Comput., vol. 22, no. 7, pp. 2267–2274, Apr. 2018,doi: 10.1007/s00500-017-2488-8.

[18] W. Sun, S. Yu, W. Lou, Y. T. Hou, and H. Li, ‘‘Protecting your right: Ver-ifiable attribute-based keyword search with fine-grained owner-enforcedsearch authorization in the cloud,’’ IEEE Trans. Parallel Distrib. Syst.,vol. 27, no. 4, pp. 1187–1198, Apr. 2016.

[19] Z. Lv, J. Chi, M. Zhang, and D. Feng, ‘‘Efficiently attribute-basedaccess control for mobile cloud storage system,’’ in Proc. 13th IEEE Int.Conf. Trust, Secur. Privacy Comput. Commun. (TrustCom), Sep. 2014,pp. 292–299.

[20] S. Yu, C. Wang, K. Ren, and W. Lou, ‘‘Attribute based data sharing withattribute revocation,’’ in Proc. 5th ACM Symp. Inf., Comput. Commun.Secur. (ASIACCS). New York, NY, USA: ACM, 2010, pp. 261–270.

[21] L. Ibraimi, M. Petkovic, S. Nikova, P. Hartel, and W. Jonker, ‘‘Medi-ated ciphertext-policy attribute-based encryption and its application,’’ inInformation Security Applications, H. Y. Youm and M. Yung, Eds. Berlin,Germany: Springer, 2009, pp. 309–323.

[22] X. Xie, H. Ma, J. Li, and X. Chen, ‘‘New ciphertext-policy attribute-based access control with efficient revocation,’’ in Informationand Communication Technology, K. Mustofa, E. J. Neuhold,A. M. Tjoa, E. Weippl, and I. You, Eds. Berlin, Germany: Springer, 2013,pp. 373–382.

[23] J. Li, W. Yao, Y. Zhang, H. Qian, and J. Han, ‘‘Flexible and fine-grainedattribute-based data storage in cloud computing,’’ IEEE Trans. ServicesComput., vol. 10, no. 5, pp. 785–796, Sep./Oct. 2017.

[24] J. Li,W. Yao, J. Han, Y. Zhang, and J. Shen, ‘‘User collusion avoidance CP-ABE with efficient attribute revocation for cloud storage,’’ IEEE Syst. J.,vol. 12, no. 2, pp. 1767–1777, Jun. 2018.

[25] H. Qian, J. Li, Y. Zhang, and J. Han, ‘‘Privacy-preserving personal healthrecord using multi-authority attribute-based encryption with revocation,’’Int. J. Inf. Secur., vol. 14, no. 6, pp. 487–497, Nov. 2015, doi: 10.1007/s10207-014-0270-9.

[26] P. Zhang, Z. Chen, K. Liang, S.Wang, and T.Wang, ‘‘A cloud-based accesscontrol scheme with user revocation and attribute update,’’ in InformationSecurity and Privacy, J. K. Liu and R. Steinfeld, Eds. Cham, Switzerland:Springer, 2016, pp. 525–540, doi: 10.1007/978-3-319-40253-6_32.

[27] Z. Liu, S. Duan, P. Zhou, and B. Wang, ‘‘Traceable-then-revocable ciphertext-policy attribute-based encryption scheme,’’Future Gener. Comput. Syst., to be published. [Online]. Available:http://www.sciencedirect.com/science/article/pii/S0167739X17320964,doi: 10.1016/j.future.2017.09.045.

[28] D. Boneh, G. Di Crescenzo, R. Ostrovsky, and G. Persiano, ‘‘Pub-lic key encryption with keyword search,’’ in Advances in Cryptology—EUROCRYPT, C. Cachin and J. L. Camenisch, Eds. Berlin, Germany:Springer, 2004, pp. 506–522.

[29] P. Golle, J. Staddon, and B. Waters, ‘‘Secure conjunctive keyword searchover encrypted data,’’ in Applied Cryptography and Network Security,M. Jakobsson, M. Yung, and J. Zhou, Eds. Berlin, Germany: Springer,2004, pp. 31–45.

[30] Y. H. Hwang and P. J. Lee, ‘‘Public key encryption with con-junctive keyword search and its extension to a multi-user system,’’in Pairing-Based Cryptography—PAIRING, T. Takagi, T. Okamoto,E. Okamoto, and T. Okamoto, Eds. Berlin, Germany: Springer, 2007,pp. 2–22.

[31] D. Boneh and B. Waters, ‘‘Conjunctive, subset, and range queries onencrypted data,’’ in Theory of Cryptography, S. P. Vadhan, Ed. Berlin,Germany: Springer, 2007, pp. 535–554.

[32] N. Cao, C. Wang, M. Li, K. Ren, and W. Lou, ‘‘Privacy-preserving multi-keyword ranked search over encrypted cloud data,’’ IEEE Trans. ParallelDistrib. Syst., vol. 25, no. 1, pp. 222–233, Jan. 2014.

[33] S. Ji, G. Li, C. Li, and J. Feng, ‘‘Efficient interactive fuzzy keywordsearch,’’ in Proc. 18th Int. Conf. World Wide Web (WWW). New York, NY,USA: ACM, 2009, pp. 371–380

[34] J. Li, Q. Wang, C. Wang, N. Cao, K. Ren, and W. Lou, ‘‘Fuzzy keywordsearch over encrypted data in cloud computing,’’ in Proc. 29th IEEEINFOCOM, Mar. 2010, pp. 1–5.

[35] S. Sedghi, P. van Liesdonk, S. Nikova, P. Hartel, andW. Jonker, ‘‘Searchingkeywords with wildcards on encrypted data,’’ in Security and Cryptogra-phy for Networks, J. A. Garay and R. De Prisco, Eds. Berlin, Germany:Springer, 2010, pp. 138–153.

[36] C. Wang, K. Ren, S. Yu, and K. M. R. Urs, ‘‘Achieving usable and privacy-assured similarity search over outsourced cloud data,’’ in Proc. 31st IEEEINFOCOM, Mar. 2012, pp. 451–459.

[37] R. Curtmola, J. Garay, S. Kamara, and R. Ostrovsky, ‘‘Searchable symmet-ric encryption: Improved definitions and efficient constructions,’’ in Proc.13th ACM Conf. Comput. Commun. Secur. (CCS). New York, NY, USA:ACM, 2006, pp. 79–88.

[38] F. Bao, R. H. Deng, X. Ding, and Y. Yang, ‘‘Private query on encrypted datain multi-user settings,’’ in Information Security Practice and Experience,L. Chen, Y. Mu, and W. Susilo, Eds. Berlin, Germany: Springer, 2008,pp. 71–85.

[39] C. Dong, G. Russello, and N. Dulay, ‘‘Shared and searchable encrypteddata for untrusted servers,’’ in Data and Applications Security XXII,V. Atluri, Ed. Berlin, Germany: Springer, 2008, pp. 127–143.

[40] J. Li, Y. Shi, and Y. Zhang, ‘‘Searchable ciphertext-policy attribute-basedencryptionwith revocation in cloud storage,’’ Int. J. Commun. Syst., vol. 30,no. 1, p. e2942, 2015.

30456 VOLUME 6, 2018

Page 14: Efficiently Revocable and Searchable Attribute-Based ......A. ATTRIBUTE-BASED ENCRYPTION ABE, introduced by Sahai and Waters [3], is regarded as a creative extension of identity based

S. Wang et al.: Efficiently RSABE Scheme for Mobile Cloud Storage

[41] J. Li, J. Li, X. Chen, C. Jia, and Z. Liu, ‘‘Efficient keyword searchover encrypted data with fine-grained access control in hybrid cloud,’’ inNetwork and System Security, L. Xu, E. Bertino, and Y. Mu, Eds. Berlin,Germany: Springer, 2012, pp. 490–502.

[42] Q. Wang, Y. Zhu, and X. Luo, ‘‘Multi-user searchable encryption withfine-grained access control without key sharing,’’ in Proc. Int. Conf. CloudComput. Big Data (CCBD), Dec. 2014, pp. 119–125.

[43] F. Zhou, Y. Li, A. X. Liu, M. Lin, and Z. Xu, ‘‘Integrity preservingmulti-keyword searchable encryption for cloud computing,’’ in ProvableSecurity, L. Chen and J. Han, Eds. Cham, Switzerland: Springer, 2016,pp. 153–172, doi: 10.1007/978-3-319-47422-9_9.

[44] Y. Miao, J. Ma, X. Liu, F. Wei, Z. Liu, and X. A. Wang, ‘‘m2-ABKS:Attribute-based multi-keyword search over encrypted personal healthrecords in multi-owner setting,’’ J. Med. Syst., vol. 40, no. 11, p. 246,Nov. 2016, doi: 10.1007/s10916-016-0617-z.

[45] J. Li, X. Lin, Y. Zhang, and J. Han, ‘‘KSF-OABE: Outsourced attribute-based encryption with keyword search function for cloud storage,’’ IEEETrans. Services Comput., vol. 10, no. 5, pp. 715–725, Sep./Oct. 2017.

[46] Y. Li, F. Zhou, Y. Qin, M. Lin, and Z. Xu, ‘‘Integrity-verifiable conjunctivekeyword searchable encryption in cloud storage,’’ Int. J. Inf. Secur., vol. 17,pp. 1–20, Nov. 2017, doi: 10.1007/s10207-017-0394-9.

[47] M. Green, S. Hohenberger, and B. Waters, ‘‘Outsourcing the decryption ofabe ciphertexts,’’ in Proc. 20th USENIX Conf. Secur. (SEC). Berkeley, CA,USA: USENIX Association, 2011, p. 34.

[48] Z. Zhou and D. Huang, ‘‘Efficient and secure data storage operationsfor mobile cloud computing,’’ in Proc. 8th Int. Conf. Netw. ServiceManage. (CNSM). Laxenburg, Austria: International Federation for Infor-mation Processing, Oct. 2012, pp. 37–45.

[49] J. Lai, R. H. Deng, C. Guan, and J.Weng, ‘‘Attribute-based encryption withverifiable outsourced decryption,’’ IEEE Trans. Inf. Forensics Security,vol. 8, no. 8, pp. 1343–1354, Aug. 2013.

[50] J. Li, X. Chen, J. Li, C. Jia, J.Ma, andW. Lou, ‘‘Fine-grained access controlsystem based on outsourced attribute-based encryption,’’ in ComputerSecurity—ESORICS, J. Crampton, S. Jajodia, and K. Mayes, Eds. Berlin,Germany: Springer, 2013, pp. 592–609.

[51] J. Li, X. Huang, J. Li, X. Chen, and Y. Xiang, ‘‘Securely outsourc-ing attribute-based encryption with checkability,’’ IEEE Trans. ParallelDistrib. Syst., vol. 25, no. 8, pp. 2201–2210, Aug. 2014.

[52] J. Li, J. Li, X. Chen, C. Jia, and W. Lou, ‘‘Identity-based encryption withoutsourced revocation in cloud computing,’’ IEEE Trans. Comput., vol. 64,no. 2, pp. 425–437, Feb. 2015.

[53] J. Li, Y. Zhang, X. Chen, and Y. Xiang, ‘‘Secure attribute-based datasharing for resource-limited users in cloud computing,’’ Comput. Secur.,vol. 72, pp. 1–12, Jan. 2018.

[54] J. Li, Y. Wang, Y. Zhang, and J. Han, ‘‘Full verifiability for outsourceddecryption in attribute based encryption,’’ IEEE Trans. Services Comput.,to be published, doi: 10.1109/TSC.2017.2710190.

[55] K. Zhang, J. Ma, J. Liu, and H. Li, ‘‘Adaptively secure multi-authorityattribute-based encryption with verifiable outsourced decryption,’’ Sci.China Inf. Sci., vol. 59, no. 9, p. 99105, Aug. 2016, doi: 10.1007/s11432-016-0012-9.

[56] H.Wang, D. He, J. Shen, Z. Zheng, C. Zhao, andM. Zhao, ‘‘Verifiable out-sourced ciphertext-policy attribute-based encryption in cloud computing,’’Soft Comput., vol. 21, no. 24, pp. 7325–7335, Dec. 2017, doi: 10.1007/s00500-016-2271-2.

[57] K. Zhang et al., ‘‘Practical and efficient attribute-based encryption withconstant-size ciphertexts in outsourced verifiable computation,’’ in Proc.11th ACM Asia Conf. Comput. Commun. Secur. (ASIA CCS). New York,NY, USA: ACM, 2016, pp. 269–279, doi: 10.1145/2897845.2897858.

[58] M. Kallahalla, E. Riedel, R. Swaminathan, Q. Wang, and K. Fu, ‘‘Plutus:Scalable secure file sharing on untrusted storage,’’ in Proc. 2nd USENIXConf. File Storage Technol. (FAST). Berkeley, CA, USA: USENIX Asso-ciation, 2003, pp. 29–42.

[59] B. Lynn. (2017). The Pairing-Based Cryptography Library. [Online].Available: https://crypto.stanford.edu/pbc/

SHANGPING WANG received the B.S. degree inmathematics from the Xi’an University of Tech-nology, Xi’an, China, in 1982, the M.S. degree inapplied mathematics from Xi’an Jiaotong Univer-sity, Xi’an, in 1989, and the Ph.D. degree in cryp-tology from Xidian University, Xi’an, in 2003. Heis currently a Professor with the Xi’an Universityof Technology. His current research interests arecryptography and information security.

DUO ZHANG received the B.S. and M.S. degreesfrom the School of Science, Xi’an Universityof Technology, Xi’an, China, in 2014 and 2017,respectively, where she is currently pursuing thePh.D. degree with the School of Automation andInformation Engineering. Her research interestsinclude information security and modern cryptog-raphy.

YALING ZHANG received the B.S. degree in com-puter science from Northwest University, Xi’an,China, in 1988, and the M.S. degree in com-puter science and the Ph.D. degree in mechanismelectron engineering from the Xi’an University ofTechnology, Xi’an, in 2001 and 2008, respectively.She is currently a Professor with the Xi’an Univer-sity of Technology. Her current research interestsinclude cryptography and network security.

LIHUA LIU received the M.S. degree in computerscience from Shaanxi Normal University in 2006.She is currently pursuing the Ph.D. degree with theSchool of Automation and Information Engineer-ing, Xi’an University of Technology, Xi’an, China.She is also anAssociate Professor with the ShaanxiUniversity of Technology, Hanzhong, China. Herresearch interests include information security andmodern cryptography.

VOLUME 6, 2018 30457