Fully Secure Multi-Authority Ciphertext-Policy Attribute-Based

download report

Transcript Fully Secure Multi-Authority Ciphertext-Policy Attribute-Based

Fully Secure Multi-authority
Ciphertext-Policy Attribute-Based Encryption
without Random Oracles
Zhen Liu1,2
1 Shanghai
Jiao Tong University, Shanghai, China
2 City University of Hong Kong, Hong Kong SAR, China
Joint work with Zhenfu Cao, Qiong Huang, Duncan S. Wong,
and Tsz Hon Yuen
16th European Symposium on Research in Computer Security (ESORICS) 2011,
12-14 September 2011, Leuven, Belgium
Outline
Introduction
History
Motivation
Our Results
Background
Our scheme
2
Introduction: What is CP-ABE?
 CP-ABE is a tool for implementing fine-grained access
control over encrypted data, and is conceptually similar to
traditional access control methods such as Role-Based
Access Control.
 A user is described by a set of descriptive attributes, and a
corresponding private key is issued to the user by an
authority.
 During encryption, an encryptor associates an access policy
over attributes with the ciphertext.
 If and only if the attributes of a user satisfy the access policy
of the ciphertext, the user can decrypt the ciphertext .
3
Introduction: What is CP-ABE?
𝑃𝐾𝐶𝑆 , 𝑃𝐾𝐸𝐸 , …
𝑃𝐾𝑃ℎ𝐷 , 𝑃𝐾𝐴𝐿𝑈 , …
𝑃𝐾𝑀 , 𝑃𝐾𝐹 , …
𝑃𝐾1980, 𝑃𝐾1981 , …
……
…..
𝑃𝐾
𝑈
𝑀𝑆𝐾
Dept.: CS, EE, …
Type: PhD Stud., Alumni, …
Gender: Male, Female
Birth Year: 1980, 1981, …
……
……
𝑆𝐾𝑆𝐴
𝐶 = 𝐸𝑛𝑐(𝑃𝐾, 𝒫, 𝑀)
𝑆𝐴 satisfies 𝒫
𝑆𝐴 = {𝐶𝑆, 𝑃ℎ𝐷}
M
Storage Server
(Untrusted)
AND
𝑆𝐵 = {𝐸𝐸, 𝑃ℎ𝐷}
OR
CS
PDH
ALUMNI
𝒫 = 𝐶𝑆 𝐴𝑁𝐷 (𝑃ℎ𝐷 𝑂𝑅 𝐴𝐿𝑈)
𝑆𝐵 does not satisfy 𝒫
𝑆𝐾
4 𝑆𝐵
Introduction: What is CP-ABE?
-- Collusion-resistant
If none of the users can decrypt a ciphertext individually,
they still can’t even if they work together.
𝑆𝐾𝑆𝐵
𝑆𝐵 = {𝐸𝐸, 𝑃ℎ𝐷}
AND
OR
CS
PDH
ALUMNI
𝒫 = 𝐶𝑆 𝐴𝑁𝐷 (𝑃ℎ𝐷 𝑂𝑅 𝐴𝐿𝑈)
𝑆𝐾𝑆𝑇
𝑆𝑇 = {𝐶𝑆, 𝑈𝑛𝐺}
5
Introduction: What is CP-ABE?
-- Definition
•
•
•
•
𝑆𝑒𝑡𝑢𝑝 𝜆, 𝑈 ⟶ 𝑃𝐾, 𝑀𝑆𝐾.
𝐸𝑛𝑐𝑟𝑦𝑝𝑡 𝑃𝐾, 𝒫, 𝑀 ⟶ 𝐶𝑇. 𝒫 is implicitly included in 𝐶𝑇.
𝐾𝑒𝑦𝐺𝑒𝑛(𝑃𝐾, 𝑀𝑆𝐾, 𝑆) ⟶ 𝑆𝐾𝑆 .
𝐷𝑒𝑐𝑟𝑦𝑝𝑡 𝑃𝐾, 𝑆𝐾𝑆 , 𝐶𝑇 ⟶ 𝑀 𝑜𝑟 ⊥. If and only if 𝑆 satisfies 𝒫, 𝑀
can be recovered.
6
Introduction: Why needs MA-CP-ABE?
 It might not be realistic to have one single authority to
