enhancing attribute-based encryption with attribute hierarchy

9
Mobile Netw Appl (2011) 16:553–561 DOI 10.1007/s11036-010-0233-y Enhancing Attribute-Based Encryption with Attribute Hierarchy Jin Li · Qian Wang · Cong Wang · Kui Ren Published online: 7 April 2010 © Springer Science+Business Media, LLC 2010 Abstract Attribute-based encryption (ABE) has been envisioned as a promising cryptographic primitive for realizing secure and flexible access control. However, ABE is being criticized for its high scheme overhead as extensive pairing operations are usually required. In this paper, we focus on improving the efficiency of ABE by leveraging a previously overlooked fact, i.e., the often-found hierarchical relationships among the attributes that are inherent to many access control scenarios. As the first research effort along this direc- tion, we coin the notion of hierarchical ABE (HABE), which can be viewed as the generalization of traditional ABE in the sense that both definitions are equal when all attributes are independent. We further give a con- crete HABE construction considering a tree hierarchy among the attributes, which is provably secure. More importantly, our construction exhibits significant im- provements over the traditional ABE when attribute hierarchies exist. Keywords attribute-based · hierarchy · encryption · access control · pairing J. Li (B ) · Q. Wang · C. Wang · K. Ren Department of ECE, Illinois Institute of Technology, Chicago, IL 60616, USA e-mail: [email protected], [email protected] Q. Wang e-mail: [email protected] C. Wang e-mail: [email protected] K. Ren e-mail: [email protected] 1 Introduction Recently, much attention has been attracted by a new public-key primitive called Attribute-based encryption (ABE). ABE has significant advantage over the tra- ditional PKC primitives as it achieves flexible one- to-many encryption instead of one-to-one. ABE thus is envisioned as an important tool for addressing the problem of secure and fine-grained data sharing and access control. In ABE, the encryption keys and/or ci- phertexts are labeled with sets of descriptive attributes defined for the system users. And a particular user private key can decrypt a particular ciphertext only if the two match. A party could encrypt a document to all users who have a certain set of attributes drawn from a pre-defined attribute universe. For example, one can encrypt a tenure-evaluation related document to all of tenured faculty in computer science department. In this case the document would be encrypted to the attribute subset {“Faculty”, “CS Dept.”, “Tenured”}, and only users with all of these three attributes in the university can hold the corresponding private keys and thus decrypt the document, while others cannot. ABE, on the other hand, is often being criticized for its high scheme overhead as extensive pairing opera- tions are usually required. In this paper, we focus on improving the efficiency of ABE by leveraging a previ- ously overlooked fact, i.e., the often-found hierarchical relationships among the attributes that are inherent to many access control scenarios. The notion of HABE is proposed in this paper to address the tree hierarchy structure, which can be viewed as the generalization of traditional ABE in the sense that both definitions are equal when all attributes are independent. In HABE, the universal attributes are classified into trees accord-

Upload: jin-li

Post on 14-Jul-2016

214 views

Category:

Documents


2 download

TRANSCRIPT

Mobile Netw Appl (2011) 16:553–561DOI 10.1007/s11036-010-0233-y

Enhancing Attribute-Based Encryptionwith Attribute Hierarchy

Jin Li · Qian Wang · Cong Wang · Kui Ren

Published online: 7 April 2010© Springer Science+Business Media, LLC 2010

Abstract Attribute-based encryption (ABE) has beenenvisioned as a promising cryptographic primitive forrealizing secure and flexible access control. However,ABE is being criticized for its high scheme overheadas extensive pairing operations are usually required.In this paper, we focus on improving the efficiencyof ABE by leveraging a previously overlooked fact,i.e., the often-found hierarchical relationships amongthe attributes that are inherent to many access controlscenarios. As the first research effort along this direc-tion, we coin the notion of hierarchical ABE (HABE),which can be viewed as the generalization of traditionalABE in the sense that both definitions are equal whenall attributes are independent. We further give a con-crete HABE construction considering a tree hierarchyamong the attributes, which is provably secure. Moreimportantly, our construction exhibits significant im-provements over the traditional ABE when attributehierarchies exist.

Keywords attribute-based · hierarchy · encryption ·access control · pairing

J. Li (B) · Q. Wang · C. Wang · K. RenDepartment of ECE, Illinois Institute of Technology,Chicago, IL 60616, USAe-mail: [email protected], [email protected]

Q. Wange-mail: [email protected]

C. Wange-mail: [email protected]

K. Rene-mail: [email protected]

1 Introduction

Recently, much attention has been attracted by a newpublic-key primitive called Attribute-based encryption(ABE). ABE has significant advantage over the tra-ditional PKC primitives as it achieves flexible one-to-many encryption instead of one-to-one. ABE thusis envisioned as an important tool for addressing theproblem of secure and fine-grained data sharing andaccess control. In ABE, the encryption keys and/or ci-phertexts are labeled with sets of descriptive attributesdefined for the system users. And a particular userprivate key can decrypt a particular ciphertext only ifthe two match. A party could encrypt a document toall users who have a certain set of attributes drawnfrom a pre-defined attribute universe. For example, onecan encrypt a tenure-evaluation related document toall of tenured faculty in computer science department.In this case the document would be encrypted to theattribute subset {“Faculty”, “CS Dept.”, “Tenured”},and only users with all of these three attributes in theuniversity can hold the corresponding private keys andthus decrypt the document, while others cannot.

