Abstract
Cloud data access control is a very important issue especially when data are outsourced into a third-party cloud server. Recently, some researchers are working to enhance the trust level of cloud users by developing the secured access control to store the data into a third-party server. CP-ABE (Ciphertext-Policy Attribute-Based Encryption) is a very fruitful technology for such situation providing a capability of encrypted data access control. The existing mechanisms for outsourced data access control are mostly centralized, where a single key distribution center works as attribute authority and generates attributes along with corresponding keys for all users. In some cases, multiple key distribution centers used to generate user attributes along with user secret keys to make the system decentralized. However, all such mechanisms are based on small universe CP-ABE, where attribute set need to define in the initial setup phase and therefore public parameters and ciphertext size are increased linearly with attribute numbers in the system. As the attribute numbers in an access control system in the cloud should not be defined initially or if new attribute required to add time to time in the system and the existing attribute may be required to revoke form the system, then small universe enabled CP-ABE is not scalable and efficient compared to large universe system. In a large universe system, initially the size of parameters is large but it makes the size of ciphertext short in the system. In the paper, we proposed an access control scheme using large universe CP-ABE with user revocation and to make more efficient using decryption computation outsourcing into the cloud. The proposed system helps efficiently decrypt the data using a lightweight device. We have analyzed the security, scalability, and performance of our proposed scheme with existing approaches with respect to communication and computation cost.
Keywords