manage all attributes. [SW05]
 E.g., an encryptor may want to share data with users who are
computer science alumni of University X and currently working as an
engineer for Company Y. i.e., the access policy is 𝒫 =
𝑈𝑛𝑖𝑣𝑋. 𝐶𝑆 𝐴𝑁𝐷 𝑈𝑛𝑖𝑣𝑋. 𝐴𝐿𝑈 𝐴𝑁𝐷 𝐶𝑜𝑚𝑝𝑌. 𝐸𝑛𝑔𝑖𝑛𝑒𝑒𝑟
 In a desired Multi-Authority CP-ABE (MA-CP-ABE) system,
different domains of attributes are managed by different
authorities. An encryptor can encrypt messages with any
access policy over the entire attribute universe.
7
History: Existing CP-ABE Schemes
 Goyal et al. [GPSW06]: CP-ABE notion.
 Bethencourt, Sahai and Waters [BSW07] : The first CP-ABE
scheme.
 Cheung and Newport [CN07]
are proposed to
 Goyal et al. [GJPS08]
achieve
better
and
 Waters [Waters08/11]
better expressiveness,
 Lewko et al.[LOSTW10]
 Okamoto and Takashima[OT10] efficiency and security.
[Waters08/11] and [LOSTW10]: expressive (any monotone access structure);
efficient; and secure. The two constructions are very similar, and the
difference is that [Waters08/11] is on prime order group while [LOSTW10] is
on composite order group. [Waters08/11] is selectively secure and
[LOSTW10] is adaptively secure.
8
History: Existing MA-CP-ABE Schemes
 Müller et al. [MKE09]: One Central Authority (CA) and
Multiple Attribute Authorities (AAs).
• Selectively secure.
• Key Escrow: The CA can decrypt all ciphertexts.
 Lewko and Waters [LW11] : Multiple AAs
• The AAs operate independently from each other.
• Adaptively secure, in the random oracle model.
• Key Escrow: Each AA can decrypt the ciphertexts whose
policy can be satisfied by the AA’s attribute domain.
9
Motivation
Construct an MA-CP-ABE system
 Different attribute domains are managed by different
authorities.
 Expressiveness, efficiency and security are not weaker
than that of the single-authority CP-ABE in [LOSTW10]:
 Expressiveness: Support any monotone access structure over the
entire attribute universe;
 Efficiency: similar to that of [LOSTW10];
 Security: adaptively secure in the standard model.
 No authority can independently decrypt any ciphertext.
10
Our Results
We constructed a new MA-CP-ABE system.
 Multiple CAs and Multiple AAs.
 The CAs issue identity-related keys to users but do not involve in
any attribute-related operations.
 The AAs issue attribute-related keys to users.
 Each AA manages a different attribute domain, and operates
independently from other AAs.
 A party may easily join the system as an AA by registering itself
to the CAs and publishing its attribute-related parameters.
 The expressiveness, efficiency and security are
comparable to that of the single-authority CP-ABE
scheme in [LOSTW10].
 No authority can independently decrypt any ciphertext.
11
Our Results
LOSTW10
(SA-) CP-ABE
LW11
MA-CP-ABE
Ours
MA-CP-ABE
Standard Model
Multi-Authority
Prevent Decryption by
Individual Authority
Partially
Size of Ciphertext
𝟐𝒍 + 𝟐
𝟑𝒍 + 𝟏
𝟐𝒍 + 𝟐
Size of Secret key
𝑺 +𝟐
|𝑺|
𝑺 + 𝑫(𝑲 + 𝟐)
𝟐 𝑰 +𝟏
𝟐|𝑰|
𝟐 𝑰 +𝟏
𝑼 +𝟑
𝟐|𝑼|
𝑼 +𝟑+𝑫
Pairing Computation
of Decryption
Size of Public key
𝐷: The number of CAs.
𝐾: The number of AAs.
12
The rest of this presentation…
1. Bilinear map and access structure
2. Our construction
3. Extensions
13
Background
 Bilinear map:
 𝑁 = 𝑝1 𝑝2 𝑝3 where 𝑝1 , 𝑝2 and 𝑝3 are three distinct primes;
 𝐺 and 𝐺𝑇 are cyclic groups of order 𝑁;
 𝑒: 𝐺 × 𝐺 → 𝐺𝑇 is a map such that
 (1) Bilinear: ∀ 𝑔, ℎ ∈ 𝐺, 𝑎, 𝑏 ∈ 𝑍𝑁 , e g a , hb = e g, h