ABE, on the other hand, is often being criticized forits high scheme overhead as extensive pairing opera-tions are usually required. In this paper, we focus onimproving the efficiency of ABE by leveraging a previ-ously overlooked fact, i.e., the often-found hierarchicalrelationships among the attributes that are inherent tomany access control scenarios. The notion of HABE isproposed in this paper to address the tree hierarchystructure, which can be viewed as the generalization oftraditional ABE in the sense that both definitions areequal when all attributes are independent. In HABE,the universal attributes are classified into trees accord-

554 Mobile Netw Appl (2011) 16:553–561

ing to their relationship defined in the access controlsystem. Every node in this tree is associated with anattribute, and an ancestral node can derive its descen-dant’s key, but the reverse is not allowed. Assume theattributes form n trees. For attribute ω, we assume itsdepth is k in the i-th tree, and its path from root ωi0

in the i-th tree is defined as (ωi0, ωi1, · · · , ωi,k−1, ωik),where ωik = ω1. We say that ω covers ω′ with path(ω′

j0, ω′j1, · · · , ω′

jk′) if ωiδ = ω′jδ for 0 ≤ δ ≤ k. It means

that ω has higher level priority than ω′ in the accesscontrol system if ω covers ω′. For convenience, we firstdefine some notations. Recall that we wish to create anHABE scheme in which a ciphertext can be decryptedonly by users with the following property: the numberof users’ attributes that cover the attributes includedin ciphertext is no less than a pre-defined number d.Before decryption, the user can get an attribute setU from the attribute center. Assume the ciphertext iscreated with respect to an attribute set U′. The userwith U is able to decrypt the ciphertext for U′ if andonly if the number of attributes in U that cover U′ isno less than d. This kind of ABE could be used indistributed systems so that a user is able to access dataonly if he or she possesses a certain set of credentialsor attributes. To construct such ABE directly withouttaking advantage of the hierarchical structure, the sizeof private key or the ciphertext will grow linearly withthe number of decedents or depth of the attribute. InourHABE, part of attributes are allowed to have hierar-chical tree relationship and the remaining attributes areindependent. Therefore, our construction can achieveboth flexibility and practicality.

1.1 Related work

ABE is one of the important applications of fuzzyidentity-based encryption (fuzzy IBE, in short) [20] pro-posed by Sahai and Waters. In fuzzy IBE, the identityis viewed as a set of descriptive attributes. A userwith secret key for ω is able to decrypt a ciphertextencrypted with ω′ if and only if ω and ω′ are withina certain distance of each other as judged by somemetric. As for [20], this distance is measured by set-overlap between identities. Due to the error-toleranceproperty, fuzzy IBE can be applied to enable encryp-tion by using biometric inputs as identities. To reduce

1In this paper, assume ω is in depth ki of the i-th tree and let itspath be (ωi0, ωi1, · · · , ωi,k−1, ω). For convenience, we will use thenotation ωik instead of ω to denote its position in its path, withoutespecial explanation in the following sections.

the trust of attribute authority, Chase [6] proposeda multi-authority attribute-based encryption scheme.In this protocol, each authority controls some of theattributes, and this scheme can also be extended tosupport tree-structure [11]. Recently, there are severalattempts to construct attribute-based signature in both[15, 17]. They presented attribute (ring) signature toachieve signer privacy. These schemes are not trivialto be constructed by using technique in [9] since theanonymity for user is required.

There are two methods for access control basedon ABE: Key-policy ABE (KP-ABE) and ciphertext-policy ABE (CP-ABE). Both notions are proposedin [11] by Goyal et al. In KP-ABE, each attributeprivate key is associated with an access structure andeach ciphertext is labeled with a set of attributes. Theattribute private key can only decrypt a specific type ofciphertext if the access policy defined in the attributeprivate key matches the attributes listed in the cipher-text. The first KP-ABE construction [11] can realize themonotonic access structures for key policies. To enablemore flexible access policy, Ostrovsky et al. [19] pre-sented the first KP-ABE system that supports the ex-pression of non-monotone formulas in key policies. Ina CP-ABE system, a user’s key is associated with a setof attributes and an encrypted ciphertext will specify anaccess policy over attributes. CP-ABE is different fromKP-ABE in the sense that the encryptor assigns certainaccess policy for the ciphertext. When a message is be-ing encrypted, it will be associated with an access struc-ture over a pre-defined set of attributes. Bethencourt etal. [2] proposed the first CP-ABE construction. How-ever, the construction in [2] is only proved under thegeneric group model. In view of this weakness, Cheungand Newport [7] presented another construction that isproved to be secure under the standard model. Later,in [10], Goyal et al. gave another construction for moreadvanced access structures based on number theoreticassumption. To better protect user privacy, anonymousCP-ABE was constructed in [12] and further improvedin [14, 18]. Recently, the accountability in the ABE-based access control has been considered by [14, 16, 22]to prevent the key-abuse problem, for both CP-ABEand KP-ABE schemes. Boneh and Waters [5] proposeda predicate encryption scheme based on the primi-tive called Hidden Vector Encryption. Their schemecan also realize the anonymous CP-ABE by using theopposite semantics of subset predicates. Katz, Sahai,and Waters [13] proposed a novel predicate encryptionscheme supporting inner product predicates and theirscheme is very general and can realize both KP-ABEand hidden CP-ABE schemes.

