scispace - formally typeset
Search or ask a question
Proceedings ArticleDOI

Ciphertext-Policy Attribute-Based Encryption

TL;DR: A system for realizing complex access control on encrypted data that is conceptually closer to traditional access control methods such as role-based access control (RBAC) and secure against collusion attacks is presented.
Abstract: In several distributed systems a user should only be able to access data if a user posses a certain set of credentials or attributes. Currently, the only method for enforcing such policies is to employ a trusted server to store the data and mediate access control. However, if any server storing the data is compromised, then the confidentiality of the data will be compromised. In this paper we present a system for realizing complex access control on encrypted data that we call ciphertext-policy attribute-based encryption. By using our techniques encrypted data can be kept confidential even if the storage server is untrusted; moreover, our methods are secure against collusion attacks. Previous attribute-based encryption systems used attributes to describe the encrypted data and built policies into user's keys; while in our system attributes are used to describe a user's credentials, and a party encrypting data determines a policy for who can decrypt. Thus, our methods are conceptually closer to traditional access control methods such as role-based access control (RBAC). In addition, we provide an implementation of our system and give performance measurements.

Summary (3 min read)

1 Introduction

  • In many situations, when a user encrypts sensitive data, it is imperative that she establish a specific access control policy on who can decrypt this data.
  • Traditionally, this type of expressive access control is enforced by employing a trusted server to store data locally.
  • In key-policy attribute based encryption, ciphertexts are associated with sets of descriptive attributes, and users’ keys are associated with policies (the reverse of their situation).
  • In the work of [24, 15], collusion resistance is insured by using a secret-sharing scheme and embedding independently chosen secret shares into each private key.
  • This methodology makes use of groups with efficiently computable bilinear maps, and it is the key to their security proof, which the authors give in the generic bilinear group model [6, 28].

3 Background

  • The authors first give formal definitions for the security of ciphertext policy attribute based encryption .
  • Next, the authors give background information on bilinear maps.
  • In these definitions the attributes will describe the users and the access structures will be used to label different sets of encrypted data.

3.1 Definitions

  • The sets in A are called the authorized sets, and the sets not in A are called the unauthorized sets.
  • From now on, unless stated otherwise, by an access structure the authors mean a monotone access structure.
  • The encryption algorithm takes as input the public parameters PK, a message M , and an access structure A over the universe of attributes.
  • Like identity-based encryption schemes [27, 7, 12] the security model allows the adversary to query for any private keys that cannot be used to decrypt the challenge ciphertext.
  • The challenger flips a random coin b, and encrypts Mb under A ∗.

4 Our Construction

  • The authors begin by describing the model of access trees and attributes for respectively describing ciphertexts and private keys.
  • Next, the authors give the description of their scheme.
  • Finally, the authors follow with a discussion of security, efficiency, and key revocation.