ab ;
 (2) Non-Degenerate: ∃𝑔 ∈ 𝐺, such that 𝑒(𝑔, 𝑔) has order 𝑁 in 𝐺𝑇 .
 LSSS: Any monotone access structure can be realized by a Linear SecretShare Scheme (LSSS). An LSSS is a labeled matrix (𝐴, 𝜌), where 𝐴 is a 𝑙 × 𝑛
matrix over 𝑍𝑝∗ and 𝜌 labels each row with a share holder. E.g.,
(2,2)
1 1 1 𝐴
1 1 2
 1 1 3 𝐵
𝐶
(2,3)
D
1 2 0 𝐷
A
B
C
14
Our MA-CP-ABE Scheme: Idea
Start from the single authority CP-ABE of [LOSTW10]:
 𝑆𝑒𝑡𝑢𝑝 𝜆, 𝑈 → 𝑃𝐾, 𝑀𝑆𝐾.
𝑃𝐾: 𝑁, 𝑔, ℎ, 𝑒 𝑔, 𝑔 𝛼 ,
𝑇𝑎𝑡𝑡 = 𝑔 𝑠𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑈 ; 𝑀𝑆𝐾: 𝛼, 𝑋3
 𝑔, ℎ ∈ 𝐺𝑝1 𝑎𝑛𝑑 𝛼, 𝑠𝑎𝑡𝑡 ∈ 𝑍𝑁 are chosen randomly, 𝑋3 is a generator of 𝐺𝑝3 .
 𝐾𝑒𝑦𝐺𝑒𝑛 𝑃𝐾, 𝑀𝑆𝐾, 𝑆 → 𝑆𝐾 = (𝐾, 𝐿, 𝐾𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑆 ).
𝐾=
𝑔𝛼 ℎ𝑟 𝑅0 ,
𝐿=
𝑔𝑟 𝑅0′
𝑟
,
𝐾𝑎𝑡𝑡 = 𝑇𝑎𝑡𝑡 𝑅𝑎𝑡𝑡 ∀ 𝑎𝑡𝑡 ∈ 𝑆.
 𝑟 ∈ 𝑍𝑁 , 𝑎𝑛𝑑 𝑅0 , 𝑅0′ , 𝑅𝑎𝑡𝑡 ∈ 𝐺𝑝3 are chosen randomly.
 𝐸𝑛𝑐𝑟𝑦𝑝𝑡 𝑃𝐾, 𝐴, 𝜌 , 𝑀 → 𝐶𝑇.
𝐶 = 𝑀 ⋅ 𝑒 𝑔, 𝑔
𝛼 𝑠, 𝐶′
= ℎ 𝑠 , 𝐶𝑥 = ℎ 𝐴𝑥 ⋅𝑣 𝑇𝜌
𝑥
−𝑟𝑥
, 𝐶𝑥′ = 𝑔𝑟𝑥 ∀𝑥 ∈ {1,2 … , 𝑙}.
 𝑠, 𝑟𝑥 ∈ 𝑍𝑁 are chosen randomly.
 𝐷𝑒𝑐𝑟𝑦𝑝𝑡 𝑃𝐾, 𝐶𝑇, 𝑆𝐾 → 𝑀.
𝐶 ⋅
𝜌 𝑥 ∈𝑆
 Constants {𝑤𝑥 } satisfy