Mobile Netw Appl (2011) 16:553–561 555

1.2 Contribution

In this paper, we make the following contributions: (i)The model of HABE is formalized; (ii) To obtain aprovably secure HABE under tree hierarchy, the tech-nique of hierarchical identity-based encryption is uti-lized in combination with the secret sharing techniquesin ABE; (iii) We show through detailed analysis thatour construction is very efficient: the computation costin generation of ciphertext is low and the length of theciphertext is short.

Organization In Section 2, the model for HABE is for-malized, as well as the construction. Its security analy-sis under the established model is also presented. InSection 3, we show how to implement such HABE andgive its efficiency analysis. Section 4 is the concludingremarks.

2 Building blocks: the HABE schemes

2.1 Syntax

In this section, we first give the definition and securitymodel of HABE. Then, a provably secure constructionof HABE is presented. When one encrypts a message mfor a set of target attributes (without loss of generality,letU = {ω1, · · · , ωk}), anyone can decrypt the ciphertextif he has at least d attributes that cover the attributes inU. The distance d should be pre-determined in setupalgorithm, which will be used in the encryption anddecryption algorithms. However, in some applications,the size of d is not fixed. To solve this problem, wewill explain later how to make d flexible for the dis-tance under different scenarios. The definition ofHABEis similar to ordinary ABE through the definition ofoverlap between attributes sets, except that in HABEthe attributes have hierarchical structure. It is assumedthat the universal attributes form hierarchical structureaccording to the definition of access control system.Note that we call an attribute ω covers ω′ if ω = ω′ or ω

belongs to a higher level than ω′.

Definition 1 The HABE scheme consists of four algo-rithms (Setup, KeyGen, Enc, Dec), which are definedas follows:

– Setup: The setup algorithm takes as input secu-rity parameter 1λ, and generates public parameterspara and sk. It retains sk as the secret key forattribute center and outputs para.

– KeyGen(U, para, sk): The private key generationalgorithm takes as input attribute set U, publicparameters para, and sk. It outputs a private keydU.

– Enc(m, U′, para): The encryption algorithm takesas input a message m, attribute set U′, and publicparameters para. It outputs ciphertext C.

– Dec(C, U′, para, U, dU): The decryption algorithmtakes as input a ciphertext C for U′, public parame-ters para, and secret key dU with respect to U. Itfirst checks whether the number of attributes in Uthat cover the attributes from U′ is at least d. If itis true, output the plaintext m with dU. Otherwise,output a symbol of ⊥.

2.2 Security model

Because the HABE can be viewed as a generalizationof ordinary ABE, the security requirements for HABEis also indistinguishable against adaptively chosen at-tributes and chosen ciphertext attacks (IND-Atr-CCA).Description of the security game is the same as ABE,except that the attributes here are hierarchical. The for-mal definition of IND-Atr-CCA is based on the followinggame involving an adversary A.

Game IND-Atr-CCA

– Setup(d) The challenger chooses a sufficiently largesecurity parameter 1λ and runs Setup to get a keypair (pk, sk) and other public parameters para. Itretains secret key sk and gives pk, para to A.

– Phase 1 A can perform a polynomially boundednumber of queries in an adaptive manner to theoracles, including attribute private key extractionoracle and ciphertext decryption oracle.

– Challenge A outputs a target attribute set U∗ andtwo messages m0, m1 on which it wishes to be chal-lenged. The only restriction is that A did not previ-ously issue a key query on U such that the numberof attributes in U that cover the attributes in U∗ isnot less than d. The challenger randomly chooses abit b ∈ {0, 1}, computes C = Enc(mb ,U∗,para) andsends C to A.

– Phase 2 A can perform a polynomially boundednumber of queries to the decryption and privatekey extraction oracles in an adaptive manner. A isnot allowed to issue decryption query on (C,U) orprivate key query on an attribute setU such that thenumber of attributes in U that cover the attributesin U∗ is not less than d.

– Guess A outputs a guess bit b ′.

556 Mobile Netw Appl (2011) 16:553–561

A wins the game if b = b ′. The advantage of A ingame IND-Atr-CCA is defined as the probability that Awins the game minus 1/2.

Definition 2 We say that an HABE scheme is IND-Atr-CCA secure if there is no adversary A can win the gamewith non-negligible probability.

In this paper, we also use a weaker notion calledindistinguishable against selective attributes and cho-sen plaintext attacks (IND-sAtr-CPA). The definitionis similar to IND-Atr-CCA, except here it requires theadversary to submit its challenge target attribute setU∗ before the setup phase. Furthermore, according tothe definition of chosen plaintext attack, the decryp-tion oracle is not available to the adversary. Also, theattributes in the challenge ciphertext should be chosenin different hierarchy components. Description of thesecurity game is described based on the following gameinvolving an adversary A.

Game IND-sAtr-CPA