Introduction
Cloud computing provides highly reliable and scalable storage services to store a large amount of data over it. Storing data into the cloud reduced the cost and maintenance burden but controlled by the third party. However, it is not possible to fully trust the third party server because people not only have to store the general information but also need to store their confidential and sensitive data like company policy, financial records, physical health, defense secret, etc. The only probable solution to store such data into a third-party server by using the encrypted form, which can ensure confidentiality over unauthorized users. If the server is dishonest to overlook inside context and compromises with the other unauthorized personals, it will be harmful to the data owner also. Therefore, it is very important to develop efficient outsourced data access control for the cloud storage to share encrypted data among authorized users only. Public key cryptosystem can provide a fruitful solution in this issue [1] based on cloud architecture and its natures. Several approaches based on public key cryptosystem has been proposed to overcome this issue. However, it is found that Attribute-Based Encryption (ABE) [1] under public key cryptography is the most suitable methodology for such an environment where the data owner can define the access policy on outsourced encrypted data. Sahai et al. [2] introduced the first Attribute-Based Encryption. It has two types based on access policy associated with either key or with ciphertext namely Key Policy Attribute-Based Encryption (KP-ABE) and Ciphertext Policy Attribute-Based Encryption (CP-ABE). In KP-ABE [3], access policy associated with key and attributes is labeled with ciphertext. In CP-ABE [4], attributes are labeled with keys and access policy is associated with ciphertext. The data users can decrypt the encrypted text only when user’s attributes fulfill the access policy defined by the data owner. CP-ABE has extended scope for access control in cloud environment compared to KP-ABE [1] because, in KP-ABE, the data owner can control only those users whose attributes are associated with keys, whereas the data owner can control the users by define and enforced access policy on attribute sets in CP-ABE. Again based on construction ABE cryptosystem can be classified into two ways. First one is called small universe ABE [10, 15], where attributes are enumerated at setup phase and attributes space is bounded polynomially in the security parameter. The second one is called large universe [11], where attributes are not enumerated at the setup phase and size of attributes space exponentially large and also any string can be considered an attribute.
If the small universe CP-ABE used for the development of data access control in the cloud environment, the construction will not accept complete versatility to choose any access structure and attributes if once attributes enumerated in public parameter. The attribute numbers are fixed in the global system setup phase and public parameters are linearly increase with the attributes numbers [1, 5]. Due to the dynamic nature of cloud users, any time the data owner can change the access structure or the attributes set for generation of encrypted text. Therefore, small universe CP-ABE leads two restrictions as if attribute size is very small then the system might be required to re-build by adding more attributes and re-encrypt all data. On the other side, if the attribute size is very large then public parameters might be unnecessarily large which can make the system inefficient. Moreover, in large universe CP-ABE, the size of the ciphertext is short compared to small universe CP-ABE. There are numbers of approaches for access control using attribute based on small universe constructions explored in [14, 16, 17, 18, 19, 20, 21]. However, there are very few attempts for large universe attribute-based encryption. Lewko et al. [6] suggested first a large universe KP-ABE mechanism based on composite order of bilinear group under the standard model. Later on, Rouselakis et al. [11] suggested first large universe CP-ABE mechanism using prime order bilinear group and shown statically secure under the standard model. Other works also are done in [12, 13] to improve the works of Rouselakis et al.’s large universe CP-ABE scheme. However, exiting large universe CP-ABE has some drawback like inefficiency with respect to the size of ciphertext, user revocation and efficient decryption process. Moreover, no existing large attribute CP-ABE support attribute revocation, which is a very important feature for the access control mechanism.
Rather than large universe property, there are some other characteristics involved in an access control scheme which makes a system efficient and secured. Collision resistance property defines a system is secured under a circumstance that a group of users with the corrupted adversary, combining their secret should not break the access control scheme. A property called decentralization which can make more reliable a system over a centralized system by adding a multi-authority setting. Attribute revocation of a system helps dynamically control the end users when a new user come under the system and some users exit the system. To efficiently decrypt the data we can outsource the decryption computation to a powerful server, that helps an authorized user to decrypt using a lightweight device.
In Table 1, we explained the details of functionality comparison of our proposed method with other existing methods. This is a comprehensive analysis of different functions such as large universe properties, collision resistance, multi-authority set up, decryption outsourcing and attribute revocation, etc. The symbol, “
Comprehensive functionality analysis
Comprehensive functionality analysis
In this paper, we have concentrated on large universal multi-authority CP-ABE to develop more practically with dynamic user revocation and also make it computationally efficient by outsourcing the partial decryption to cloud server. We have used efficient Rouselakis et al.’s [11] large universe CP-ABE scheme as it is more suitable to scale up the dynamic user compare to other small universe schemes. We have used Green et al. [9] scheme for computation outsourcing into a third-party server. The key contributions, we have in this article are:
We proposed a new secured access control mechanism for cloud data outsourcing, named Large Universe Outsourced Data Access Control (LU-ODAC), using large universe CP-ABE (multi-authority) based on Rouselakis et al. [11] Scheme, which supports in addition computation outsource and dynamic user accessibility with attribute revocation. We have used secured computation outsource for decryption operation into the cloud in our proposed system to reduce the cost of computation. The decryption operation is multiple usable operations and we make it compatible to lightweight user devices. To compare and analyze of our proposed scheme with existing competing approaches, we have done theoretically analysis of security and performance of computation overhead and communication overhead. We have also simulated our proposed scheme in python based tool Charmcrypto and shown the performance of our scheme based on outsourced computation.
The organization of this article follows by literature review in Section 2, mathematical preliminaries and model description in Section 3, construction of proposed system in Section 4, security analysis of the proposed system with security in standard model 5, Experimentation and performance of various operations in Section 6. At last, we give conclusion in the Section 7.
Sahai et al. [2] introduced the first Attribute-Based Encryption. Different types of attribute-based encryption: KP-ABE [3, 4] and CP-ABE [5, 6, 11, 22] explored in the previous section. However, most of them are small universe based system in construction. To overcome the problems of small universe, Lewko et al. [6, 11] suggested a large universe KP-ABE mechanism based on composite order of bilinear group under the standard model. However, this technique is less efficient due to the composite order group compare to prime order bilinear group. Later on, using dual vector space [10] in a bilinear pairing of prime order reconstruct large universe KP-ABE in the standard model, which is more efficient compared to the previous version. However, due to the large vector size still, their scheme still faces significant inefficiency overhead. Rouselakis et al. [11] suggested first large universe CP-ABE mechanism using prime order bilinear group and shown statically secure under the standard model. Later on, other works also are done in [13] to improve the works of Rouselakis et al.’s large universe CP-ABE scheme. The schemes in [12, 13] based on large universe CP-ABE, but more decryption cost and improper attribute revocation process. Therefore, the existing large universe CP-ABE has still some drawback like inefficiency with respect to the size of ciphertext, decryption operation and user access right control with respect to forward and backward security. An access control scheme required an efficient user revocation process to dynamically handle the user in the system. All the above schemes satisfy the policy level user revocation, where the data owner needs to re-encrypt the message to revoke users. Moreover, those schemes cannot help to revoke a user where the same attribute assigned to the other users.
Chase et al. [7] suggested a scheme in small universe CP-ABE to efficiently revoke a user under same attribute which holds other users also. In 2011, Green et al. [9] suggested a scheme to reduce the overhead of user decryption. In ABE, the user needs to compute a number of exponential and pairing operation, that incurs computation overhead on decryptor. This scheme ensures message confidentiality by computing outsource. However, this scheme is based on a small universe attribute-based encryption, where linearly increase the public parameters on consideration of new attributes in the system. Finally, developing an efficient large universe attribute-based access control for data outsourcing with dynamic attribute revocation, constant size ciphertext still an open challenge.
Preliminaries
Bilinear pairings
.
Let
Non-degenerate: Computable: Efficient procedure to compute
We represent the bilinear pairing parameters shortly as
We have used q-PDBDHE [6] for security assumption of our scheme as follows:
q-PDBDHE: Let a group
then, it is very hard to differentiate
.
The q-PDBDHE assumption holds if no such polynomial time methodology has non-negligible gain to solve the q-PDBDHE problem.
.
Access Structures:[15]Let
In addition, an access structure
Linear secret-sharing scheme
.
Let
Distribute
Reconstruct
The objective vector (1, 0, …, 0), which is categorized the access structures i.e., a set
Assumptions
We have considered the assumptions for our proposed method as follows:
The cloud server is considered as honest to deliver the services but curious, which means that it can be interested in the assessment of user content, but will execute correctly the assigned task and will not modify. Security is not possible without any trusted entity. We assumed global setup authority (GSA) as a trusted party, but it is will not decrypt any ciphertext. We assumed every KDC as semi-trusted and also be corrupted by an adversary. All communication between users/clouds are secured by SSH protocol.
We have considered q-Parallel Decisional Bilinear Diffie-Hellman Exponent (q-PDBDHE) Assumption to defined security problem in our system.
Figure 1 shows the system where five different entities are involved. The entities are global setup authority (GA), key distribution centers (KDCs) as attribute authority, Data Owner (DO), Data Users (DU), Cloud Server (CS).
Scheme architecture.
Global authority setup: The global setup authority (GA) generates public parameters globally for the whole system. It can register a new user providing user global identity and a new key distribution center also providing the KDC’s identity. It is responsible for providing descriptions of attribute universe, user universe, and KDC universe. However, the global setup authority is not accountable for any attribute supervision like decryption key generation corresponding to attributes for each individual user, user revocation, attribute revocation and also not assign any attribute key which may use for encryption.
Key distribution centers: There are multiple KDCs scattered in different parts of the world which are work as attribute authority. Every KDC is independent and responsible for assigning attributes in its domain to users based on their role or identity. Every KDC has full control on an assigned attribute which is used in access structure and also generate public keys and decryption keys for each attribute under their control. All KDC also plays a role to send attribute public keys which are generated by that KDC to global setup authority for broadcasting and decryption key to the data user associated with the corresponding attribute.
Cloud server: The cloud server plays a role to store the encrypted text and provide all users if anyone asked for that ciphertext. It is a semi-trusted third party server, which must update the ciphertext components associated with specific attributes only when an authorized key distribution center asked for it. The authorization of each KDC can be check from the description of authority universe of the global setup authority. It must compute correctly the outsourced computation.
User: The user entity is considered for two types of users. First one is data owner (DO), which is liable for encrypt the data to share with multiple unknown users based on their attributes. The data owner can decide an access policy over the required attributes and encrypt the data with that access policy. For big data, the data owner can divide the data into multiple blocks and each block encrypts by symmetric key encryption. The content key can be labeled with access policy for encryption. Another type of user is called a data user (DU). The data users can ask any ciphertext from the cloud but decryption of that ciphertext can do only the attributes satisfy the access policy.
The framework for our large universe CP-ABE enable outsourced data access control with efficient revocation consist of following seven probabilistic polynomial algorithms: GASetup, KDCs setup, DecKeygen, KeyUpdate, Encryption, Decryption, CTUpdate.
GASetup
KDCSetup
SKeyGen
KeyTransform
Encrypt
PartialDecrypt
FinalDecrypt
UKeyGen
CTUpdate
.
A large universe CP-ABE with multi-authority scheme enables outsourced data access control if it takes a number of algorithms used like system setup, KDC Setup, SKeyGen, KeyTransform, Encryption, Partial decryption, full decryption, UKeyUpdate and CTupdate to secretly encryption and decryption of message under an access structure.
Security model
To describe the security requirement of our large universe outsourced data access control with revocation, we followed a game between Challenger
.
We can say that our LU-ODAC scheme
Initial setup. Let
Setup.
Query Phase 1.
SKeyGen oracle KeyTransform oracle Encrypt oracle Dccrypt oracle SKUpdate oracle
Challenge Phase.
Query Phase 2.
Guess.
Here, we represent a large universe CP-ABE based data access control supporting efficient attribute revocation for data outsource in the cloud. In this construction, we used Rouselakis-Waters [11] large universe construction and extended this techniques to combine attribute revocation. For attribute revocation, we have consider a version key for each of the attribute and introduced two new optional algorithms (considered only for an attribute revocation from a revoked users) update key generation and cipher text update. We also used partial decryption for computation outsourcing [9] to cloud server to reduce the computation cost for data users.
Details constructions of LU-ODAC
GASetup
KDCSetup
The public key of KDC and attribute keys of belongs to KDC,
where
SKeyGen
where,
Here,
KeyTransform
where
Encrypt
The final cipher text will be
PartialDecrypt
After that partial cipher text calculated as
FinalDecrypt
Then it calculates constants
where,
Any user drop from the access of any specific attribute then it is called attribute revocation. To do so, the corresponding KDC update the keys of attribute public key and non-revoked user’s secret key and sent a request the all non-revoked user & also cloud server to update the following:
UKeyGen
CTUpdate
Updating of ciphertext component just provides updated ciphertext with same access policy but it is not disclose any information on encrypted message.
To show the correctness of decryption of our scheme, we have consider the following major components and their working as follows:
From the Eq. (10), we can have
and
After that the Eq. (11) provides as
The value of
The proposed scheme will be meaningless if message confidentiality does not achieve from the scheme. We have also analyzed of forward and backward security along with collision resistance of our proposed scheme in this section.
Data confidentiality
Before outsourcing of data resources, the data owner needs to ensure the confidentiality of data against the curious cloud server and non-legitimate users. We followed the procedure of proof similar in [6]. It is achieved for our scheme as follows:
.
Suppose
Proof..
We say that our LU-ODAC scheme
Initial setup. Suppose,
Setup. Simulator
and
If
and public attribute keys on random choosing of version key
The simulator also send user identity
Query Phase 1. Definition of LSSS confirms that there exists a vector. The simulator define a vector
SKeyGen oracle
Simulator calculate for corrupted KDC a set
Let
KeyTransformation oracle
SKUpdate oracle
Challenge Phase. Adversary
Query Phase 2.
Guess.
.
LU-ODAC scheme is secure against collision attack, even if Adversary corrupt some KDCs also.
Proof..
Our system hold each user’s unique identity
Security on user accessibility
.
Our LU-ODAC scheme ensures forward secrecy against the revoked user.
Proof..
Our LU-ODAC scheme support forward security in two different ways. First, if the data owner wants policy level revocation, the data need to re-encrypt with the new policy, where the revoked user’s attribute eliminated. If the policy level revocation applied a group of users eliminate and some new user comes under the policy. In this process, data owner need to run encryption algorithm with consideration of new user attributes. Secondly, attribute level revocation can be applied for forward security. Here, after attribute revocation operation, the KDCs can update the attribute public key by changing the version key of revoked attribute and publish for a new user. The secret key can be updated with new version key for all existing non-revoked user. In this case, the cloud server also needs to update the cipher-text with revoked attribute’s updated public key. The non-revoked users still can decrypt the updated cipher-text using their current secret key. For the newly join users, they already have their secret key with the updated attribute can decrypt the cipher-text if access policy satisfy. Thus the forward security ensures by our proposed scheme. ∎
.
Our LU-ODAC scheme ensures backward secrecy against the revoked user.
Proof..
Each revoked attribute, the KDC updated the secret key for all non-revoked data users corresponding to that attribute except the revoked data user. Then the revoked user cannot update their secret key with the help of non-revoked user because each of the secret keys holds user identity, collision resistant hash function of attribute and the random number
Experiment and performance analysis
Implementation and simulation result
To show the more practicality, we simulated our system using Python based scripting tools Charm-Crypto [23]. Charm Crypto is a framework to simulate modern cryptosystem, which is similar to theoretical implementations. It binds with PBC library for efficient group operations. Charm-Crypto also provides predefined linear secret sharing scheme (LSSS) routines to use, which is very useful to implement attribute-based systems. Charm-Crypto provided several predefined elliptic curves based on bilinear pairing group i.e. three “MNT” asymmetric EC groups and two super-singular (SS) symmetric EC groups. Some of the utilized EC groups are “SS512” provides 80 bits in security level, “MNT201” provides 90 bits in security level, “MNT224” and “SS1024” provides 100 and 120 bits in security level respectively. We have tested our proposed scheme on Intel
Simulation result of our proposed LU-ODAC scheme.
In the Fig. 2, we have shown the computation time from various operations like KDC Setup, Secret Key generation, encryption, decryption, attribute revocation, decryption outsourcing, etc. From the sub Fig. 2a and c, we can see that secret key generation and encryption time linearly increase with attribute numbers. These algorithms show the influence of the attribute number used in the system.
The sub Fig. 2b shows the comparison Secret key generation and secret key update, where to update the secret key takes less time to compare to secret key generation because only one component needs to change in this algorithm which makes efficient our scheme for the secret key update. However, the secret key update also effects linearly with attribute numbers to be updated in our system.
The sub Fig. 2d shows the computation time for encryption and re-encryption processes of our scheme, where re-encryptions are not required computation overhead for multiple times. The reason behind this is some components only required to modify when re-encryption happens.
The sub Fig. 2e shows constant user computation on user decryption and sub Fig. 2f explain the comparison between partial decryption which is outsourced and user constant time decryption.
In case of sub Fig. 2g, we have shown the comparison secret key generation, Key transformation and also Key update and total time need for secret key operation. The last sub Fig. 2h shows the total time required for the entire attribute revocation. We considered here secret key update and ciphertext update for user revocation from the system and take linearly less computation for the whole process.
In the Table 2, we have shown the notation with their description to explain the performance analysis for this section. We have listed consequently storage overhead, computation complexity and communication cost through in tabular format.
Notations for performance analysis
Notations for performance analysis
The performance of storage cost defines the memory requirement of different parameters for participating entities. We have done the comparison of our proposed LU-ODAC scheme with several presented schemes to show the performance of our scheme. The comparison shown in the Table 3.
Storage overhead
Storage overhead
Key distribution center: In our scheme storage overhead mainly depends on attribute information (version key, attribute identity), KDC’s secret keys used to generate public key and user secret keys & also user’s information to generate user’s secret key etc. All existing scheme required storage of attribute information with public attribute key for the data owner. This is linear with respect to attribute numbers generated by KDCs. Table 3 shows comparison of storage overhead with respect to KDC, data owner, data user and cloud server. In [14, 16, 18, 19, 20] incur more storage overhead over key distribution center compare to our scheme and [17] where [19, 20] are single KDC setup and rest are multiple KDC setup.
Data owner: The storage overhead for the data owner mainly depends on public parameters generated by different KDCs which are used to encrypt the message. The schemes [17, 18, 19] has not support attribute revocation, so the storage for attribute revocation was not consider for those scheme it the data owner initiate user revocation. To update the user these schemes [17, 18, 19] used re-encryption of ciphertext and therefore it operation increased more storage overhead on user. However, in [14, 16, 20] and our scheme, we used attribute revocation. Therefore, attribute revocation properties incurs some more storage for user update. In Table 3, we have shown the comparison storage overhead of data owner for different existing schemes with our scheme.
Data user: The user’s secret key generated by each KDCs incurs storage for data users for our scheme. The schemes [19, 20] support only single KDC setup. Therefore, secret key defined by the key distribution center incur linear storage overhead with the number of attributes. To decrypt the ciphertext in [19, 20] cloud server or fog devices partially compute decryption processes. The scheme [17] and our scheme incur same storage overhead on secret key store and cipher text decryption and also used multiple key distribution centers. These processes incur linearly increased storage with the number of attributes. We have shown the storage overhead of our scheme and other existing schemes in the Table 3.
Cloud server: The size of the cipher text mainly responsible for storage overhead on cloud server. The comparison of existing schemes and our methods for storing the cipher text in cloud are shown in the above mention table.
Computation overhead
Computation overhead
Communication overhead
The computation cost for various operation such as key distribution center setup, secret key generation, key transformation, encryption, decryption, secret key update and ciphertext update. The comparison of different schemes and our scheme for different operation, we have shown in the Tables 4 and 5. Key distribution center mainly responsible to generate the public keys of its own and public key for attributes. It also plays a role to generate the secret key, updated secret key and the key to ciphertext update. The computation cost changes with the operation used in the system. In the Table 4, our scheme has same computation cost asymptotically with [17, 19, 20], where [19, 20] have single authority set up. However the scheme take more computation cost for [14, 16, 18] compare to our scheme. The computation cost for all existing schemes with our scheme have all most similar, but there is some difference in a number of key components inside the secret key. The encryption and decryption cost comparison shown in the Tables 4 and 5. In [14, 20] takes more computation cost comparing to our scheme. For decryption, we have used partial decryption using cloud server and final decryption done by the user who has to satisfy the access structure. In [17], there was no such partial decryption to reduce computation cost for decryption. Moreover, in our scheme, we have not used re-encryption of the whole ciphertext when attribute revokes from the system. There are some components updated with the help of responsible key distribution center in ciphertext computed by the cloud server. Therefore, more efficiency achieves when the attribute revoked from the system.
The communication costs of our LU-ODAC scheme mainly incur when user revocation takes plays. To update the attribute list or revoke an attribute from the system, the related key distribution center needs to communicate with the user, who holds the secret key with the revoked attribute and also the cloud server for update the ciphertext. The communication cost in between KDC and user is
Scalability
Our system, LU-ODAC supports the scalability for joining new users and revoking of existing users as the scheme supported properly the forward and backward security shown above. It is not required in our system that the trusted certified authority support for access control in attribute level, but trusted certified authority required to support for access control in user level such as user registration. When an attribute is revoked from a data user for a specific data decryption, the other attributes are not affected for the revoked user and therefore remaining attributes can use to decrypt the other data. In our system, an attribute may assign to multiple users by a key distribution center, KDC. For a new user, KDC can assigned secret key
Conclusion
A large universe attribute-based encryption makes an access control scheme more scalable and reliable in terms of user accessibility. In this work, we have proposed an access control scheme for cloud data storage providing access right from the data owner hand. The properties of a large universe, multi-authority, computation outsourcing, attribute revocation, etc. are supported by our proposed system. As the decryption process is multiple usable operations, we reduced computation cost by using outsourcing computation. The expressive discussion of security and performance analysis makes our scheme more useful. Our scheme is more applicable to the end user even on lightweight device for decryption operation.
Footnotes
Authors’ Bios