𝑒 𝐶𝑥 , 𝐿 𝑒
𝐶𝑥′ , 𝐾𝜌 𝑥
𝑒 𝐶′, 𝐾
𝑥∈𝐼 𝑤𝑥 𝐴𝑥
= (1,0, … , 0).
𝑤𝑥
= 𝑀.
15
Our MA-CP-ABE Scheme: Idea
 𝐾𝑒𝑦𝐺𝑒𝑛 𝑃𝐾, 𝑀𝑆𝐾, 𝑆 → 𝑆𝐾 = (𝐾, 𝐿, 𝐾𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑆 ).
𝐾 = 𝑔𝛼 ℎ𝑟 𝑅0 ,
𝐿 = 𝑔𝑟 𝑅0′ ,
𝑟
𝐾𝑎𝑡𝑡 = 𝑇𝑎𝑡𝑡 𝑅𝑎𝑡𝑡 ∀ 𝑎𝑡𝑡 ∈ 𝑆.
 𝑟 ∈ 𝑍𝑁 , 𝑎𝑛𝑑 𝑅0 , 𝑅0′ , 𝑅𝑎𝑡𝑡 ∈ 𝐺𝑝3 are chosen randomly.
Have no relation with attributes
Bind all attribute-related keys of a user
together;
Prevent collusion attack from different
users (Distinct random 𝑟 for each user);
𝑟
𝐾𝑎𝑡𝑡 = 𝑇𝑎𝑡𝑡
𝑅𝑎𝑡𝑡 = 𝑔𝑟 𝑠𝑎𝑡𝑡 𝑅𝑎𝑡𝑡 = 𝐿𝑠𝑎𝑡𝑡 𝑅𝑎𝑡𝑡 /𝑅0′
′
= 𝐿𝑠𝑎𝑡𝑡 𝑅𝑎𝑡𝑡
Ideas:
 Separate the single authority to one CA and multiple AAs
 CA is responsible for choosing 𝑟 and generating 𝐾 𝑎𝑛𝑑 𝐿 for users;
 When a user submits his 𝐿 to an AA, the AA generates 𝐾𝑎𝑡𝑡 by using
𝐿 𝑎𝑛𝑑 𝑠𝑎𝑡𝑡 .
Problem: 𝐿 is submitted to AA by the user, so that two users (e.g., Bob and Tom)
can launch a collusion attack by submitting the same 𝐿.
Solution: Use digit signature to bind 𝐿 and the identity of a user together.
16
Our MA-CP-ABE Scheme: Idea
One-CA-Multi-AA
 𝐶𝐴𝑆𝑒𝑡𝑢𝑝 𝜆 → 𝐶𝑃𝐾, 𝐶𝑀𝑆𝐾.
𝐶𝑃𝐾: 𝑁, 𝑔, ℎ, 𝑒 𝑔, 𝑔 𝛼 ,
𝑇𝑎𝑡𝑡 = 𝑔 𝑠𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑈, 𝑋3 , 𝑣𝑒𝑟𝑘; 𝑀𝑆𝐾: 𝛼, 𝑠𝑖𝑔𝑘
 𝐴𝐴𝑆𝑒𝑡𝑢𝑝 𝑘, 𝑈𝑘 → 𝐴𝑃𝐾𝑘 , 𝐴𝑀𝑆𝐾𝑘 .
𝐴𝑃𝐾𝑘 : 𝑁, 𝑔, ℎ, 𝑒 𝑔, 𝑔 𝛼 ,
𝑇𝑎𝑡𝑡 = 𝑔 𝑠𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑈𝑘 ; 𝐴𝑀𝑆𝐾𝑘 : 𝑠𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑈𝑘
 𝐶𝐾𝑒𝑦𝐺𝑒𝑛 𝑔𝑖𝑑 → (𝐾, 𝐿, 𝐾𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑆 ).
𝐾 = 𝑔𝛼 ℎ𝑟 𝑅0 ,
𝐿 = 𝑔𝑟 𝑅0′ ,
𝑟
𝐾𝑎𝑡𝑡 = 𝑇𝑎𝑡𝑡 𝑅𝑎𝑡𝑡 ∀ 𝑎𝑡𝑡 ∈ 𝑆.
𝜎 = 𝑠𝑖𝑔𝑛(𝑠𝑖𝑔𝑘, 𝑔𝑖𝑑||𝐿 )
 𝐴𝐾𝑒𝑦𝐺𝑒𝑛 𝐿, 𝜎, 𝑎𝑡𝑡 → 𝐾𝑎𝑡𝑡 .
