This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination.
WEI et al.: SECURE AND EFFICIENT ATTRIBUTE-BASED ACCESS CONTROL FOR MULTIAUTHORITY CLOUD STORAGE 3
TAB LE I
A
VERAGE TIMING RESULTS OF OPERATIONS IN PRIME AND
COMPOSITE ORDER GROUPS (UNIT:ms)
Operations Prime order Composite order Ratios
Pairing 5.12 421.43 82.3
Exp. in G 4.21 173.08 42.0
Exp. in G
T
0.62 31.93 51.5
cryptographic primitives, that is, when a user’s decryption key
is compromised, the adversary can extract the secret key from
it and further combine it with subsequent update keys to access
the encrypted data.
B. Our Contribution
In this paper, we construct a novel multiauthority CP-ABE as
a core building of the proposed multiauthority attribute-based
data access control for cloud storage systems. Specifically, our
scheme has the following merits.
1) Our scheme supports scalable and dynamic user revoca-
tion, namely, the overhead of revocation is linear in the
logarithm of the number of revoked users, which is more
efficient than the revocation mechanisms in [3]–[5], [9],
and [14], within which the workload of revocation is lin-
ear in the number of users possessing those nonrevoked
attributes.
2) Throughout the life cycle of our system, the system public
parameter remains unchanged, regardless of removing a
user from the system or adding new attributes into the
system.
3) Our scheme enjoys the desired property of public update
in terms of secret key and ciphertext. First, the update key
generated by the authority is available to all users, but
only nonrevoked users can utilize it to update their secret
keys. Second, the cloud server can update the ciphertext
by just using the public parameter of the system, without
the help of the data owner and the authority.
4) With regard to security, our scheme provides both for-
ward security and backward security, that is, a revoked
user cannot access those encrypted data that were pre-
viously accessible for him/her, and also cannot decrypt
those subsequently encrypted data. In addition, we for-
mally prove the security of the proposed multiauthority
CP-ABE scheme.
5) Our scheme is built upon prime order bilinear groups,
which enables the system to be efficient enough for prac-
tical applications. To show its practicality, we implement
it in Charm,
2
a framework for rapid prototyping of cryp-
tographic primitives.
C. Outline
This paper is structured as follows. In Section II, we intro-
duce the proposed framework of attribute-based data access
control for cloud storage systems. In Section III, we review
the preliminaries used throughout this paper. In Section IV, we
present a concrete construction of multiauthority CP-ABE that
2
[Online]. Available: http://charm-crypto.com
achieves the intended security requirements of the proposed
framework. In Section V, we implement the proposed scheme
to show its practicability. In Section VI, we discuss the possible
extensions of the proposed scheme. The conclusion is given
in Section VII. In the supplementary file,
3
we provide the
corresponding security model, and formally prove the security
of the proposed scheme.
II. F
RAMEWORK OF OUR SYSTEM
A. Overview
In this section, we provide a high-level description of our
framework of multiauthority attribute-based data access control
for cloud storage systems. The system involves the following
entities.
1) Semitrusted third party: It is just in charge of producing
the global public parameter of the system, which is shared
among all authorities and users in the system. Particularly,
it does not keep any s ecret key, and also does not generate
any secret keys for authorities and users. Thus, it makes
no difference on the security of the system.
2) Attribute authority: Each attribute authority indepen-
dently manages its own attribute universe and sets up
its own public parameter and master secret key. It is re-
sponsible for checking the validity of a user’s attributes
belonging to its domain. If yes, it issues a secret key
component to the user according to his/her attributes. In
addition, it is also in charge of periodically generating an
update key for users that are not revoked in its domain.
In our system, any string can be an attribute, and each
attribute belongs to only one authority.
3) Data owner: The data owner is an entity that owns data
and would like to share his/her data by outsourcing them
to cloud servers managed by cloud service providers. A
data owner first defines an intended access policy over
attributes, and enforces it over the data by calling the pro-
posed multiauthority CP-ABE scheme. Then, the owner
sends the encrypted data to cloud servers.
4) User: Each user owns a unique global identifier in the
system, and possesses a set of attributes and the corre-
sponding secret key, which consists of all secret key com-
ponents issued by different attribute authorities (AAs). If
a user is not revoked by an authority at some time period,
he/she can utilize the published update key to update the
corresponding secret key component.
5) Semitrusted cloud server: A cloud server is in charge of
storing and updating those encrypted data from data own-
ers. Here, we emphasize that the update procedure can
be done by just using the public parameter of the sys-
tem (including the global public parameter and the public
parameter of all authorities), without the involvement of
secret information. As in previous works [5], [7], [9], we
assume that it is semitrusted (curious but honest), namely,
it will honestly perform the valid assignments, but will
attempt to learn information about the outsourced data as
much as possible.
3
Supplemental material for the reader can be downloaded online at
http://ieeexplore.ieee.org/