abenc_maabe_yj14

Multi-Authority ABE for Cloud Storage (YJ14)

Authors: Kan Yang, Xiaohua Jia

Title: “Expressive, Efficient, and Revocable Data Access Control for Multi-Authority Cloud Storage”
Published in: IEEE Transactions on Parallel and Distributed Systems, Volume 25, Issue 7, 2014
Notes: Supports expressive access policies with efficient revocation

Scheme Properties

  • Type: ciphertext-policy attribute-based encryption (public key)

  • Setting: Pairing groups

  • Assumption: Decisional Bilinear Diffie-Hellman

Implementation

Authors:

artjomb

Date:

07/2014

class abenc_maabe_yj14.MAABE(groupObj)[source]

Bases: object

ctupdate(GPP, CT, attribute, UKc)[source]

Updates the cipher-text using the update key, because of the revoked attribute (executed by cloud provider)

decrypt(GPP, CT, user)[source]

Decrypts the content(-key) from the cipher-text (executed by user/content consumer)

encrypt(GPP, policy_str, k, authority)[source]

Generate the cipher-text from the content(-key) and a policy (executed by the content owner)

group

Prime order group

keygen(GPP, authority, attribute, userObj, USK=None)[source]

Generate user keys for a specific attribute (executed on attribute authority)

registerUser(GPP)[source]

Generate user keys (executed by the user).

setup()[source]

Global Setup (executed by CA)

setupAuthority(GPP, authorityid, attributes, authorities)[source]

Generate attribute authority keys (executed by attribute authority)

skupdate(USK, attribute, UKs)[source]

Updates the user attribute secret key for the specified attribute (executed by non-revoked user)

ukeygen(GPP, authority, attribute, userObj)[source]

Generate update keys for users and cloud provider (executed by attribute authority?)

abenc_maabe_yj14.basicTest()[source]
abenc_maabe_yj14.revokedTest()[source]
abenc_maabe_yj14.test()[source]