𝐾 = 𝑔𝛼 ℎ𝑟 𝑅0 ,
𝐿 = 𝑔𝑟 𝑅0′ ,
𝐾𝑎𝑡𝑡 = 𝐿𝑠𝑎𝑡𝑡 𝑅𝑎𝑡𝑡
 𝐸𝑛𝑐𝑟𝑦𝑝𝑡 𝐶𝑃𝐾, 𝐴𝑃𝐾𝑘 , 𝐴, 𝜌 , 𝑀 → 𝐶𝑇.
𝐶 = 𝑀 ⋅ 𝑒 𝑔, 𝑔
𝛼 𝑠, 𝐶′
= ℎ 𝑠 , 𝐶𝑥 = ℎ 𝐴𝑥 ⋅𝑣 𝑇𝜌
𝑥
−𝑟𝑥
, 𝐶𝑥′ = 𝑔𝑟𝑥 ∀𝑥 ∈ {1,2 … , 𝑙}.
17
Our MA-CP-ABE Scheme: Idea
One-CA-Multi-AA
 Problem:
Multi-CA-Multi-AA
In the One-CA-Multi-AA system, the CA holds the value of 𝛼, so that it can
decrypt all ciphertexts.
 Solution
Introduce multiple CAs: CA1, …, CAD . Each CAd chooses 𝛼𝑑
independently, and publishes 𝑒 𝑔, 𝑔 𝛼𝑑 to the public parameters.
In 𝐸𝑛𝑐𝑟𝑦𝑝𝑡 algorithm, 𝐶 = 𝑀 ⋅ 𝑒 𝑔, 𝑔 𝛼𝑑 𝑠 .
Implicitly, we have set that 𝛼 = 𝛼1 + 𝛼2 + ⋯ + 𝛼𝐷 .
 Only when all CAs collude together, can they decrypt a ciphertext.
18
𝐶𝐴𝐷
𝐶𝐴1
……
𝐴𝐴𝐾
𝐴𝐴1
𝑈1
User 𝑔𝑖𝑑
𝑆𝑔𝑖𝑑 = {𝑎1 , 𝑎2 }
𝑎1 ∈ 𝑈1 , 𝑎2 ∈ 𝑈𝐾
……
𝑈𝐾
Our MA-CP-ABE Scheme: Idea
Naive Multi-CA-Multi-AA
 𝐺𝑙𝑜𝑏𝑎𝑙𝑆𝑒𝑡𝑢𝑝 𝜆 → 𝐺𝑃𝐾: 𝑁, 𝑔, ℎ, 𝑋3
 𝐶𝐴𝑆𝑒𝑡𝑢𝑝 𝑑 → 𝐶𝑃𝐾𝑑 : 𝑒 𝑔, 𝑔 𝛼𝑑 , 𝑣𝑒𝑟𝑘𝑑 ; 𝐶𝑀𝑆𝐾𝑑 : 𝛼𝑑 , 𝑠𝑖𝑔𝑘𝑑
 𝐴𝐴𝑆𝑒𝑡𝑢𝑝 𝑘, 𝑈𝑘 → 𝐴𝑃𝐾𝑘 : 𝑇𝑎𝑡𝑡 = 𝑔 𝑠𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑈𝑘 ; 𝐴𝑀𝑆𝐾𝑘 : 𝑠𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑈𝑘
 𝐶𝐾𝑒𝑦𝐺𝑒𝑛 𝑔𝑖𝑑, 𝑑 → (𝐾𝑔𝑖𝑑,𝑑 , 𝐿𝑔𝑖𝑑,𝑑 ).