– Initial Phase The adversary A chooses a challengeattribute set U∗ and the threshold d. U∗ and d willbe sent to the challenger before the setup phase.

– Setup(d) After receiving U∗ and d, the challengerchooses a sufficiently large security parameter 1λ

and runs Setup to get a key pair (pk, sk) and otherpublic parameters para. It retains secret key sk andgives pk, para to A.

– Phase 1 A can perform a polynomially boundednumber of queries in an adaptive manner attributeprivate key extraction oracle.

– Challenge A outputs a target attribute set U∗ andtwo messages m0, m1 on which it wishes to be chal-lenged. The only restriction is that A did not previ-ously issue a key query on U such that the numberof attributes in U that cover the attributes in U∗ isnot less than d. The challenger randomly chooses abit b ∈ {0, 1}, computes C = Enc(mb ,U∗,para) andsends C to A.

– Phase 2 A can perform a polynomially boundednumber of queries to the private key extractionoracle in an adaptive manner. A is not allowed toissue private key query on an attribute set U suchthat the number of attributes in U that cover theattributes in U∗ is not less than d.

– Guess A outputs a guess bit b ′.

A wins the game if b = b ′. The advantage of A ingame IND-sAtr-CPA is defined as the probability that Awins the game minus 1/2.

Definition 3 We say that an HABE scheme is IND-sAtr-CPA secure if there is no adversary A can win the gameabove with non-negligible probability.

Actually, the selective model has been used in manyother papers to get hierarchical identity-based encryp-tion [3]. However, it is still an open problem to con-struct efficient and fully secure schemes without theselective secure model in hierarchical identity-basedencryption.

2.3 HABE scheme with tree hierarchy

In this construction, the attributes are assumed to bedivided into n trees with roots ω10, · · · , ωn0. For thetree with root ωi0, we assume its depth is �i. Let ωik

be an attribute of depth k with path (ωi0, · · · , ωik) fromroot ωi0. We show how the attributes are categorizedand constructed in Fig. 1. In this figure, the attributeswith blue nodes are issued to a user. This attributeprivate key is valid for the ciphertext with respect toattribute with red arrow path which starts from the bluenode. It is easy to verify that this construction is indeeda generalization of ABE. When all attributes are inde-pendent, i.e., they do not have any relationship for ac-cess control, the construction is just an ordinary ABE.Similar to other constructions of ABE, the number d,which will be used as the distance for the decryption,should be chosen and defined in setup algorithm.

We now give a brief review on the property of pair-ings and its related hard problems that will be used inthis paper. Let G1, G2 be cyclic groups of prime orderp, writing the group action multiplicatively. Let g be a

10 20 0{ , ,..., }nw w w

11w

10w

12w

11( –1)lw

11lw

0nw

1nw

2nw

( 1nn l – )w

nnlw

Fig. 1 Hierarchical attribute structure

Mobile Netw Appl (2011) 16:553–561 557

generator of G1, and e : G1 × G1 → G2 be a map withthe following properties:

1). Bilinearity: e(ga1, gb

2 ) = e(g1, g2)ab for all g1, g2 ∈

G1, and a, b ∈R Z p;2). Non-degeneracy: there exists g1, g2 ∈ G1 such that

e(g1, g2) �= 1, in other words, the map does notsend all pairs in G1 × G1 to the identity in G2;

3). Computability: There is an efficient algorithm tocompute e(g1, g2) for all g1, g2 ∈ G1.

Throughout this paper, we assume that there is atrusted setup algorithm that takes as input a securityparameter 1λ and outputs the setup (p, G1, G2, g, e),where group G1 =< g > of prime order p has a bilin-ear map e, and e(g, g) generates G2 (which also hasorder p). We also define the Lagrange coefficient �i,S

for i ∈ Z p and a set S with elements in Z p:

�i,S =∏

η∈S,η �=i

x − η

i − η

Setup (d) Let G1 be the bilinear group of prime orderp and g be a generator of G1. Additionally, let e :G1 × G1 → G2 be a bilinear map. Assume there are Nattributes in universe and n trees are formed based onthe relationship of these attributes defined in the accesscontrol system. Define a hash function H : {0, 1}∗ →Z ∗

p. Let U0 = {ω10, · · · , ωn0} be the root attribute set.Assume the maximum depth of the i-th tree is �i

for 1 ≤ i ≤ n, and � = max{�1, · · · , �n}. We can chooseα from Z p and compute g1 = gα . Meanwhile, wechoose random elements g2, u′

1, · · · , u′n, u1, · · · , u� from

group G1.The public parameters are para = (g, g1, g2, e,

(u′i)1≤i≤n, (ui)1≤i≤�). The master key is α.

KeyGen To generate a private key for attribute set U,it proceeds as follows:

– A d − 1 degree polynomial q is randomly chosensuch that q(0) = α;

– For each ω ∈ U, assume its depth is k in the i-th treewith path (ωi0, ωi1, · · · , ωi,k−1, ω). It chooses r ∈R

Z p and computes Dω = (di0, di, di,ki+1, · · · , di�i ),where di0 = gq(H(ω))

2 (u′i

kj=1u

ωij

j )r, di = gr, di,k+1 =ur

k+1, · · · , di�i = ur�i