4.1 Our Model

  • A party that wishes to encrypt a message will specify through an access tree structure a policy that private keys must satisfy in order to decrypt.
  • Each interior node of the tree is a threshold gate and the leaves are associated with attributes.
  • (We note that this setting is very expressive.the authors.the authors.
  • The authors use the same notation as [15] to describe the access trees, even though in their case the attributes are used to identify the keys (as opposed to the data).
  • The function att(x) is defined only if x is a leaf node and denotes the attribute associated with the leaf node x in the tree.

4.2 Our Construction

  • A security parameter, κ, will determine the size of the groups.
  • These polynomials are chosen in the following way in a topdown manner, starting from the root node R. For any other node x, it sets qx(0) = qparent(x)(index(x)) and chooses dx other points randomly to completely define qx.
  • The key generation algorithm will take as input a set of attributes S and output a key that identifies with that set.
  • If no such set exists then the node was not satisfied and the function returns ⊥.
  • Now that the authors have defined their function DecryptNode, they can define the decryption algorithm.

4.3 Discussion

  • The authors now provide a brief discussion about the security intuition for their scheme , their scheme’s efficiency, and how they might handle key revocation.
  • This value can be blinded out if and only if enough the user has the correct key components to satisfy the secret sharing scheme embedded in the ciphertext.
  • In its simplest form, the decryption algorithm could require two pairings for every leaf of the access tree that is matched by a private key attribute and (at most2) one exponentiation for each node along a path from such a leaf to the root.
  • Since the attributes incorporate an exact date there must be agreement on this between the party encrypting the data and the key issuing authority.
  • This sort of functionality can be realized by extending their attributes to support numerical values and their policies to support integer comparisons.

5.1 Decryption Efficiency Improvements

  • While little can be done to reduce the group operations necessary for the setup, key generation, and encryption algorithms, the efficiency of the decryption algorithm can be improved substantially with novel techniques.
  • The recursive algorithm given in Section 4 results in two pairings for each leaf node that is matched by a private key attribute, and up to one exponentiation for every node occurring along the path from such a node to the root (not including the root).
  • Further improvements may be gained by abandoning the DecryptNode function and making more direct computations.
  • Cpabe-keygen Given a master key, generates a private key for a set of attributes, compiling numerical attributes as necessary.
  • The cpabe toolkit supports the numerical attributes and range queries described in Section 4.3 and provides a familiar language of expressions with which to specify access policies.

5.3 Performance Measurements

  • The authors now provide some information on the performance achieved by the cpabe toolkit.
  • On the test machine, the PBC library can compute pairings in approximately 5.5ms, and exponentiations in G0 and G1 take about 6.4ms and 0.6ms respectively.
  • The running time of cpabe-enc is also almost perfectly linear with respect to the number of leaf nodes in the access policy.
  • This was accomplished by iteratively taking random subsets of the attributes appearing in leaves of the tree and discarding those that did not satisfy it.
  • The performance of cpabe-dec depends on the specific access tree of the ciphertext and the attributes available in the private key, and can be improved by some of the optimizations considered in Section 5.1.

6 Conclusions and Open Directions

  • The authors created a system for Ciphertext-Policy Attribute Based Encryption.
  • The authors system allows for a new type of encrypted access control where user’s private keys are specified by a set of attributes and a party encrypting data can specify a policy over these attributes specifying which users are able to decrypt.
  • Finally, the authors provided an implementation of their system, which included several optimization techniques.
  • The primary challenge in this line of work is to find a new systems with elegant forms of expression that produce more than an arbitrary combination of techniques.
  • One limitation of their system is that it is proved secure under the generic group heuristic.

Did you find this useful? Give us your feedback

Content maybe subject to copyright    Report

HAL Id: hal-01788815
https://hal.archives-ouvertes.fr/hal-01788815
Submitted on 9 May 2018
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entic research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diusion de documents
scientiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.
Ciphertext-Policy Attribute-Based Encryption
John Bethencourt, Amit Sahai, Brent Waters
To cite this version:
John Bethencourt, Amit Sahai, Brent Waters. Ciphertext-Policy Attribute-Based Encryption. 2007
IEEE Symposium on Security and Privacy (SP ’07), May 2007, Berkeley, France. �10.1109/SP.2007.11�.
�hal-01788815�

Ciphertext-Policy Attribute-Based Encryption
John Bethencourt
Carnegie Mellon University
bethenco@cs.cmu.edu
Amit Sahai
UCLA
sahai@cs.ucla.edu
Brent Waters
SRI International
bwaters@csl.sri.com
Abstract
In several distributed systems a user should only be
able to access data if a user posses a certain set of cre-
dentials or attributes. Currently, the only method for
enforcing such policies is to employ a trusted server to
store the data and mediate access control. However, if
any server storing the data is compromised, then the
confidentiality of the data will be compromised. In this
paper we present a system for realizing complex access
control on encrypted data that w e call Ciphertext-Policy
Attribute-Based Encryption. By using our techniques
encrypted data can be kept confidential even if the stor-
age server is untrusted; moreover, our methods are
secure against collusion attacks. Previous Attribute-
Based Encryption systems used attributes to describe
the encrypted data and built policies into user’s keys;
while in our system attributes are used to describe a
user’s credentials, and a party encrypting data deter-
mines a policy for who can decrypt. Thus, our meth-
ods are conceptually closer to traditional access control
methods such as Role-Based Access Control (RBAC).
In addition, we provide an implementation of our sys-
tem and give performance measurements.
1 Introduction
In many situations, when a user encrypts sensitive
data, it is imperative that she establish a specific ac-
cess control policy on who can decrypt this data. For
example, suppose that the FBI public corruption of-
fices in Knoxville and San Francisco are investigating
an allegation of bribery involving a San Francisco lob-
byist and a Tennessee congressman. The head FBI
agent may want to encrypt a sensitive memo so that
only personnel that have certain credentials or at-
Supported the US Army Research Office under the CyberTA
Grant No. W911NF-06-1-0316.
Supported by NSF CNS-0524252 and the US Army Research
Office under the CyberTA Grant No. W911NF-06-1-0316.
tributes can access it. For instance, the head agent
may specify the following access structure for accessing
this information: ((“Public Corruption Office”
AND (“Knoxville” OR “San Francisco”)) OR
(management-level > 5) OR “Name: Charlie
Eppes”).
By this, the head agent could mean that the memo
should only be seen by agents who work at the public
corruption offices at Knoxville or San Francisco, FBI
officials very high up in the management chain, and a
consultant named Charlie Eppes.
As illustrated by this example, it can be crucial that
the person in possession of the secret data be able to
choose an access policy based on specific knowledge of
the under lying data. Furthermore, this person may
not know the exact identities of all other people who
should be able to access the data, but rather she may
only have a way to describe them in terms of descriptive
attributes or credentials.
Traditionally, this type of expressive access control
is enforced by employing a trusted server to store data
locally. The server is entrusted as a reference monitor
that checks that a user presents proper certification be-
fore allowing him to access records or files. However,
services are increasingly storing data in a distributed
fashion across many servers. Replicating data across
several locations has advantages in both performance
and reliability. The drawback of this trend is that it is
increasingly difficult to guarantee the security of data
using traditional methods; when data is stored at sev-
eral locations, the chances that one of them has been
compromised increases dramatically. For these reasons
we would like to require that sensitive data is stored in
an encrypted form so that it will remain private even
if a server is compromised.
Most existing public key encryption methods allow
a party to encrypt data to a particular user, but are
unable to efficiently handle more expressive types of en-
crypted access control such as the example illustrated
above.

Our contribution. In this work, we provide the first
construction of a ciphertext-policy attribute-based en-
cryption (CP-ABE) to address this problem, and give
the first construction of such a scheme. In our system,
a user’s private key will be associated with an arbi-
trary number of attributes expressed as strings. On
the other hand, when a party encrypts a message in our
system, they specify an associated access structure over
attributes. A user will only be able to decrypt a cipher-
text if that user’s attributes pass through the cipher-
text’s access structure. At a mathematical level, ac-
cess structures in our system are described by a mono-
tonic “access tree”, where nodes of the access struc-
ture are composed of threshold gates and the leaves
describe attributes. We note that AND gates can be
constructed as n-of-n threshold gates and OR gates
as 1-of-n threshold gates. Furthermore, we can handle
more complex access controls such as numeric ranges
by converting them to small access trees (see discussion
in the implementation section for more details).
Our techniques. At a high level, our work is sim-
ilar to the recent work of Sahai and Waters [24] and
Goyal et al. [15] on key-policy attribute based encryp-
tion (KP-ABE), however we require substantially new
techniques. I n key-policy attribute based encryption,
ciphertexts are associated with sets of descriptive at-
tributes, and users’ keys are associated with policies
(the reverse of our situation). We stress that in key-
policy ABE, the encryptor exerts no control over who
has access to the data she encrypts, except by her choice
of descriptive attributes for the data. Rather, she must
trust that the key-issuer issues the appropriate keys
to grant or deny access to the appropriate users. In
other words, in [24, 15], the “intelligence” is assumed
to be with the key issuer, and not the encryptor. In our
setting, the encryptor must be able to intelligently de-
cide who should or should not have access to the data
that she encrypts. As such, the techniques of [24, 15]
do not apply to our setting, and we must develop new
techniques.
At a technical level, the main objective that we must
attain is collusion-resistance: If multiple users collude,
they should only be able to decrypt a ciphertext if at
least one of the users could decrypt it on their own. In
particular, referring back to the example from the be-
ginning of this Introduction, suppose that an FBI agent
that works in the terrorism office in San Francisco col-
ludes with a friend who works in the public corruption
office in New York. We do not want these colluders to
be able to decrypt the secret memo by combining their
attributes. This type of security is the sine qua non of
access control in our setting.
In the work of [24, 15], collusion resistance is in-
sured by using a secret-sharing scheme and embedding
independently chosen secret shares into each private
key. Because of the independence of the randomness
used in each invo cation of the secret sharing scheme,
collusion-resistance follows. In our scenario, users’ pri-
vate keys are associated with sets of attributes instead
of access structures over them, and so secret sharing
schemes do not apply.
Instead, we devise a novel private key randomization
technique that uses a new two-level random masking
methodology. This methodology makes use of groups
with efficiently computable bilinear maps, and it is the
key to our security proof, which we give in the generic
bilinear group model [6, 28].
Finally, we provide an implementation of our system
to show that our system performs well in practice. We
provide a description of both our API and the structure
of our implementation. In addition, we provide several
techniques for optimizing decryption performance and
measure our performance features experimentally.
Organization. The remainder of our paper is struc-
tured as follows. In Section 2 we discuss related work.
In Section 3 we our definitions and give background
on groups with efficiently computable bilinear maps.
We then give our construction in Section 4. We then
present our implementation and performance measure-
ments in Section 5. Finally, we conclude in Section 6.
2 Related Work
Sahai and Waters [24] introduced attribute-based
encryption (ABE) as a new means for encrypted ac-
cess control. In an attribute-based encryption system
ciphertexts are not necessarily encrypted to one par-
ticular user as in traditional public key cryptography.
Instead both users’ private keys and ciphertexts will be
associated with a set of attributes or a policy over at-
tributes. A user is able to decrypt a ciphertext if there
is a “match” between his private key and the cipher-
text. In their original system Sahai and Waters pre-
sented a Threshold ABE system in which ciphertexts
were labeled with a set of attributes S and a user’s pri-
vate key was associated with both a threshold param-
eter k and another set of attributes S
. In order for a
user to decrypt a ciphertext at least k attributes must
overlap between the ciphertext and his private keys.
One of the primary original motivations for this was
to design an error-tolerant (or Fuzzy) identity-based
encryption [27, 7, 12] scheme that could use biometric
identities.

The primary drawback of the Sahai-Waters [24]
threshold ABE system is that the threshold semantics
are not very expressive and therefore are limiting for
designing more general systems. Goyal et al. intro-
duced the idea of a more general key-policy attribute-
based encryption system. In their construction a ci-
phertext is associated with a set of attributes and a
user’s key can be associated with any monotonic tree-
access structure.
1
The construction of Goyal et al.
can be viewed as an extension of the Sahai-Waters tech-
niques where instead of embedding a Shamir [26] secret
sharing scheme in the private key, the authority embeds
a more general secret sharing scheme for monotonic ac-
cess trees. Goyal et. al. also suggested the possibility
of a ciphertext-policy ABE scheme, but did not offer
any constructions.
Pirretti et al. [23] gave an implementation of
the threshold ABE encryption system, demonstrated
different applications of attribute-based encryption
schemes and addressed several practical notions such as
key-revocation. In recent work, Chase [11] gave a con-
struction for a multi-authority attribute-based encryp-
tion system, where each authority would administer a
different domain of attributes. The primary challenge
in creating multi-authority ABE is to prevent collusion
attacks between users that obtain key components from
different authorities. While the Chase system used the
threshold ABE system as its underlying ABE system at
each authority, the problem of multi-authority ABE is
in general orthogonal to finding more expressive ABE
systems.
In addition, there is a long history of access control
for data that is mediated by a server. See for exam-
ple, [18, 14, 30, 20, 16, 22] and the references therein.
We focus on encrypted access control, where data is
protected even if the server storing the data is compro-
mised.
Collusion Resistance and Attribute-Based En-
cryption The defining property of Attribute-Based
Encryption systems are their resistance to collusion
attacks. This property is critical for building cryp-
tographic access control systems; otherwise, it is im-
possible to guarantee that a system will exhibit the
desired security properties as there will exist devastat-
ing attacks from an attacker that manages to get a hold
of a few private keys. While we might consider ABE
systems with different flavors of expressibility, prior
work [24, 15] made it clear that collusion resistance
is a required property of any ABE system.
Before attribute-based encryption was introduced
1
Goyal et al. show in addition how to construct a key-policy
ABE scheme for any linear secret sharing scheme.
there were other systems that attempted to address
access control of encrypted data [29, 8] by using se-
cret sharing schemes [17, 9, 26, 5, 3] combined with
identity-based encryption; however, these schemes did
not address resistance to collusion attacks. Recently,
Kapadia, Tsang, and Smith [19] gave a cryptographic
access control scheme that employed proxy servers.
Their work explored new methods for employing proxy
servers to hide policies and use non-monontonic access
control for small universes of attributes. We note that
although they called this scheme a form of CP-ABE,
the scheme does not have the property of collusion re-
sistance. As such, we believe that their work should not
be considered in the class of attribute-based encryption
systems due to its lack of security against collusion at-
tacks.
3 Background
We first give formal definitions for the security
of ciphertext policy attribute based encryption (CP-
ABE). Next, we give background information on bilin-
ear maps. Like the work of Goyal et al. [15] we define
an access structure and use it in our security defini-
tions. However, in these definitions the attributes will
describe the users and the access structures will be used
to label different sets of encrypted data.
3.1 Definitions
Definition 1 (Access Structure [1]) Let
{P
1
, P
2
, . . . , P
n
} be a set of parties. A collection
A 2
{P
1
,P
2
,...,P
n
}
is monotone if B, C : if B A and
B C then C A. An access structure (respectively,
monotone access structure) is a collection (respec-
tively, monotone collection) A of non-empty subsets
of {P
1
, P
2
, . . . , P
n
}, i.e., A 2
{P
1
,P
2
,...,P
n
}
\{∅}. The
sets in A are called the authorized sets, and the sets
not in A are called the unauthorized sets.
In our context, the role of the parties is taken by
the attributes. Thus, the access structure A will con-
tain the authorized sets of attributes. We r estrict our
attention to monotone access structures. However, it
is also possible to (inefficiently) realize general access
structures using our techniques by having the not of an
attribute as a separate attribute altogether. Thus, the
number of attributes in the system will be doubled.
From now on, unless stated otherwise, by an access
structure we mean a monotone access structure.
An ciphertext-policy attribute based encryption
scheme consists of four fundamental algorithms: Setup,
Encrypt, KeyGen, and Decrypt. In addition, we allow
for the option of a fifth algorithm Delegate.

Setup. The setup algorithm takes no input other
than the implicit security parameter. It outputs the
public parameters PK and a master key MK.
Encrypt(PK, M, A). The encryption algorithm
takes as input the public parameters PK, a message
M, and an access structure A over the universe of
attributes. The algorithm will encrypt M and produce
a ciphertext CT such that only a user that possesses a
set of attributes that satisfies the access structure will
be able to decrypt the message. We will assume that
the ciphertext implicitly contains A.
Key Generation(MK, S). The key generation al-
gorithm takes as input the master key MK and a set of
attributes S that describe the key. It outputs a private
key SK.
Decrypt(PK, CT, SK). The decryption algorithm
takes as input the public parameters PK, a ciphertext
CT, which contains an access policy A, and a private
key SK, which is a private key for a set S of attributes.
If the set S of attributes satisfies the access structure
A then the algorithm will decrypt the ciphertext and
return a message M .
Delegate(SK,
˜
S). The delegate algorithm takes as
input a secret key SK for some set of attributes S and
a set
˜
S S. It output a secret key
˜
SK for the s et of
attributes
˜
S.
We now describe a security model for ciphertext-
policy ABE schemes. Like identity-based encryption
schemes [27, 7, 12] the security model allows the ad-
versary to query for any private keys that cannot be
used to decrypt the challenge ciphertext. In CP-ABE
the ciphertexts are identified with access structures and
the private keys with attributes. It follows that in our
security definition the adversary will choose to be chal-
lenged on an encryption to an access structure A
and
can ask for any private key S such that S does not
satisfy S
. We now give the formal security game.
Security Model for CP-ABE
Setup. The challenger runs the Setup algorithm and
gives the public parameters, PK to the adversary.
Phase 1. The adversary makes repeated private keys
corresponding to sets of attributes S
1
, . . . , S
q
1
.
Challenge. The adversary submits two equal length
messages M
0
and M
1
. In addition the adversary
gives a challenge access structure A
such that
none of the sets S
1
, . . . , S
q
1
from Phase 1 satisfy
the access structure. The challenger flips a random
coin b, and encrypts M
b
under A
. The ciphertext
CT
is given to the adversary.
Phase 2. Phase 1 is repeated with the restriction that
none of sets of attributes S
q
1
+1
, . . . , S
q
satisfy the
access structure corresponding to the challenge.
Guess. The adversary outputs a guess b
of b.
The advantage of an adversary A in this game is
defined as Pr[b
= b]
1
2
. We note that the model
can easily be extended to handle chosen-ciphertext at-
tacks by allowing for decr yption queries in Phase 1 and
Phase 2.
Definition 2 An ciphertext-policy attribute-bas ed en-
cryption scheme is secure if all polynomial time adver-
saries have at most a negligible advantage in the above
game.
3.2 Bilinear Maps
We present a few facts related to groups with effi-
ciently computable bilinear maps.
Let G
0
and G
1
be two multiplicative cyclic groups
of prime order p. Let g be a generator of G
0
and e be
a bilinear map, e : G
0
× G
0
G
1
. The bilinear map e
has the following properties:
1. Bilinearity: for all u, v G
0
and a, b Z
p
, we
have e(u
a
, v
b
) = e(u, v)
ab
.
2. Non-degeneracy: e(g, g) 6= 1.
We say that G
0
is a bilinear group if the group op-
eration in G
0
and the bilinear map e : G
0
× G
0
G
1
are both efficiently computable. Notice that the map
e is symmetric since e(g
a
, g
b
) = e(g, g)
ab
= e(g
b
, g
a
).
4 Our Construction
In this section we provide the construction of our
system. We begin by descr ibing the model of access
trees and attributes for respectively describing cipher-
texts and private keys. Next, we give the description
of our scheme. Finally, we follow with a discussion of
security, efficiency, and key revocation. We provide our
proof of security in Appendix A.
4.1 Our Model
In our construction private keys will be identified
with a set S of descriptive attributes. A party that

Citations
More filters
Book ChapterDOI
06 Mar 2011
TL;DR: A new methodology for realizing Ciphertext-Policy Attribute Encryption (CP-ABE) under concrete and noninteractive cryptographic assumptions in the standard model is presented.
Abstract: We present a new methodology for realizing Ciphertext-Policy Attribute Encryption (CP-ABE) under concrete and noninteractive cryptographic assumptions in the standard model Our solutions allow any encryptor to specify access control in terms of any access formula over the attributes in the system In our most efficient system, ciphertext size, encryption, and decryption time scales linearly with the complexity of the access formula The only previous work to achieve these parameters was limited to a proof in the generic group model We present three constructions within our framework Our first system is proven selectively secure under a assumption that we call the decisional Parallel Bilinear Diffie-Hellman Exponent (PBDHE) assumption which can be viewed as a generalization of the BDHE assumption Our next two constructions provide performance tradeoffs to achieve provable security respectively under the (weaker) decisional Bilinear-Diffie-Hellman Exponent and decisional Bilinear Diffie-Hellman assumptions

1,444 citations


Cites background from "Ciphertext-Policy Attribute-Based E..."

  • ...42 greater than that of the BSW system....

    [...]

  • ...In Table 1 we summarize the comparisons between our schemes and the GJPS and BSW CP-ABE systems in terms of ciphertext and 2 The Sahai-Waters construction was given prior to the Key-Policy and CiphertextPolicy distinction; our interpretation is a retrospective one. key sizes and encryption and decryption times....

    [...]

  • ...First, we can view the Sahai-Waters[35] construction most “naturally” as Key-Policy ABE for a threshold gate....

    [...]

  • ...While the BSW construction is very expressive, the proof model used was less than ideal — the authors only showed the scheme secure in the generic group model, an artificial model which assumes the attacker needs to access an oracle in order to perform any group operations1....

    [...]

  • ...Taken all together our first scheme realizes the same efficiency parameters as the BSW encryption scheme, but under a concrete security assumption....

    [...]

Posted Content
TL;DR: In this article, the authors present a new methodology for realizing Ciphertext-Policy Attribute Encryption (CP-ABE) under concrete and noninteractive cryptographic assumptions in the standard model.
Abstract: We present a new methodology for realizing Ciphertext-Policy Attribute Encryption (CP-ABE) under concrete and noninteractive cryptographic assumptions in the standard model. Our solutions allow any encryptor to specify access control in terms of any access formula over the attributes in the system. In our most efficient system, ciphertext size, encryption, and decryption time scales linearly with the complexity of the access formula. The only previous work to achieve these parameters was limited to a proof in the generic group model. We present three constructions within our framework. Our first system is proven selectively secure under a assumption that we call the decisional Parallel Bilinear Diffie-Hellman Exponent (PBDHE) assumption which can be viewed as a generalization of the BDHE assumption. Our next two constructions provide performance tradeoffs to achieve provable security respectively under the (weaker) decisional Bilinear-Diffie-Hellman Exponent and decisional Bilinear Diffie-Hellman assumptions.

1,416 citations

Book ChapterDOI
30 May 2010
TL;DR: In this article, a fully secure attribute-based encryption (ABE) scheme and a predicate encryption (PE) scheme for inner-product predicates were constructed using dual pairing vector spaces.
Abstract: We present two fully secure functional encryption schemes: a fully secure attribute-based encryption (ABE) scheme and a fully secure (attribute-hiding) predicate encryption (PE) scheme for inner-product predicates. In both cases, previous constructions were only proven to be selectively secure. Both results use novel strategies to adapt the dual system encryption methodology introduced by Waters. We construct our ABE scheme in composite order bilinear groups, and prove its security from three static assumptions. Our ABE scheme supports arbitrary monotone access formulas. Our predicate encryption scheme is constructed via a new approach on bilinear pairings using the notion of dual pairing vector spaces proposed by Okamoto and Takashima.

1,363 citations

Book ChapterDOI
25 Jan 2010
TL;DR: This work considers the problem of building a secure cloud storage service on top of a public cloud infrastructure where the service provider is not completely trusted by the customer and describes several architectures that combine recent and non-standard cryptographic primitives to achieve this goal.
Abstract: We consider the problem of building a secure cloud storage service on top of a public cloud infrastructure where the service provider is not completely trusted by the customer We describe, at a high level, several architectures that combine recent and non-standard cryptographic primitives in order to achieve our goal We survey the benefits such an architecture would provide to both customers and service providers and give an overview of recent advances in cryptography motivated specifically by cloud storage

1,333 citations


Additional excerpts

  • ...Improved constructions are given in [25, 27, 10]....

    [...]

Proceedings ArticleDOI
28 Oct 2007
TL;DR: In this paper, an attribute-based encryption (ABE) scheme was proposed that allows a user's private key to be expressed in terms of any access formula over attributes. But this scheme was limited to expressing only monotonic access structures.
Abstract: We construct an Attribute-Based Encryption (ABE) scheme that allows a user's private key to be expressed in terms of any access formula over attributes. Previous ABE schemes were limited to expressing only monotonic access structures. We provide a proof of security for our scheme based on the Decisional Bilinear Diffie-Hellman (BDH) assumption. Furthermore, the performance of our new scheme compares favorably with existing, less-expressive schemes.

1,136 citations

References
More filters
Journal ArticleDOI
TL;DR: This technique enables the construction of robust key management schemes for cryptographic systems that can function securely and reliably even when misfortunes destroy half the pieces and security breaches expose all but one of the remaining pieces.
Abstract: In this paper we show how to divide data D into n pieces in such a way that D is easily reconstructable from any k pieces, but even complete knowledge of k - 1 pieces reveals absolutely no information about D. This technique enables the construction of robust key management schemes for cryptographic systems that can function securely and reliably even when misfortunes destroy half the pieces and security breaches expose all but one of the remaining pieces.

14,340 citations


"Ciphertext-Policy Attribute-Based E..." refers background or methods in this paper

  • ...Next, we give background information on bilinear maps....

    [...]

  • ...However, in these definitions the attributes will describe the users and the access structures will be used to label different sets of encrypted data....

    [...]

Book ChapterDOI
23 Aug 1985
TL;DR: In this article, the authors introduce a novel type of cryptographic scheme, which enables any pair of users to communicate securely and to verify each other's signatures without exchanging private or public keys, without keeping key directories, and without using the services of a third party.
Abstract: In this paper we introduce a novel type of cryptographic scheme, which enables any pair of users to communicate securely and to verify each other’s signatures without exchanging private or public keys, without keeping key directories, and without using the services of a third party. The scheme assumes the existence of trusted key generation centers, whose sole purpose is to give each user a personalized smart card when he first joins the network. The information embedded in this card enables the user to sign and encrypt the messages he sends and to decrypt and verify the messages he receives in a totally independent way, regardless of the identity of the other party. Previously issued cards do not have to be updated when new users join the network, and the various centers do not have to coordinate their activities or even to keep a user list. The centers can be closed after all the cards are issued, and the network can continue to function in a completely decentralized way for an indefinite period.

6,902 citations

Proceedings ArticleDOI
Mihir Bellare1, Phillip Rogaway1
01 Dec 1993
TL;DR: It is argued that the random oracles model—where all parties have access to a public random oracle—provides a bridge between cryptographic theory and cryptographic practice, and yields protocols much more efficient than standard ones while retaining many of the advantages of provable security.
Abstract: We argue that the random oracle model—where all parties have access to a public random oracle—provides a bridge between cryptographic theory and cryptographic practice. In the paradigm we suggest, a practical protocol P is produced by first devising and proving correct a protocol PR for the random oracle model, and then replacing oracle accesses by the computation of an “appropriately chosen” function h. This paradigm yields protocols much more efficient than standard ones while retaining many of the advantages of provable security. We illustrate these gains for problems including encryption, signatures, and zero-knowledge proofs.

5,313 citations

Journal ArticleDOI
TL;DR: This work proposes a fully functional identity-based encryption (IBE) scheme based on bilinear maps between groups and gives precise definitions for secure IBE schemes and gives several applications for such systems.
Abstract: We propose a fully functional identity-based encryption (IBE) scheme. The scheme has chosen ciphertext security in the random oracle model assuming a variant of the computational Diffie--Hellman problem. Our system is based on bilinear maps between groups. The Weil pairing on elliptic curves is an example of such a map. We give precise definitions for secure IBE schemes and give several applications for such systems.

5,110 citations


"Ciphertext-Policy Attribute-Based E..." refers background in this paper

  • ...One of the primary original motivations for this was to design an error-tolerant (or Fuzzy) identity-based encryption [27, 7, 12] scheme that could use biometric identities....

    [...]

  • ...Notice that the map e is symmetric since e(ga, gb) = e(g, g)ab = e(gb, ga)....

    [...]

Proceedings ArticleDOI
30 Oct 2006
TL;DR: This work develops a new cryptosystem for fine-grained sharing of encrypted data that is compatible with Hierarchical Identity-Based Encryption (HIBE), and demonstrates the applicability of the construction to sharing of audit-log information and broadcast encryption.
Abstract: As more sensitive data is shared and stored by third-party sites on the Internet, there will be a need to encrypt data stored at these sites. One drawback of encrypting data, is that it can be selectively shared only at a coarse-grained level (i.e., giving another party your private key). We develop a new cryptosystem for fine-grained sharing of encrypted data that we call Key-Policy Attribute-Based Encryption (KP-ABE). In our cryptosystem, ciphertexts are labeled with sets of attributes and private keys are associated with access structures that control which ciphertexts a user is able to decrypt. We demonstrate the applicability of our construction to sharing of audit-log information and broadcast encryption. Our construction supports delegation of private keys which subsumesHierarchical Identity-Based Encryption (HIBE).

4,257 citations


"Ciphertext-Policy Attribute-Based E..." refers background or methods or result in this paper

  • ...In other words, in [24, 15 ], the “intelligence” is assumed to be with the key issuer, and not the encryptor....

    [...]

  • ...In the work of [24, 15 ], collusion resistance is insured by using a secret-sharing scheme and embedding independently chosen secret shares into each private key....

    [...]

  • ...As such, the techniques of [24, 15 ] do not apply to our setting, and we must develop new techniques....

    [...]

  • ...While we might consider ABE systems with different flavors of expressibility, prior work [24, 15 ] made it clear that collusion resistance is a required property of any ABE system....

    [...]

  • ...Our techniques. At a high level, our work is similar to the recent work of Sahai and Waters [24] and Goyal et al. [ 15 ] on key-policy attribute based encryption (KP-ABE), however we require substantially new techniques....

    [...]

Frequently Asked Questions (14)
Q1. What are the contributions mentioned in the paper "Ciphertext-policy attribute-based encryption" ?

In this paper the authors present a system for realizing complex access control on encrypted data that they call Ciphertext-Policy Attribute-Based Encryption. In addition, the authors provide an implementation of their system and give performance measurements. 

In the future, it would be interesting to consider attribute-based encryption systems with different types of expressibility. The authors believe an important endeavor would be to prove a system secure under a more standard and non-interactive assumption. 

On the test machine, the PBC library can compute pairings in approximately 5.5ms, and exponentiations in G0 and G1 take about 6.4ms and 0.6ms respectively. 

The primary challenge in this line of work is to find a new systems with elegant forms of expression that produce more than an arbitrary combination of techniques. 

the authors would like an attribute-based encryption system to allow a key authority to give out a single key with some expiration dateX rather than a separate key2Fewer exponentiations may occur if there is an unsatisfied internal node along the path. 

Like identity-based encryption schemes [27, 7, 12] the security model allows the adversary to query for any private keys that cannot be used to decrypt the challenge ciphertext. 

When a party encrypts a message on some date Y , a user with a key expiring on date X should be able to decrypt iff X ≥ Y and the rest of the policy matches the user’s attributes. 

In its simplest form, the decryption algorithm could require two pairings for every leaf of the access tree that is matched by a private key attribute and (at most2) one exponentiation for each node along a path from such a leaf to the root. 

the authors can handle more complex access controls such as numeric ranges by converting them to small access trees (see discussion in the implementation section for more details). 

the authors imagine flattening out the tree of recursive calls to DecryptNode, then combining the exponentiations into one per (used) leaf node. 

In an at-4The workstation’s processor is a 64-bit, 3.2 Ghz Pentium 4.tempt to average over this variation, the authors ran cpabe-dec on a series of ciphertexts that had been encrypted under randomly generated policy trees of various sizes. 

It is also possible to construct comparisons between two numerical attributes (rather than an attribute and a constant) using roughly 3n gates, although it is less clear when this would be useful in practice. 

it is also possible to (inefficiently) realize general access structures using their techniques by having the not of an attribute as a separate attribute altogether. 

An ciphertext-policy attribute-based encryption scheme is secure if all polynomial time adversaries have at most a negligible advantage in the above game.