𝐾𝑔𝑖𝑑,𝑑 = 𝑔𝛼𝑑 ℎ𝑟𝑔𝑖𝑑,𝑑 𝑅0 , 𝐿𝑔𝑖𝑑,𝑑 = 𝑔𝑟𝑔𝑖𝑑,𝑑 𝑅0′ , 𝜎𝑔𝑖𝑑,𝑑 = 𝑠𝑖𝑔𝑛(𝑠𝑖𝑔𝑘𝑑 , 𝑔𝑖𝑑 || d|| 𝐿𝑔𝑖𝑑,𝑑 )
 𝐴𝐾𝑒𝑦𝐺𝑒𝑛 {𝐿𝑔𝑖𝑑,𝑑 , 𝜎𝑔𝑖𝑑,𝑑 |𝑑 = 1,2, … , 𝐷}, 𝑎𝑡𝑡 → {𝐾𝑎𝑡𝑡,𝑔𝑖𝑑,𝑑 }.
𝑠
𝑎𝑡𝑡
𝐾𝑎𝑡𝑡,𝑔𝑖𝑑,𝑑 = 𝐿𝑔𝑖𝑑,𝑑
𝑅𝑎𝑡𝑡,𝑔𝑖𝑑,𝑑 ,
𝑑 = 1,2, … 𝐷
 𝐸𝑛𝑐𝑟𝑦𝑝𝑡 𝑃𝐾, 𝐴, 𝜌 , 𝑀 → 𝐶𝑇.
𝐶=𝑀⋅
𝑒 𝑔, 𝑔
𝛼𝑑 𝑠 , 𝐶 ′
= ℎ 𝑠 , 𝐶𝑥 = ℎ 𝐴𝑥 ⋅𝑣 𝑇𝜌
𝑥
−𝑟𝑥
, 𝐶𝑥′ = 𝑔𝑟𝑥 ∀𝑥 ∈ {1,2 … , 𝑙}.
 𝐷𝑒𝑐𝑟𝑦𝑝𝑡 𝑃𝐾, 𝐶𝑇, 𝑆 → 𝑀.
𝜌 𝑥 ∈𝑆
𝑑=1 𝑡𝑜 𝐷
𝑒 𝐶𝑥 , 𝐿𝑔𝑖𝑑,𝑑 𝑒
𝑒
𝐶𝑥′ , 𝐾𝜌 𝑥 ,𝑔𝑖𝑑,𝑑
𝐶 ′ , 𝐾𝑔𝑖𝑑,𝑑
𝑤𝑥
=
𝑑=1 𝑡𝑜 𝐷
1
𝑒 𝑔, 𝑔
𝛼𝑑 𝑠 .
20
Our MA-CP-ABE Scheme: Idea
Naive Multi-CA-Multi-AA
Our MA-CP-ABE
 Problem:
 When an attacker corrupts a CA, collusion attack can be launched.
 E.g., 𝐷 = 2, 𝐾 = 2. 𝑎1 ∈ 𝑈1 , 𝑎2 ∈ 𝑈2 . 𝑆𝐵 = 𝑎1 , 𝑆𝑇 = {𝑎2 }. CA1 is corrupted by
Bob and Tom, while CA2 is still secure. In such a case, Bob and Tom should
not be able to decrypt a ciphertext with policy (𝑎1 𝐴𝑁𝐷 𝑎2 ). However,
 Bob obtains 𝐾𝐵𝑜𝑏,2 , 𝐿𝐵𝑜𝑏,2 from CA2 ; then obtains 𝐾𝑎1,𝐵𝑜𝑏,2 from AA1 ;
 They set 𝐿 𝑇𝑜𝑚,1 = 𝐿𝐵𝑜𝑏,2 , and submit this 𝐿 𝑇𝑜𝑚,1 to AA2 . AA2 is cheated
and believes that this “𝐿 𝑇𝑜𝑚,1 " is legal, because Bob and Tom control
CA1 so that they can generate the valid signature. Then AA2 generates
"𝐾𝑎2 ,𝑇𝑜𝑚,1 " by using this "𝐿 𝑇𝑜𝑚,1 ", which is actually "𝐾𝑎2 ,𝐵𝑜𝑏,2 " for
"𝐿𝐵𝑜𝑏,2 “.
 For the ciphertext, they can reconstruct 𝑒 𝑔, 𝑔 𝛼2𝑠 by using