;– Finally, it outputs the private key of U as

dU = {Dω}ω∈U

Enc To encrypt a message m ∈ G2 to an attribute setU′, it proceeds as follows. First, a random value s ∈ Z p

is chosen. For each ω′ ∈ U′, assume its depth is k′ in thej-th tree. Let the path for ω′ be (ω j0, ω

′j1, · · · , ω′

j,k′−1, ω′).It computes E′ = me(g1, g2)

s and T = gs. Furthermore,

it computes Eω′ = (u′j

∏k′δ=1 u

ω′jδ

δ )s for each ω′ ∈ U′ andoutputs the ciphertext as

C = (E′, T, {Eω′ })for all ω′ ∈ U′.

Dec Suppose that a ciphertext E is encrypted to theattribute set U′. Assume one has a private key dU ={Dω}ω∈U for attribute set U such that the number ofattributes in U that cover the attributes in U′ is noless than d. Then, it chooses an arbitrary d-elementsubset S with elements in U. For each ω in S withpath (ωi0, ωi1, · · · , ωi,k−1, ω), assume ω′ is the attributein U′ covered by ω with path from the same root ωi0 as(ωi0, ω

′i1, · · · , ω′

i,k′−1, ω′) (It implies the depth for ω′ is k′in the j-th tree). Then, we have ωiδ = ω′

iδ for 1 ≤ δ ≤ k.

Finally, it computes d′i0 = di0d

ω′i,k+1

i,k+1 · · · dω′

ik′ik′ and decrypts

the ciphertext as

m = E′/∏

ω∈S

(e(d′

i0, T)

e(di, Eω′))H(ω),S(0)

2.4 Security result

Before giving the security result, we introduce the De-cisional �-wBDHI* Assumption used in [1].

Decisional �-wBDHI* problem The Decisional �-wBDHI* Problem is that, given g, y1 = gx, · · · , y� =gx� ∈ G1 for unknown random x ∈ Z ∗

p and T ∈ G2, to

decide if T = e(g, g)x�+1.

We say that a polynomial-time adversary A has ad-vantage ε in solving the Decisional �-wBDHI* Prob-lem in groups (G1, G2) if | Pr[A(g, y1 = gx, · · · , y� =gx�

, e(g, g)x�+1) = 1]- Pr [A(g, y1 = gx, · · · , y� = gx�

,e(g, g)z) = 1] | ≥ 2ε, where the probability is taken overthe randomly chosen x, z and the random bits con-sumed by A.

Decisional �-wBDHI* assumption We say that the(t, ε)-�-wBDHI* assumption holds in (G1, G2) if not-time algorithm has the probability at least ε in solvingthe �-wBDHI* problem for non-negligible ε.

Theorem 1 Under the �-wBDHI* assumption, the HABEscheme is indistinguishable secure against selective at-tribute chosen plaintext attack.

Proof See Appendix ��

2.5 HABE scheme with flexible threshold d

Similar to [20], we have two methods to obtain flexibled. First, we can create multiple systems with different

558 Mobile Netw Appl (2011) 16:553–561

values of d. Then, each user will be issued all theattribute private keys with k ≤ d. One can encryptmessage by choosing the appropriate value d.

In the second method, the attribute authority willreserve some root attributes, that is, dummy attributes,which will be issued to everyone. The party encryptingthe message can decrease d by increasing the number ofthese dummy attributes included in the ciphertext. Weshow the construction as follows:

Setup (d) The algorithm of Setup is similar to thescheme in Section 2.3. The difference is that, in thisscheme, a d − 1 default set V of attributes from Z p,� = {�1, �2, · · · , �d−1}, is given additionally. Mean-while, we also choose random elements v0, v

′1, · · · , v′

d−1from group G1.

The public parameters are para = (g, g1, g2, e,v′

1, · · · , v′d−1, (u′

i)1≤i≤n, (ui)1≤i≤�). The master key is α.

KeyGen To generate a private key for attribute set U,it proceeds as follows:

– A d − 1 degree polynomial q is randomly chosensuch that q(0) = α;

– For each ω ∈ V, compute Dω = (di0, di), wheredi0 = gq(H(ω))

2 (v0v′i)

r, di = gr;– For each ω ∈ U, assume its depth is k in the i-th tree

with path (ωi0, ωi1, · · · , ωi,k−1, ω). It chooses r ∈R

Z p and computes Dω = (di0, di, di,ki+1, · · · , di�i ),where di0 = gq(H(ω))

2 (u′i

kj=1u

ωij

j )r, di = gr, di,k+1 =ur

k+1, · · · , di�i = ur�i

;– Finally, it outputs the private key of U as

dU = {Dω}ω∈U∪V

Enc To encrypt a message m ∈ G2 to an attribute setU′ with threshold d′ satisfying d′ ≤ d, it proceeds asfollows. First, a random value s ∈ Z p and d − d′ defaultattribute set V ′ from V are chosen.

– For each ω′ ∈ V ′, it computes (v0v′i)

s;– For each ω′ ∈ U′, assume its depth is k′ in the

j-th tree. Let the path for ω′ be (ω j0, ω′j1, · · · ,

ω′j,k′−1, ω′). It computes E′ = me(g1, g2)

