31
Secure Conjunctive Keyword Search Over Encrypted Data Author: Philippe Golle and Jessica Staddon and Brent Waters Presenter: 陳陳陳 1

Secure Conjunctive Keyword Search Over Encrypted Data

  • Upload
    zulema

  • View
    28

  • Download
    0

Embed Size (px)

DESCRIPTION

Secure Conjunctive Keyword Search Over Encrypted Data. Author: Philippe Golle and Jessica Staddon and Brent Waters Presenter: 陳昱圻. Outline. Motivating Scenario Model and definitions Security Game & Hardness Assumption Basic protocol Amortized Protocol Constant-size Protocol. - PowerPoint PPT Presentation

Citation preview

Page 1: Secure Conjunctive Keyword Search Over Encrypted Data

Secure Conjunctive Keyword Search Over Encrypted Data

Author:

Philippe Golle and Jessica Staddon

and Brent Waters

Presenter: 陳昱圻

1

Page 2: Secure Conjunctive Keyword Search Over Encrypted Data

Outline

Motivating Scenario Model and definitions Security Game & Hardness Assumption Basic protocol Amortized Protocol Constant-size Protocol

2

Page 3: Secure Conjunctive Keyword Search Over Encrypted Data

Motivating Scenario

Alice has a large amount of data Which is private Which she wants to access any time and from

anywhere Example: her emails

Alice stores her data on a remote server Good connectivity Low administration overhead Cheaper cost of storage But untrusted

3

Page 4: Secure Conjunctive Keyword Search Over Encrypted Data

Motivating Scenario

1. Alice may not trust the server • Data must be stored encrypted

2. Alice wants ability to search her data • Keyword search: “All emails from Bob”

3. Alice wants powerful, efficient search• She wants to ask conjunctive queries• E.g. ask for “All emails from Bob AND received last

Sunday”

4

Page 5: Secure Conjunctive Keyword Search Over Encrypted Data

Search on Encrypted DataAlice Storage Server

D1, D2, …, Dn E(D1), E(D2), …, E(Dn)Encryption

Later, Alice wantsall Di which containa keyword WShe generates a capability for W

Cap = GenCap(W) Verify(Cap, E(Di)) = Trueif Di contains W

Verify(Cap, E(Di)) = Falseotherwise

E(Di) such that Verify(Cap,E(Di)) = T

Alice decrypts E(Di)

Page 6: Secure Conjunctive Keyword Search Over Encrypted Data

Single Keyword Search

Solution of Song, Wagner & Perrig [2000 IEEE Security and Privacy] Define a security model for single keyword search Propose provably secure protocols

Limitations Limited to queries for a single keyword Can’t do boolean combinations of queries

Example: “emails from Bob AND (received last week OR urgent)”

We focus on conjunctive queries Documents Di which contains keywords W1 and W2 … and Wn More restrictive than full boolean combinations But powerful enough! (see search engines)

6

Page 7: Secure Conjunctive Keyword Search Over Encrypted Data

Possible Approaches to Conjunctive Queries Alice wants all documents with keywords W1 and W2 … and Wn

Computing set intersections She generates capabilities Cap1 , Cap2 … Capn for W1 ,W2 … Wn Storage server finds sets of documents S1 ,S2 … Sn that match the capabilities

Cap1 , Cap2 … Capn and returns the intersection ∩Si Problem

Server learns a lot of extra information on top of result of conjunctive query E.g. “Emails from Bob & Secret”

“Emails from President & Non-secret”

“Emails from President & Secret”

Page 8: Secure Conjunctive Keyword Search Over Encrypted Data

Possible Approaches to Conjunctive Queries Defining Meta-Keywords

– Define a meta-keyword for every possible conjunction of keywords

– E.g. “Email from Bob & Secret” meta-keyword “From Bob || Secret”

– Meta-keywords are associated with documents like regular keywords

– Problem: with m keywords, we must define 2m meta-keywords to allow for all possible conjunctive queries.

Ex: Now we have 5 keywords: If we use zero keyword to search, we have meta-keyword. If we use 1 keyword to search, we have meta-keywords. Total we have

8

0

5

51

5

525

5

4

5

3

5

2

5

1

5

0

5

Page 9: Secure Conjunctive Keyword Search Over Encrypted Data

Model of Documents

We assume structured documents where keywords are organized by fields

9

From To Date Status

m fields

Alice Bob 06/01/2004 Urgent

Alice Charlie 05/28/2004 Secret

… … … …

Dave Alice 06/04/2004 Non-urgent

n docs

D1

D2

Dn

The documents are the rows of the matrix Di = (Wi, 1, …, Wi, m)

Page 10: Secure Conjunctive Keyword Search Over Encrypted Data

Conjunctive Search on Encrypted Data Scheme Encryption: same as before Generating a Capability