𝐾𝐵𝑜𝑏,2 , 𝐿𝐵𝑜𝑏,2 , {𝐾𝑎1,𝐵𝑜𝑏,2 , 𝐾𝑎2,𝐵𝑜𝑏,2 }. --- COLLUSION ATTACK WORKS.
21
Our MA-CP-ABE Scheme: Idea
Our MA-CP-ABE
Naive Multi-CA-Multi-AA
 Solution: Each time CAd generates 𝐿𝑔𝑖𝑑,𝑑 = 𝑔𝑟𝑔𝑖𝑑,𝑑 𝑅′, it must show the knowledge
of 𝑟𝑔𝑖𝑑,𝑑 to AAk . We addressed this by reusing the CP-ABE scheme of [LOSTW10].
𝐶𝐴1
When 𝑔𝑖𝑑 visits 𝐶𝐴𝑑 ,
𝐶𝐴𝑑 regards 𝑆𝑑 as the
“attributes” of the user
User 𝑔𝑖𝑑
𝑆1 = { 1,1 , 2,1 , … , (𝐾, 1)}
𝑆2 = 1,2 , 2,2 , … , 𝐾, 2
𝑆𝑑 = { 1, 𝑑 , 2, 𝑑 , … , (𝐾, 𝑑)}
𝐶𝐴2
𝐴𝐴𝑘 registers 𝑉𝑘,𝑑 to 𝐶𝐴𝑑 ;
𝐶𝐴𝑑 uses 𝑉𝑘,𝑑 as the
public key corresponding
to “attribute (k,d)”
𝑉𝑘,𝑑 = 𝑔𝑣𝑘,𝑑
𝑉1,1 = 𝑔𝑣1,1
𝑉1,2 = 𝑔𝑣1,2
𝑉2,1 = 𝑔𝑣2,1
𝑉2,2 = 𝑔𝑣2,2
𝐴𝐴1
𝐴𝐴2
𝑣1,1 , 𝑣1,2
𝑣2,1 , 𝑣2,2
22
Our MA-CP-ABE Scheme: Idea
Our MA-CP-ABE
Naive Multi-CA-Multi-AA
 [LOSTW10]𝐾𝑒𝑦𝐺𝑒𝑛 𝑃𝐾, 𝑀𝑆𝐾, 𝑆 → 𝑆𝐾 = (𝐾, 𝐿, 𝐾𝑎𝑡𝑡 ∀𝑎𝑡𝑡 ∈ 𝑆 ) .
𝐾=
𝑔𝛼 ℎ𝑟 𝑅0 ,
𝐿=
𝑔𝑟 𝑅0′
,
𝑟
𝐾𝑎𝑡𝑡 = 𝑇𝑎𝑡𝑡 𝑅𝑎𝑡𝑡 ∀ 𝑎𝑡𝑡 ∈ 𝑆.
When 𝑔𝑖𝑑 visits 𝐶𝐴𝑑 , 𝐶𝐴𝑑 regards 𝑆𝑑
= { 1, 𝑑 , 2, 𝑑 , … (𝐾, 𝑑)}
as the “attributes” of the user:
𝑉𝑘,𝑑 takes the place of 𝑇𝑎𝑡𝑡
 [Ours]𝐶𝐾𝑒𝑦𝐺𝑒𝑛 𝑔𝑖𝑑, 𝑑 → (𝐾𝑔𝑖𝑑,𝑑 , 𝐿𝑔𝑖𝑑,𝑑 , Γ𝑔𝑖𝑑,𝑑,𝑘 𝑓𝑜𝑟 𝑘 = 1 𝑡𝑜 𝐾).