s, T = gs,

and Eω′ = (u′j

∏k′δ=1 u

ω′jδ

δ )s;– Finally, it outputs the ciphertext as

C = (E′, T, {Eω′ })

for all ω′ ∈ U′ ∪ V ′.

The decryption algorithm is similar to the construc-tion in Section 2.3. The user can decrypt and get

the message if the number of intersection of hisattributes, including the default attributes, is not lessthan d.

2.6 HABE scheme with multiple authorities

The deployment implications of the HABE may notbe entirely realistic because it relies on the existenceof a single trusted party who monitors all attributesand issues all decryption keys. Instead, we often havedifferent entities responsible for monitoring differentattributes of a user. To reduce the trust of attributeauthorities, Chase [6] proposed a multi-authority ABEscheme which supports many different authorities op-erating simultaneously, each handing out secret keysfor a different set of attributes. To prevent collusion insuch a setting, each user is required to have a uniqueglobal identifier (GID), which they must present toeach authority. To extend our HABE scheme to multi-authority one, the technique of [6] can be applied inour scheme. More specifically, each user will have aglobal identifier and each attribute authority will issuean attribute private key based on this same identifier.The encryption and decryption proceed in a similar wayas our HABE scheme, thus, they are omitted here.

2.7 The IND-Atr-CPA secure HABE scheme

In order to get IND-Atr-CPA HABE from IND-sAtr-CPA,the direct technique is to use random oracle model.However, this will give security reduction loose (qH)n.

In order to avoid the usage of random oracle model,we can use the technique of [23], i.e., replace each ele-ment ui in setup algorithm by u1

i , · · · , umi . Meanwhile,

for any m-bit attribute ω = (ω1, · · · , ωm)∈ {0, 1}m, uωi is

replaced by∏m

k=1(uki )

ωk . The revised structural attributebased encryption could be proved to be secure withoutrandom oracles. This secure construction loses a factorexponential in � in the reduction to the underlyingassumption. This limits the secure use of our schemesto very small hierarchy depths. This restriction is notso surprising because that HABE schemes are in facta generalization of HIBE schemes, and that the samerestriction arises in all currently-known HIBE construc-tions . It is still an open problem.

2.8 How to get CCA-secure HABE scheme

The most efficient transformation from IND-sAtr-CPAto IND-sAtr-CCA is to use the Fujisaki–Okamoto tech-nique [8], which adds only a little computation on theoriginal HABE scheme. So, the resulted IND-sAtr-CCA

Mobile Netw Appl (2011) 16:553–561 559

HABE construction is very efficient. However, it canonly be proved to be secure in the random oraclemodel.

In order to achieve IND-sAtr-CCA security inthe standard model, we can use the technique ofsimulation-sound NIZK proofs [21]. However, it is notefficient because of NIZK proofs. Another efficienttechnique we can use is the idea from [4], which showedhow a CCA-secure encryption scheme can be builtfrom weakly-secure (IND-sID-CPA) ID-based encryp-tion scheme. The idea of our construction is similarfrom using a � + 1-level CPA-secure HIBE to construct�-level CCA-secure HIBE. In fact, HABE shares a lotof similarities with HIBE. Entities of both HABE andHIBE are hierarchical. For this technique, it requiresa message authentication code and an encapsulationscheme. For details, please refer to [4].

3 Implementation and efficiency analysis

In the HABE with tree hierarchy, the attributes arefirst classified according to the relationships defined inthe access control system. Assume there are n treesformed by part of universal attributes, and the remain-ing attributes are independent as the ordinary ABE.Actually, the independent attributes can be also viewedas trees with only roots, which is a special case fromour HABE construction. Each attribute belongs to onlyone different tree. In HABE, the private key of higherlevel attributes can be utilized to decrypt the ciphertextfor lower attributes. Similar to other ordinary ABEschemes, the encryptor defines the attributes set in-cluded in the ciphertext. The users are issued privatekeys of some attributes by the attribute center. If theuser has several attributes belonging to the same path,then, only the highest level attribute will be issued. Thisis because in this access control system, the highest levelattribute will cover all of its decedents in decryption.In ciphertext, the case is opposite. If there are severalattributes belonging to the same path, only the lowestattribute will be included to create the ciphertext. Thisis because if one user has a private key for a higher levelattribute, he or she can definitely decrypt the ciphertextfor the lower level attributes. From the private key is-suing, we can also understand the rule of this ciphertextgeneration. In decryption algorithm, only users with atleast d of attributes that cover the attributes in cipher-text can decrypt the ciphertext. In our construction,the ciphertext consists of only 2 + k group elements,where k is the size of user’s attributes. If we directlyapply the ABE here to realize the attribute hierarchicalstructure, 2 + k + �k

i=1 Ni group elements will be re-

quired in the ciphertext, where Ni is the number of thei-th target attribute’s ancestors. There is also anotherway to reduce the ciphertext size by just issuing keyswith all decedents of the user’s attributes. However, theattribute private key size will be 2(k + N′

i), where N′i is

the number of the i-th target decedents.

4 Conclusion and future work

ABE has been applied extensively to the area of accesscontrol. However, the application of ABE is limiteddue to its high scheme overhead as extensive pairingoperations are usually required.