Before: Cap = GenCap(W) Now: Cap = Gencap(j1, …,jt, Wj1, …, Wjt) where

j1, …,jt are t field indices Wj1, …, Wjt are t keywords

Example: GenCap(“From, Date”, “Bob, 06/04/2004”) Verifying a capability

Let Cap = Gencap(j1, …,jt, Wj1, …, Wjt) Verify (Cap, D) returns True if

D has keyword Wj1 in field j1 … D has keyword Wjt in field jt

10

Page 11: Secure Conjunctive Keyword Search Over Encrypted Data

Security definitions

A capability Cap enables the server to divide documents into two groups: those that satisfy the capability, and those that do not.

A conjunctive keyword search scheme is secure if the server learns no other information from a set of encrypted documents and capabilities.

11

Page 12: Secure Conjunctive Keyword Search Over Encrypted Data

Security definitions(cont.)

To facilitate the security definitions we define a randomized document Rand(D, T), for any set of indices and document D = (W1,…,Wm).

Rand(D,T) is formed from D by replacing the keywords of D that are indexed by T (i.e., the set ) by random values.

12

},...,1{ mT

}|{ TiWi

Page 13: Secure Conjunctive Keyword Search Over Encrypted Data

Definition 1.

A capability Cap is distinguishing for documents Di and Dj if

Give a set of indices, ,a capability Cap distinguishes a document D from Rand(D,T) if

)),,(,,()),,(,,( ji DKEncCapVerDKEncCapVer

},...,1{ mT

)( and )),,(,,( CapSupTtrueDKEncCapVer

Page 14: Secure Conjunctive Keyword Search Over Encrypted Data

Security Model

Informally “capabilities reveal no more information than they should” In particular, capabilities can’t be combined to create new ones

GenCap (j1, j2, W1, W2) & GenCap(j1, W1) GenCap(j2, W2)

Except for “trivial” set-theoretic combinations GenCap (j1, j2, W1, W2) & GenCap(j1, W1) GenCap(j1, j2,

W1, ┐W2)

Formally: we define the following game(ICC) with an adversary A1. A calls Encrypt and GenCap2. A chooses two documents D0 and D1 and receives E(Db) 3. A again calls Encrypt and GenCap4. A guesses the bit b

14

Page 15: Secure Conjunctive Keyword Search Over Encrypted Data

Security Model

A wins if A guesses b correctly And none of the capabilities given in Steps 1 and 3

distinguish D0 from D1

We say that the scheme is secure if A can’t distinguish D0 and D1 with non-negligibly advantage without the help of distinguish capability for D0 and D1 .

15

Page 16: Secure Conjunctive Keyword Search Over Encrypted Data

Security Game

ICC(indistinguishability of ciphertext from ciphertext) with D0 & D1

ICR(indistinguishability of ciphertext from random) D0 & Rand(D,T)

ICLR(indistinguishability of ciphertext from limited random) Rand(D,T) & Rand(D,T-{t})

16

Page 17: Secure Conjunctive Keyword Search Over Encrypted Data

Hardness Assumptions

Decisional Diffie-Hellman (DDH) Bilinear Decisional Diffie-Hellman (BDDH) 假設 DDH 與 BDDH不好解得

17

Page 18: Secure Conjunctive Keyword Search Over Encrypted Data

Basic Protocol

Parameters A group G of order q in which DDH is hard and a generator g of G A keyed hash function fk (Alice has the secret key k)

A hash function h Encrypting Di = (Wi,1, …, Wi,m)

– Let Vi, j = fk(Wi, j)– Let ai be a random value

Intuition• Alice commits to the encrypted keywords• The ai’s ensure that commitments are different for each document

• Same keyword looks different in different documents• The commitments are malleable within the same document

• Product of commitments = commitment to sum• Commitments are NOT malleable across different documents

18

miiiiii VaVaVai gggDE ,2,1, ,...,,)(

Page 19: Secure Conjunctive Keyword Search Over Encrypted Data

Basic Protocol (Continued)

19

miiiiii VaVaVai gggDE ,2,1, ,...,,)(

• Generating a capability Gencap(j1, …,jt, Wj1, …, Wjt)

)(),...,( 1 sasa nghghCap

t

w jk wWfs

1)(

• Verifying a capability

sat

w

Vaiwjii ghgh

1

,

Intuition The commitments are malleable The capability that allows the verification of commitments is not

malleable

Page 20: Secure Conjunctive Keyword Search Over Encrypted Data

Example

20

)(1 Alicefa kg )(1 Urgentfa kg)(1 Bobfa kg

)(2 Secretfa kg)(2 Davefa kg)(2 Alicefa kg

Capability for emails from Alice to Bob is • Let s = fk (alice) + fk (Bob)

From To Status

)(),( 21 sasa ghghCap

)()( 11 BobfaAlicefa kk gg

)()( 22 DavefaAlicefa kk gg

))()((1 BobfAlicefa kkg

))()((2 DavefAlicefa kkg

)( 11 ))()(( saBobfAlicefa ghgh kk

)( 22 ))()(( saDavefAlicefa ghgh kk

√√

X

Problem: the size of capabilities is linear in n

Page 21: Secure Conjunctive Keyword Search Over Encrypted Data

Amortized Protocol

Parameters: unchanged

Encrypting a document Di = (Wi,1, …, Wi,m) Let Vi, j = fk ( Wi, j ) Let ai be a random value

21

),...,,,()( ,2,1, miiiiiii VaVaVaai ggggDE

Page 22: Secure Conjunctive Keyword Search Over Encrypted Data

Amortized Protocol (Continued) Generating a capability Gencap(j1, …,jt, Wj1, …, Wjt)

Pick a random value s

A proto-capability

The query part

Intuition In the basic protocol, we had Now, the proto-capability is independent of the query

It can be transmitted “offline” before the query The random value s ties the proto-capability to the query

22

t

w wjiiiVaCa

i ggR 1 ,

)()( sai

ighRh •Verification: compute

return True if and False otherwise

)(),...,(),( 21 sasasa nghghghQ

t

w jk wWfsC

1)(

t

w jk wWfs

1)(

Page 23: Secure Conjunctive Keyword Search Over Encrypted Data

Constant Protocol

Parameters Two group G1 and G2 of order q An admissible bilinear map e : G1 X G1 G2 A generator g of G1 A keyed hash function fk

Encrypting a document D = (W1, …, Wm) Let Vi = fk(Wi) Let Ri,j be values chosen uniformly independently at random Let

23

miiiimimiiiiii RaRaRVaRVaa gggggDE ,1,,,1,1, ,...,,,...,,)(

Page 24: Secure Conjunctive Keyword Search Over Encrypted Data

Constant Protocol (Continued)

24

Generating a capability Gencap(j1, …,jt, Wj1, …, Wjt)

tr

Wfrr jjgggCap

t

w wjk

,...,,,, 1

)(1

Verification

t

kRar

RVaraWfr

kjii

kjikjii

i

t

w wjk

gge

ggegge

1

)()(

,

,,

1

,

,,

Page 25: Secure Conjunctive Keyword Search Over Encrypted Data

Conclusion and Future Work

Our contributions: Define security model for conjunctive keyword search on encrypted data and propose 3 protocols1. Linear communication cost2. Amortized linear communication cost

Standard hardness assumption3. Constant cost

Uses new hardness assumption Future work

Extend to full boolean queries The OR operator appears tricky…

Indistinguishability of capabilities Hide the fields that are being searched on(欄位的隱藏 )

25

Page 26: Secure Conjunctive Keyword Search Over Encrypted Data

Definition 2.

We say a conjunctive search scheme is secure according to the game ICC if any polynomial time adversary A, is a negligible function of the security parameter k.

26

)1( kAAdv

Page 27: Secure Conjunctive Keyword Search Over Encrypted Data

Security Game ICC

The adversary, A, adaptively requests the encryption, , of documents, D, and search capabilities, Cap.

A picks two documents, D0,D1 such that none of the capabilities Cap given in step 1 is distinguishing for D0 and D1. The challenger then chooses b randomly from {0,1} and gives A an encryption of Db.

27

),,( DKEnc

Page 28: Secure Conjunctive Keyword Search Over Encrypted Data

Security Game ICC

A may again ask for encrypted documents and capabilities, with the restriction that A may not ask for a capability that is distinguishing for D0

and D1. The total number of all ciphertext and capability requests is polynomial in k.

A outputs and is successful if We define the adversary's advantage as:

and the adversary is said to have an ε-advantage if

28

1,0Ab bbA

2

1]Pr[)1( bbAdv A

kA

)1( kAAdv

Page 29: Secure Conjunctive Keyword Search Over Encrypted Data

Security Game ICR

類似於 ICC 唯有 D1=Rand(D0,T) A目標也是分辨 D0&D1

Proposition 1.If there is an adversary A that wins Game ICC with advantage ε, then there exists an adversary A’ that wins Game ICR with advantage ε/2.

29

Page 30: Secure Conjunctive Keyword Search Over Encrypted Data

Security Game ICLR

類似於 ICR 唯有 D0=Rand(D,T) D1=Rand(D,T-{t}) A目標也是分辨 D0&D1

Proposition 2.If there is an adversary A that wins Game ICR with advantage ε, then there exists an adversary A’ that wins Game ICLR with advantage .

30

2/ m

Page 31: Secure Conjunctive Keyword Search Over Encrypted Data

31