𝐾𝑔𝑖𝑑,𝑑 = 𝑔𝛼𝑑 ℎ𝑟𝑔𝑖𝑑,𝑑 𝑅0 , 𝐿𝑔𝑖𝑑,𝑑 = 𝑔𝑟𝑔𝑖𝑑,𝑑 𝑅0′ ,
Γ𝑔𝑖𝑑,𝑑,𝑘 = 𝑉𝑘,𝑑
𝑟𝑔𝑖𝑑,𝑑
(𝑘 = 1 𝑡𝑜 𝐾),
𝜎𝑔𝑖𝑑,𝑑 = 𝑠𝑖𝑔𝑛(𝑠𝑖𝑔𝑘𝑑 , 𝑔𝑖𝑑|| 𝑑|| 𝐿|| Γ𝑔𝑖𝑑,𝑑,1 || … ||Γ𝑔𝑖𝑑,𝑑,𝐾 ) .
𝐶𝐴𝑑 uses Γgid,d,k to show to 𝐴𝐴𝑘 that the corresponding 𝐿𝑔𝑖𝑑,𝑑 is generated
honestly.
23
Conclusion
We constructed an MA-CP-ABE system, where
 Different domains of attributes are managed by different attribute
authorities, which operate independently from each other.
 No authority can independently decrypt any ciphertext.
LOSTW10
(SA-) CP-ABE
LW10
MA-CP-ABE
Ours
MA-CP-ABE
Standard Model
Multi-Authority
Prevent Decryption by
Individual Authority
Partially
Size of Ciphertext
𝟐𝒍 + 𝟐
𝟑𝒍 + 𝟏
𝟐𝒍 + 𝟐
Size of Secret key
𝑺 +𝟐
|𝑺|
𝑺 + 𝑫(𝑲 + 𝟐)
𝟐 𝑰 +𝟏
𝟐|𝑰|
𝟐 𝑰 +𝟏
𝑼 +𝟑
𝟐|𝑼|
𝑼 +𝟑+𝑫
Pairing Computation
of Decryption
Size of Public key
24
Extensions
 Large attribute universe construction:
 The size of public key is linear in |𝑈|.
 It can be avoided by using the idea of interpolation.
 Improving performance and reliability of the
system:
 In this paper, 𝛼 = 𝛼1 + 𝛼2 + ⋯ + 𝛼𝐷 is used to
distribute 𝛼 to 𝐷 CAs. It is a (𝐷, 𝐷)-threshold policy, so
that all CAs must remain active.
 In the full version of this paper, general 𝐷, Δ -threshold
policy is used. Only when 𝐷 CAs are involved, they can
decrypt a ciphetext. The system works as long as no
more than Δ − D CAs fail.
25
References
• [SW05] Sahai, A., Waters, B.: Fuzzy identity-based encryption.
EUROCRYPT 2005.
• [GPSW06] Goyal, V., Pandey, O., Sahai, A., Waters, B.: Attribute-based
encryption for finegrained access control of encrypted data. ACM CCS
2006.
• [BSW07] Bethencourt, J., Sahai, A., Waters, B.: Ciphertext-policy attributebased encryption. IEEE Symposium on Security and Privacy, 2007
• [CN07] Cheung, L., Newport, C.C.: Provably secure ciphertext policy abe.
ACM CCS 2007
• [GJPS08] Goyal, V., Jain, A., Pandey, O., Sahai, A.: Bounded Ciphertext
Policy Attribute Based Encryption. ICALP 2008, Part II.
• [Waters08/11] Waters, B.: Ciphertext-policy attribute-based encryption:
An expressive, efficient, and provably secure realization. PKC 2011
• [LOSTW10]Lewko, A.B., Okamoto, T., Sahai, A., Takashima, K., Waters, B.:
Fully secure functional encryption: Attribute-based encryption and
(Hierarchical) inner product encryption. EUROCRYPT 2010.
26
Reference
• [OT10] Okamoto, T., Takashima, K. : Fully secure functional encryption
with general relations from the decisional linear assumption. CRYPTO
2010.
• [MKE09] M¨uller, S., Katzenbeisser, S., Eckert, C.: On multi-authority
ciphetext-policy attribute-based encryption. Bulletin of the Korean
Mathematical Society 2009.
• [LW11] Lewko, A., Waters, B.: Decentralizing attribute-based encryption.
EUROCRYPT 2011.
27
Thanks.
Q&A
28