An Ad Hoc Group Signature Scheme for Accountable

advertisement
An Ad Hoc Group Signature Scheme for
Accountable and Anonymous Access to
Outsourced Data
Chuang Wanga,b and Wensheng Zhanga
aDepartment
of Computer Science
Iowa State University
bSymantec Corporation
Background: Data Outsourcing
author
remote un-trusted data storage
server
encrypt
decrypt
authorized
users
1
ABE (Attribute-based Encryption)
retrieve
decrypt
OR
AND
“Computer
Science”
“ISU”
“PrivacyGrp
@Symantec
”
derive key based
on secrets
associated with
his attributes
Graduate student
@cs.iastate
Access Structure
retrieve
X
decrypt
2
Accountability?
OR
AND
“Computer
Science”
“Privacy@
Symantec”
“ISU”
Access Structure
What if the secret doc is found exposed?
A trusted third-party authority should be able to find out who
have accessed the data (accountability/ traceability)
Meanwhile, anonymity of users should be kept from entities other
than the authority (including the un-trusted storage server)
3
Group Signature Scheme
m
group public key
(gpk)
OR
AND
“Computer
Science”
σm = sign(gpk, gski, m)
A user i’s
personalized
private key
(gski)
Verify(gpk, σm)=1?
Record σm
(Authority is able to
trace the signature
to user i.)
“Privacy@
Symantec”
“ISU”
Access Structure
Authorized Users
4
Group Signature Scheme: Problem
group public key
(gpk)
Access structures may be defined
on the fly (when a document is
outsourced)
A user i’s
personalized
private key
(gski)
The groups of users satisfying
the access structures are formed
dynamically
OR
Significant
communication
AND
overheads may need to
“Privacy@
set up private keys for
Symantec”
the members of
“Computer
“ISU”
Science”
dynamic groups
Access Structure
Authorized Users
5
Our Proposal: Ad Hoc Group Signature
(AdHocSign) – Design Goals
Objective: ad hoc group signature scheme.
Design Requirements
User anonymity: A successfully verified user could be any one of
the authorized users.
– Ex: Access Structure = “a AND b”; a successfully-verified
user could be any one owning attributes a and b.
– Ex: Access Structure = “(a AND b) OR c”; a successfullyverified user could be any one owning attributes a and b, or
any one owning c, and the server and other users cannot know
which of the above two cases occurs.
Traceability: The authority is able to trace a signature to a user.
6
Our Proposal: Ad Hoc Group Signature
(AdHocSign) – Design Goals
Objective: ad hoc group signature scheme.
Design Requirements
User anonymity: A successfully verified user could be any one of
the authorized users.
Accountability (traceability): The authority is able to trace a
signature to a user.
Efficiency in communication (for group management):
when a new access structure is created, no extra communication
for group management (e.g., distributing keys) is required.
7
Our Proposal: Ad Hoc Group Signature
(AdHocSign) – Key Ideas
Storage Cost
When a user joins:
he/she is preloaded
key materials for each
attribute assigned.
Communication Cost
When a document (and associated
access structure) posted to server:
server is given key materials for the
access structure (AS).
A user’s attributes satisfy the AS
Y
Obtain: the user-specific and access structure-specific
privacy key for group signature
8
Basis: Group Signature [BonehShacham’04]
Complexity Assumptions:
q-SDH problem
Decision Linear problem
System-wide secret
user i’s private key (gski)
public key (gpk)
xi, Ai=g1/(ζ+xi)
bilinear mapping
g, g’=gζ
x
e(Ai, g’×g i ) = e(g, g)
• Signing: sign(gpk, gski, m)  σm
• Verifying: verify(gpk, m, σm)  1/0
9
AdHocSign: Roadmap of the Design
What to do?
Construct and give appropriate key materials to users and
storage server, s.t., an authorized user is able to derive
his/her private key as in the BS group signature scheme
How?
Consider a conjunction-only access structure
– Ex: “a AND b”
Consider a disjunction-only access structure
– Ex: “a OR b”
Consider a general (i.e., conjunction of disjunctive) access
structure
– Ex: “(a OR b) AND (c OR d)”
10
AdHocSign for Conjunction-only Access
Structures: Intuition
Access
structure: T
a
Authority
Key materials: ra, rb
AND
b
Secrets: αa , αb
Private key:
• xi
Public key:
α ×r +α ×r
• gT = g a a b b
ζ
• gT’ = gT
Server
<T=“a AND b”; ra, rb>
• AiT = gi,ara ×gi,brb = g (αa×ra+αb×rb)/(ζ+x i)
Key materials:
α /(ζ+x i)
• for attribute a: gi,a=g a
α /(ζ+x i)
• for attribute b: gi,b=g b
User i • … …
e(AiT, gT’×gTxi) = e(gT, gT)
11
AdHocSign for Disjunction-only Access
Structures: Intuition (1)
Key materials:
Access
structure: T
OR
a
Authority
Secrets: αa, αb,
ra= rT/αa ; rb= rT/αb
b
rT
Private key:
• xi
• AiT = gi,ara = grT/(ζ+x i)
Key materials:
α /(ζ+x i)
• for attribute a: gi,a=g a
Public key:
r
• gT = g T
ζ
• gT’ = gT
Server
<T=“a OR b”; ra, rb>
e(AiT, gT’×gTxi) = e(gT, gT)
• for attribute c: …
User i • … …
12
AdHocSign for Disjunction-only Access
Structures: Intuition (2)
Key materials:
Access
structure: T
OR
a
Authority
Secrets: αa, αb,
ra= rT/αa ; rb= rT/αb
b
Server
rT, ζ
Key materials:
<T=“a OR b”; ra, rb>
• for attribute a: gi,a=g αa/(ζ+x i)
•……
User i • … …
r /r
Problem: User i can derive gi,b = gi,aa, b
though user i does not own attribute b.
Later on, user i can satisfy access
structures such as “a AND b”, “b OR x”.
13
AdHocSign for Disjunction-only Access
Structure: Intuition (3)
The authority
For each attribute a, multiple (instead of a single) secret
numbers are picked: αa,1, αa,2, …, αa,N
Each user i who owns attribute a is preloaded with N
secrets (key materials):
gi,a,1, gi,a,2, …, gi,a,N, where gi,a,k = gαa, k/(ζ+ xi)
Every time when a new disjunction-only access
structure, e.g., T=“a OR b”, is defined:
rT is selected randomly
rT,a = rT/αa,k1 and rT,b = rT/αb,k2, where αa,k1 and αb,k2 have
not been used before
A user i with attribute a or b should use gi,a,k1 or gi,b,k2 to
derive its private key
14
AdHocSign for General Access
Structures: Intuition
Access structure
AND
rT1
rT2
OR
OR
Authority
a
αa,k1
b
c
d
αb,k2
αc,k3
αd,k4
Key materials given to server:
(a, k1, rT,a = rT1/αa,k1)
(b, k2, rT,b = rT1/αb,k2)
(c, k3, rT,c = rT2/αc,k3)
(d, k4, rT,d = rT2/αd,k4)
Public key:
• gT = grT1+rT2
• gT’ = gTζ
Server
15
AdHocSign for General Access
Structures: Intuition
Assume the user owns attributes a and d
User i
Key materials assigned to user i:
• For attribute a
•…
• gi,a,k1 = gαa,k1/(ζ+xi)
Key materials provided by server:
(a, k1, rT,a = rT1/αa,k1)
… ….
(d, k4, rT,d = rT2/αd,k4)
•…
• For attribute d
•…
• gi,d,k4 = gαd,k4/(ζ+xi)
•…
rT, a
r
AiT = gi,a,k1
× gi,d,k4T, d
= g(rT1+rT2)/(ζ+xi)
Private key: (xi, AiT)
16
Security Features
Traceability
Intuitively: Storage server and/or collusive users are hard to
forge valid signatures that cannot trace back to any of them, as
long as the SDH problem is hard.
Formally: Our proposed AdHocSign scheme is (t, qH, qS, n,
m,ε) traceable if (q, t’, ε’)-SDH assumption holds, where n = q1, ε= 8n*sqrt(ε’qH) + 2n/q, t’=O(tmN).
17
Security Features
Selfless-anonymity
Intuitively: Storage server and/or others are hard to
determine if two signatures are pertinent to the same user
or not, as long as the Decision Linear problem is hard.
Formally: Our proposed AdHocSign scheme is (t, qH, qS, n,
m,ε) selflessly anonymous if (t’, ε’) Decision Linear
assumption holds, where ε’ = ε(1/n2 – qSqH/p)/2.
18
Cost Analysis
Computational cost
User’s cost
– Private key preparation
– x exponential ops, where x is the number of disjunctive
components in the access structure
– typically lower than signing cost as long as x is not too
large
– Signing (using BS Group Signature Signing)
Server’s cost
– Verification (using BS Group Signature Signing)
Overall: Typically less than twice of that of BS Group
Signature scheme
19
Cost Analysis
Communication cost
O(L): L is the length of an access structure
Storage cost
O(Nx)
– x - total number of attributes owned by a user
– N - total number of secrets preloaded for each attribute
N: the minimum number of different access structures that can
be defined dynamically; in practice, more different access
structures can be defined dynamically
20
Conclusion
We design a new group signature scheme for
dynamically-formed groups
Selfless-anonymity
Traceability
No user key distribution at dynamic group forming time
– at the cost of storing extra key materials when a user
joins the system
Applicable when: storage is cheaper than communication
(cost for dynamic management of groups)
21
Thank you!
Contacts of the authors
{wzhang, chuangw}@iastate.edu
Full paper:
www.cs.iastate.edu/~wzhang/papers/adhocsign.pdf
22
Implementation
Prototype development
Based on jPBC (java pairing-based library)
Adopting the type A curve
Evaluation setup
User: desktop with 1.83 GHz Genuine Intel processor and 3GB RAM
Server: workstation with two 2.13 GHz Intel Xeon processors and 24
GB RAM
Evaluation results
BS Group Signature
– Signing cost – 1.65 seconds by average
– Verification cost – 0.28 seconds by average
Private key computation in AdHocSign
– ~0.1 second for each disjunctive component in the access structure
23
Download