Method and apparatus for achieving fine-grained access control with discretionary user revocation over cloud data
AssigneeArizona Board of Regents on behalf of Arizona State University
InventorsDijiang Huang, Jim Luo, Myong Hoon Kang, Qiuxiang Dong
Life of this patent
Estimating the term…
Abstract
A method for a data owner to enforce attribute-based and discretionary access control over a cloud-based data store by specifying an access policy, creating a plurality of users with attributes that satisfy the access policy, and revoking one or more of the plurality of users by embedding their respective identities as revoked into a ciphertext, whereby only those of the plurality of users whose attributes satisfy the access policy and that are not revoked can decrypt the ciphertext.
Claims14
A method for a data owner to enforce attribute-based and discretionary access control to a cloud-based data store, the method comprising:
- specifying an access policy;
- creating a plurality of users with attributes that satisfy the access policy;
- revoking one or more of the plurality of users by embedding their respective identities as revoked into a ciphertext;
- allowing only those of the plurality of users whose attributes satisfy the access policy and that are not revoked to decrypt the ciphertext;
- encrypting data under a set of access policies including the specified access policy;
- wherein revoking one or more of the plurality of users by embedding their respective identities as revoked into a ciphertext comprises:
- creating a set of revoked user identities;
- transmitting the set of access policies and the set of revoked user identities to a cloud server operated by a cloud-storage service provider;
- encrypting a data encrypting key (DEK), wherein the DEK is a symmetric data encryption key K, using an Attribute-Based Encryption (ABE) scheme;
- encrypting data using the DEK with a symmetric encryption scheme, thereby creating a symmetric encryption ciphertext of data M;
- and
- transmitting an ABE ciphertext of K and the symmetric encryption ciphertext of the data M to the cloud-storage service provider for storage.
Non-transitory computer readable storage media having instructions stored thereon that, when executed by a processor of a system, the instructions cause the system to perform operations for a data owner to enforce attribute-based and discretionary access control to a cloud-based data store, comprising:
- specifying an access policy;
- creating a plurality of users with attributes that satisfy the access policy;
- revoking one or more of the plurality of users by embedding their respective identities as revoked into a ciphertext;
- allowing only those of the plurality of users whose attributes satisfy the access policy and that are not revoked to decrypt the ciphertext;
- encrypting data under a set of access policies including the specified access policy;
- wherein revoking one or more of the plurality of users by embedding their respective identities as revoked into a ciphertext comprises:
- creating a set of revoked user identities;
- transmitting the set of access policies and the set of revoked user identities to a cloud server operated by a cloud-storage service provider;
- encrypting a data encrypting key (DEK), wherein the DEK is a symmetric data encryption key K, using an Attribute-Based Encryption (ABE) scheme;
- encrypting data using the DEK with a symmetric encryption scheme, thereby creating a symmetric encryption ciphertext of data M;
- and
- transmitting an ABE ciphertext of K and the symmetric encryption ciphertext of the data M to the cloud-storage service provider for storage.
An apparatus for access control of data stored in a cloud server, comprising:
- a memory to store instructions for carrying out one or more algorithms;
- a processor to execute the instructions stored within the memory;
- a setup algorithm executed by a trusted authority (TA) that takes as inputs a security parameter λ and an attribute universe U and outputs a master secret key MSK, public parameters PP, and a set of attribute-related public keys {PKx};
- a key generation algorithm executed by the TA that takes as inputs the master secret key MSK, a user's hierarchically structured identity ID, and a set of attributes S that describe the user's access privilege, and provides as outputs a secret key SK for the user;
- a data encryption algorithm executed by a data owner that takes as inputs the public parameters PP, the public attribute keys {PKx}, a message M, a set of IDs of revoked identities, and an access policy A, and provides as outputs a ciphertext CT;
- and
- a data decryption algorithm executed by the user that takes as inputs the ciphertext CT downloaded from the cloud server, and the secret key SK, and provides as outputs a message M when the attributes associated with a secret key holder satisfy A and the user's ID is not in the set of IDs of revoked identities.
A method for access control of data stored in a cloud server, comprising:
- storing instructions for carrying out one or more algorithms in a data store;
- executing the instructions stored within the data store via a processor;
- executing a setup algorithm by a trusted authority (TA) that takes as inputs a security parameter λ and an attribute universe U and outputs a master secret key MSK, public parameters PP, and a set of attribute-related public keys {PKX};
- executing a key generation algorithm by the TA that takes as inputs the master secret key MSK, a user's hierarchically structured identity ID, and a set of attributes S that describe the user's access privilege, and provides as outputs a secret key SK for the user;
- executing a data encryption algorithm by a data owner that takes as inputs the public parameters PP, the public attribute keys {PKX}, a message M, a set of IDs of revoked identities, and an access policy A, and provides as outputs a ciphertext CT;
- and
- executing a data decryption algorithm by the user that takes as inputs the ciphertext CT downloaded from the cloud server, and the secret key SK, and provides as outputs a message M when the attributes associated with a secret key holder satisfy A and the user's ID is not in the set of IDs of revoked identities.
Dependencies are inferred from the claim text.