abenc_unmcpabe_yahk14¶
Non-monotonic CP-ABE (YAHK14)
Authors: Shota Yamada, Nuttapong Attrapadung, Goichiro Hanaoka, Noboru Kunihiro
Title: “A Framework and Compact Constructions for Non-monotonic Attribute-Based Encryption”
Published in: Public-Key Cryptography (PKC) 2014, Pages 275-292
Available from: http://eprint.iacr.org/2014/181 (Section 7)
Notes: Supports non-monotonic access structures (with negation)
Scheme Properties
Type: ciphertext-policy attribute-based encryption (public key)
Setting: Bilinear pairing group of prime order
Assumption: Complex q-type assumption
Implementation
- Authors:
al, artjomb
- Date:
07/2015
- class abenc_unmcpabe_yahk14.CPABE_YAHK14(groupObj, verbose=False)[source]¶
Bases:
ABEnc>>> from charm.toolbox.pairinggroup import PairingGroup,ZR,G1,G2,GT,pair >>> group = PairingGroup('SS512') >>> cpabe = CPABE_YAHK14(group) >>> msg = group.random(GT) >>> attributes = ['2', '3'] # must be integer strings >>> access_policy = '2 and !1' # must be integer strings >>> (master_public_key, master_key) = cpabe.setup() >>> secret_key = cpabe.keygen(master_public_key, master_key, attributes) >>> cipher_text = cpabe.encrypt(master_public_key, msg, access_policy) >>> decrypted_msg = cpabe.decrypt(master_public_key, secret_key, cipher_text) >>> msg == decrypted_msg True