Fully Secure Functional Encryption: Attribute

advertisement
Fully Secure Functional Encryption:
Attribute-Based Encryption and
(Hierarchical) Inner Product Encryption
Allison Lewko
Tatsuaki Okamoto
Amit Sahai
The University of Texas
at Austin
NTT
UCLA
Katsuyuki Takashima
Mitsubishi Electric
Brent Waters
The University of Texas
at Austin
Functional Encryption
• Functionality f(x,y) – specifies what will be learned
about ciphertext
y
x
Application
Who should be able
to read my data?
access policy
Attribute-Based Encryption [SW05]
Ciphertexts: associated with access formulas
(A Ç B) Æ C
Secret Keys: associated with attributes
{A, C}
Decryption:
{A, C} satisfies (AÇB)ÆC
{A, C}
(A Ç B) Æ C
Message
ABE Example
OR
AND
Medical
Company X
researcher
AND
Doctor
Hospital Y
{Doctor, Hospital Z}
{Nurse, Hospital Y}
ABE Algorithms
 Setup (¸, U)
MSK
Public Params
Encrypt(PP, M, Access formula)
KeyGen(PP, MSK, Set of attributes)
Decrypt(PP, SK, CT)
M
Security Definition (ABE) [IND-CPA GM84]
Key
Key
Challenge
Query
Setup
Query
Phase
Phase
PhaseII I
Challenger
Attacker
Public Params
S1
MSK
S1
S2
S2
Si : set of attributes
M0, M1, access policy
Enc(M
, PP)I – in both phases, no queried Si can satisfy
Same as
b, Phase
Attacker must guess b
Proving Security

Hard problem
HardABE
problem
Simulator
breaks ABE
ABE attacker
Challenges in Proving Security
Simulator must:
• respond to key requests
• leverage attacker’s success on challenge
Partitioning
Previous approach for IBE – Partitioning [BF01, BB04, W05]
Key Space
We hope:
Key Request
Key Requests
Key Request
Key Request
Abort
Challenge
Challenge
Challenge
Abort
Partitioning with More Structure
ID0
HIBE:
ID0:ID1
ID0:ID1:ID3
ID0:ID2
ID0:ID2:ID4
ID0:ID2:ID5
Exponential security degradation in depth
ABE:
( A Ç B Ç C) Æ (A Ç D) …
Exponential security degradation in formula length
Previous Solutions
Selective Security Model:
• Attacker declares challenge before seeing Public Parameters
• A weaker model of security
• To go to standard model by guessing –> exponential loss
Until recently, only results were in this model
Exception:
Fully secure HIBE with polynomially many levels [G06, GH09]
Dual System Encryption [W09]
• New methodology for proving full security
• No partitioning, no aborts
• Simulator prepared to make any key and use
any key as the challenge
Dual System Encryption
Used in real system
Normal
Semi-Functional
Normal
Semi-Functional
 

Types are indistinguishable (with a caveat)
Hybrid Security Proof
Normal keys and ciphertext
Normal keys, S.F. ciphertext
S.F. ciphertext, keys turn S.F. one by one
Security now much
easier to prove
Previously on Dual System Encryption…
• [W09] Fully secure IBE and HIBE
• negligible correctness error
• ciphertext size linear in depth of hierarchy
• [LW10] Fully secure HIBE with short CTs
• no correctness error
• CT = constant # group elements
• closely resembles selectively secure scheme [BBG05]
Our Results - ABE
• Fully secure ABE
• arbitrary monotone access formulas
• security proven from static assumptions
• closely resembles selectively secure
schemes [GPSW06, W08]
ABE – Solution Framework
G = a bilinear group of order N = p1p2p3
e: G £ G ! GT is a bilinear map
Subgroups Gp1, Gp2, Gp3
– orthogonal under e, e.g. e(Gp1, Gp2) = 1
Gp1 = main scheme
Gp1
Gp3
Gp2
Gp2 = semi-functional space
Gp3 = randomization for keys
ABE – Solution Framework
Gp1
Gp2
Normal
S.F.
Decryption: Key paired with CT under e
Normal
S.F.
Gp3
Technical Challenge
• Achieve nominal semi-functionality: [LW10]
?
simulator can’t test for S.F.
• S.F. key and S.F. CT correlated
- decryption works in simulator’s view
• regular S.F. key in attacker’s view
Key Technique
• Semi-functional space imitates the main scheme
• Linear Secret Sharing Scheme: shares reconstructed
in parallel in Gp1 and Gp2
shares
secret
shares
secret
Regular s.f. : red secret is random, masks blue result
Nominal s.f. : red secret is 0, won’t hinder decryption
Key Technique
Attacker doesn’t have
key capable of decrypting
Attacker can’t distinguish
nominal from regular s.f.
Oh no! I was
fooled!
Value shared in s.f. space is info-theoretically hidden
Illustrative Example
?
shared value = x
AND
A
B
?
share = z
share = x-z
{A}
Technical Challenge
• Hiding the shared value in the CT:
• blinding factors linked to attributes
• Ciphertext elements are of the form:
share
blinding
share
blinding
g1a±1+ z1r1 g2±2 + z2r2
random
where
g1r1g2r2
random
g1 2 Gp1 g2 2 Gp2
Attributes can only be used once in the formula
Encoding Solution
Example: To use an attribute A up to 4 times :
A
A:1
A:2
A:3
A:4
(A Æ B) Ç (A Æ C) becomes (A:1 Æ B) Ç (A:2 Æ C)
max times used fixed at setup
It would be better to get rid of the one-use restriction
Open problem
Summary of ABE result
• Full security ABE
• Static assumptions
• Similar to selectively secure schemes
Inner Product Encryption [KSW08]
Ciphertexts and secret keys: associated with vectors
x
v
Decryption:
v
x
if x ¢ v = 0
Advantage: ciphertext policy can be hidden
Message
Coming Attractions
• Stay tuned for CRYPTO 2010:
• full security for Inner Product/ Attribute-Based
Encryption from decisional Linear Assumption
• by Okamoto and Takashima
Questions?
Download