In this paper, we focus on improving the efficiencyof ABE by leveraging a previously overlooked fact,i.e., the often-found hierarchical relationships amongthe attributes that are inherent to many access controlscenarios. As the first research effort along this direc-tion, we coin the notion of hierarchical ABE (HABE),which can be viewed as the generalization of traditionalABE in the sense that both definitions are equal whenall attributes are independent. We further give a con-crete HABE construction considering a tree hierarchyamong the attributes, which is provably secure. Moreimportantly, our construction can exhibit significantimprovement over the traditional ABE when attributehierarchies exist.

This paper is the first work to address how to im-prove ABE by considering the relationships amongthe attributes. There are still several interesting openproblems in this topic: 1) How can we construct moreefficient schemes with attribute tree hierarchical struc-ture? 2) How can we improve ABE by designingconstructions dealing with more general relationshipsamong the attributes in universe? In this paper, weconsider the most common attributes structure, i.e., treestructure. Other attributes structure, such as partial-order tree, can also be utilized in some scenarios.Therefore, how to design ABE for more general at-tributes structure is our future work.

Acknowledgement This work was supported in part by the USNational Science Foundation under grant CNS-0831963.

Appendix: Proof of Theorem 1

Proof Assume that an attacker A breaks IND-sAtr-CPAwith probability greater than ε within time t by makingqd private key extraction queries. Assume the attributesin universe form n trees. Denote depth of the i-th tree as�i for 1 ≤ i ≤ n, and let � = max{�1, · · · , �n}. We showthat using A, one can construct a �-wBDHI* attacker

560 Mobile Netw Appl (2011) 16:553–561

A′. Let g be a generator of G1 and yi = gxi. Suppose

that A′ is given (g, e, G1, G2, h, y1, · · · , y�, T), whereT is either e(g, g)x�+1

or e(g, g)γ for random γ ∈ Z p,as an instance of the �-wBDHI* problem. By ε′ and t′,we denote winning probability and running time of A′,respectively. A is first given the attributes relationshiptrees for the access control system in advance. Then,algorithm A′ works by interacting with A in a selectiveidentity game as follows:

Suppose that A outputs challenge attributes U∗. Let| U∗ |= υ and U∗ = (ω∗

i1 , · · · , ω∗iυ ) with the depth k1, · · · ,

kυ , respectively. The path for ω∗ is defined as (ω∗i0, · · · ,

ω∗i,ki−1, ω∗) with depth ki from the root ω∗

i0 in the i-thtree. Upon receiving the challenge attributes, A′ setsg1 = y1, g2 = y�, and ui = y�−i+1 for 1 ≤ i ≤ �.

For any i �∈ {i1, · · · , iυ}, it chooses ai from Z ∗p and set

u′i = gai .

For i ∈ {i1, · · · , iυ}, let u′i = gai/

kiδ=1 y

ω∗iδ

�−i+1.para=(g, e, G1, G2, g1, g2, d, (u′

i)1≤i≤n , (ui)1≤i≤�) isgiven to A.

A′ answers A’s attributes private key extractionqueries as follows. Upon receiving a private key ex-traction query on U, it constructs an attributes subset� from U such that the attributes in � cover attributesin U∗. We also define �′ such that � ⊆ �′ ⊆ U and| �′ |=d − 1. Let S = �′ ∪ {0}. For each ω ∈ �′, a ran-dom value μ is chosen and let q(H(ω)) = μ.

Then, the d − 1 degree polynomial functionq(z) could be determined from these d − 1 valuetogether with q(0) = x. By using interpolation,for ω �∈ S, q(H(ω)) = �ω∈�′�ω,S(H(ω))q(H(ω)) +�0,S(H(ω))q(0). So, the simulator can calculate theprivate key for ω ∈ S as Dω = (di0, di, di,ki+1, · · · ,

di�i ), where di0 =gq(H(ω))

2 (u′i

kij=1u

ωij

j )r, di =gr, di,ki+1 =ur

ki+1, · · · , di�i = ur�i

by choosing randomly r ∈ Z ∗p.

Thus, the simulator can calculate the private key Dω

for ω �∈ S as follows:For (ω j0, ω j1, · · · , ω jt j), if j ∈ {i1, · · · , i�}, there is at

least one 1 ≤ γ ≤ t j, such that ω jγ �= ω∗jγ . It chooses

r j = −�0,S( j )xa j

+ r′j and outputs the simulated private

key as(

g�i∈�′ �i,S( j )q( j )+ −�0,S( j )b jγ ω∗

jγ ω jγω∗

jγ −ω jγ

2 g(1− ω jγ

ω∗jγ

)r′j

1 gb jγ ω jγ r j

∏k j

k�=γ,k=1(g1u jk)r′

j , g

−�0,S( j )ω∗jγ

ω∗jγ −ω jγ

2 gr′j , ur

k j+1, · · · , ur� j

).

If j �∈ {i1, · · · , i�}, then let r j = −�0,S( j )xa j

+ r′j. Finally,

it outputs the simulated private key as (g� j∈�′ � j,S(i)q( j )2

g−�0,S( j )

a j

2 ur′

j

j

∏k j

δ=1(g1u jδ)r jδ , g

−�0,S( j )a j

2 gr′j , ur

k j+1, · · · , ur� j).

