Attribute-Based Encryption
Brent Waters
Access Control
🗶
Access Control by Encryption
Idea: Need secret key to access data
SK
Realistic Data Sharing
Problem: Disconnect between policy and mechanism
OR
Professor
AND
CS255-TA
PhD
?
Kelly:
“Professor”
“Admissions”
Sarah:
“CS255-TA”
“PhD”
A Fundamental Gap
OR
Professor
AND
CS255-TA
PhD
Complex
Infrastructure
A New Vision
OR
Professor
AND
CS255-TA
PhD
Attribute-Based Encryption
Complex
Infrastructure
OR
Professor
AND
CS255-TA
PhD
Attribute-Based Encryption: A New Perspective
Public Parameters
Access Predicate: f( )
f( )
SK
Cred.=X
If f(X)=1
Why Attribute-Based Encryption?
Late Binding Access Control:
e.g. Network Logs
Why Attribute-Based Encryption?
Late Binding Access Control:
e.g. Network Logs
2ef92a295cbb
98bc39dea94c
...
SRC IP=123.12.6.8
Date=12/5/07
SK
Src:123.3.4.77 AND
Date: 12/5/07
Why Attribute-Based Encryption?
Efficiency:
OR
Dean Eng.
AND
Professor
C.S.
vs.
Scales with policy complexity
Why Attribute-Based Encryption?
AND
ACLU
?
Receiver Privacy:
Salary > 1M
Attribute-Based Encryption for Formulas [SW05]
PK
MSK
“CS255-TA”
“PhD”
“CS255-TA”
“Undergrad”
OR
Professor
AND
CS255-TA
PhD
✔
🗶
🗶
✔
✔
🗶
🗶
OR
Professor
AND
CS255-TA
PhD
SK
SK
Key Authority
✔
Line of Research: [SW05, GPSW06, BSW07, BW07, OSW07,KSW08…]
A First Approach
Question: Can we build attribute-based encryption from standard techniques?
Attempt: Public Key Encryption + Secret Sharing
Secret Sharing [S78,B78,BL86]
OR
A
AND
B
C
s
s
ShareA = s
ShareB = r
ShareC = s-r
A First Approach
Combine S.S. and PKE
SKSarah:
“A”
SKKevin:
“B”
AND
A
B
PKA
SKB
PKB
SKA
EA(R)
EB(M-R)
R
?
M-R
M
Collusion Attack!
Collusion Attacks: The Key Threat
Kevin:
“CS255-TA”
“Undergrad”
OR
Professor
AND
CS255-TA
PhD
James:
“PhD”
“Graphics”
Need: Key “Personalization”
Tension: Functionality vs. Personalization
Elliptic Curve Techniques
G : multiplicative of prime order p. (Analogy: Zq*)
High Level: Single Multiplication
Key for satisfying functionality + personalization
Bilinear map e: G×G → GT
e(ga, gb) = e(g,g)ab ∀a,b∈Zp, g∈G
Intuitive Hardness Discrete Log:
Given: g, ga Hard to get: a
System Setup
Key Generation
SK
‘t’ ties components together
Personalization!
Key Personalization (Intuition)
SK
SK
Kevin:
“CS255-TA”
…
James:
“PhD”
…
Random t
Random t’
Components are incompatible
(Formal security proofs in papers)
Encryption
M
OR
y1
AND
y2
y3
n leaf nodes
y1, ... yn
f ( ) =
Share1=s
Share2=r
Share3=s-r
s
CT:
Making it work
CT:
Goal: Compute and cancel to get M
“CS255-TA”
“PhD”
Message Randomization
Making it work
CT:
“CS255-TA”
“PhD”
SK:
Message Randomization
Personalized Randomization
New goal: Personalized to user
Use Bilinear Map for Decryption
Making it work
OR
Professor
AND
CS255-TA
PhD
“CS255-TA”
“PhD”
(Use Bilinear-Map)
Personalized Randomization
Security
Theorem: System is (semantically) secure under chosen key attack
Number Theoretic Assumption:
Bilinear Diffie-Hellman Exponent [BBG05]
Attribute-Based Encryption Encryption Summary
Complex
Infrastructure
OR
Professor
AND
CS255TA
PhD
[SW05, GPSW06,PTMW06, BSW07, OSW07]
Other Advances
ABE from Learning with Errors GVW13
Registered ABE HLWW23
FIPS and ABE?