After these interactions, A outputs two messagesm0, m1 and U∗. A′ picks a random bit b ∈ {0, 1} and re-sponds with the ciphertext as C = (Tmb , y1, {y

a j

1 }1≤ j≤v).

The ciphertext is simulated correctly if T = e(g, g)x�+1

because let s = x, the ciphertext could be written as

C = (me(g1, g2)s, gs, {(u′

j

∏kδ

δ=1 uω∗

j

δ )s}) for each ω ∈ U. Aissues more private key queries U, restriction is that Uis not covered by U∗. A′ responds as before.

This completes the description of algorithm A′. Fi-nally, A outputs guess b ′ with advantage ε′. If A′ doesnot abort, then, A′ outputs b ′ as the result to the �-wBDHI* problem. Since A has an advantage ε in at-tacking the scheme, from the simulation, we can inferthat A′ can solve the �-wBDHI* problem with advantageε′ ≈ ε. ��

References

1. Boneh D, Boyen X, Goh E (2005) Hierarchical identity basedencryption with constant ciphertext. In: EUROCRYPT’05.LNCS 3494. Springer, New York, pp 440–456

2. Bethencourt J, Sahai A, Waters B (2007) Ciphertext-policyattribute-based encryption. In: IEEE symposium on securityand privacy’07. IEEE, Washington, DC, pp 321–334

3. Boneh D, Boyen, X (2004) Efficient selective-ID secureidentity based encryption without random oracles. In:EUROCRYPT’04. LNCS 3027. Springer, New York, pp 223–2382004

4. Boneh D, Canetti R, Halevi S, Katz J (2007) Chosen-ciphertext security from identity-based encryption. SIAM JComput 36(5):1301–1328

5. Boneh D, Waters B (2007) Conjunctive, subset, and rangequeries on encrypted data. In: TCC’07. LNCS 4392. Springer,pp 535–554

6. Chase M (2007) Multi-authority attribute based encryp-tion. In: TCC’07. LNCS 4392. Springer, New York, pp 515–534

7. Cheung L, Newport C (2007) Provably secure ciphertext pol-icy ABE. In: CCS’07, Proceedings of the 14th ACM confer-ence on Computer and communications security. ACM, NewYork, pp 456–465

8. Fujisaki E, Okamoto T (1999) Secure integration of asym-metric and symmetric encryption schemes. In: CRYPTO’99.LNCS 1666. Springer, New York, pp 537–554

9. Galindo D, Herranz J, Kiltz E (2006) On the generic con-struction of identity-based signatures with additional proper-ties. In: ASIACRYPT’06. LNCS 4284. Springer, New York,pp 178–193

10. Goyal V, Jain A, Pandey O, Sahai A (2008) Bounded cipher-text policy attribute based encryption. In: ICALP’08. LNCS5126, pp 579–591

11. Goyal V, Pandey O, Sahai A, Waters B (2006) Attribute-based encryption for fine-grained access control of encrypteddata. In: CCS’06. ACM, New York, pp 89–98

12. Kapadia A, Tsang PP, Smith SW (2007) Attribute-basedpublishing with hidden credentials and hidden policies. In:Proc of network and distributed system security symposium(NDSS), pp 179–192

13. Katz J, Sahai A, Waters B (2008) Predicate encryption sup-porting disjunctions, polynomial equations, and inner prod-ucts. In: EUROCRYPT’08. LNCS 4965. Springer, New York,pp 146–162

Mobile Netw Appl (2011) 16:553–561 561

14. Li J, Ren K, Zhu B, Wan Z (2009) Privacy-aware attribute-based encryption with user accountability. In: proceeding ofISC’09, pp 347–362

15. Li J, Kim K (2008) Attribute-based ring signature. Availableat http://eprint.iacr.org/2008/394

16. Li J, Ren K, Kim K (2009) A2BE: accountable attribute-based encryption for abuse free access control. Available athttp://eprint.iacr.org/2009/118

17. Maji H, Prabhakaran M, Rosulek M (2008) Attributebased signatures: achieving attribute privacy and collusion-resistance. Available at http://eprint.iacr.org/2008/328

18. Nishide T, Yoneyama K, Ohta K (2008) ABE withpartially hidden encryptor-specified access structure. In:ACNS’08. LNCS 5037. Springer, New York, pp 111–129

19. Ostrovsky R, Sahai A, Waters B (2007) Attribute-based en-cryption with non-monotonic access structures. In: CCS’07.ACM, New York, pp 195–203

20. Sahai A, Waters B (2005) Fuzzy identity-based encryption.In: EUROCRYPT’05. LNCS 3494. Springer, New York, pp457–473

21. Sahai A (1999) Non-malleable non-interactive zero knowl-edge and adaptive chosen ciphertext security. In: IEEE sympon foundations of computer science

22. Yu S, Ren K, Lou W, Li J (2009) Defending against keyabuse attacks in KP-ABE enabled broadcast systems. In:Securecomm’09

23. Waters B (2005) Efficient identity-based encryption withoutrandom oracles. In: EUROCRYPT’05. LNCS 3494. Springer,New York, pp 114–127