Top Banner
Public Key Encryption that Allows PIR Queries Dan Boneh Eyal Kushilevitz Rafail Ostrovsky and William E. Sk eith Crypto 2007
16

Public Key Encryption that Allows PIR Queries

Feb 02, 2016

Download

Documents

Gabriel Francis

Public Key Encryption that Allows PIR Queries. Dan Boneh 、 Eyal Kushilevitz 、 Rafail Ostrovsky and William E. Skeith Crypto 2007. Private Information Retrieval (PIR). n. ?. 4. 3. 7. i. j. i {1,… n }. x i. x = x 1 , x 2 , . . ., x n { 0,1} n. USER. SERVER. PIR. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Public Key Encryption that Allows PIR Queries

Public Key Encryption that Allows PIR Queries

Dan Boneh 、 Eyal Kushilevitz 、Rafail Ostrovsky and William E. Skeith

Crypto 2007

Page 2: Public Key Encryption that Allows PIR Queries

Private Information Retrieval (PIR)

x=x1,x2 , . . ., xn {0,1}n

SERVER

i {1,…n}

xi

USER

i j

?

7

43

n

Page 3: Public Key Encryption that Allows PIR Queries

PIR

• allows a user to retrieve an item from a server in possession of a database without revealing which item she is retrieving.

• existing PIR solutions– retrieving a (plain or encrypted) record of

the database by address– search by keyword in a non-encrypted data

Page 4: Public Key Encryption that Allows PIR Queries

Query

Answer

Page 5: Public Key Encryption that Allows PIR Queries

Outline

• Introduction

• Tools: – Bloom Filter– Modifying Encrypted Data in a

Communication Efficient Way

• Definition

• Main Construction

Page 6: Public Key Encryption that Allows PIR Queries

Introduction

• Interesting in:– communication-efficient– complete privacy.

• Technique:– Receiver: creates a public key .– Sender: message M is accompanied by an

“encoded” list of keywords .

Page 7: Public Key Encryption that Allows PIR Queries

Bloom Filters

• Basic idea:

Sa

mhi *1,0:

h1(a)

h2(a)

h3(a)

hk(a)

T 0111

1

2 3 4 5 6 m…

0 1 1

Suppose Sa

Page 8: Public Key Encryption that Allows PIR Queries

Bloom Filters (cont.)

• What to store :– certain element is in a set– value which are associated to the element

in the set.

• Definition. As same to above. But together with a collection of sets, ,where . Then to insert a pair (a, v) into this structure, v is added to for all . The set of values associated with is simply .

Vv

mijB

1 VB j

][ki

Sa)(ahi

B

ki ahiB

)(

Page 9: Public Key Encryption that Allows PIR Queries

h1(a1)

h2(a2)

hk(ak)

Insert (a1, v1) then (a2, v2) … check

V1

V1

V1

B1

B2

B3

Bm

…….

…….

V1 ,V2

V1

V2

V3

V2 ,V3

V1 ,V3

h1(a1)

h2(a2)

hk(ak)

…….

{V1 ,V2}

{V1}

{V1 ,V3}

||

V1

Page 10: Public Key Encryption that Allows PIR Queries

Modifying Encrypted Data in a Communication Efficient Way• Based on group homomorphic encryption with

communication O(√n).• Technique :

– : database (not encrypted)– (i*,j*): the position of particular element – α: the value we want to add.– v , w: two vector of length √n where

– Here δkl = 1 when k=l and 0 otherwise– Then

n

jiijx 1,

*iiiv *jjjw

otherwise

jjiiifwv ji

0

)( **

Page 11: Public Key Encryption that Allows PIR Queries

Modifying Encrypted Data in a Communication Efficient Way (cont.)• Parameters:

– (K, E, D): a CPA-secure public-key encryption

– : an array of ciphertexts which is held by a party S.

– Define F(X, Y, Z)=X+YZ. By our assumption, there exists some such that

ulll xEc 1)(

F~

),,()))(),(),((~

( zyxFzEyExEFD

Page 12: Public Key Encryption that Allows PIR Queries

Modifying Encrypted Data in a Communication Efficient Way (cont.)• Protocol: ModifyU,S(l, α) where l and α are p

rivate input to U.1. U compute i*, j* as the coordinates of l (i.e., i* and

j* are quotient and remainder of l/n, respectively)

2. U sends to S where all values are encrypted under Apublic.

3. S computes for all , and replaces each cij with the corresponding resulting ciphertext.

n

jjjj

n

iiii EwEv11

)(,)( **

),,(~

jiij wvcF nji ,

Page 13: Public Key Encryption that Allows PIR Queries

Definition

• Parameters:– X: message sending parties.

– Y: message receiving party.

– S: server/storage provider.

• Definition 1:probabilistic polynomial time algorithms and protocols:– KeyGen(1S)

– SendX,S(M, K, Apublic)

– RetrieveY,S(w, Aprivate)

Page 14: Public Key Encryption that Allows PIR Queries

Main Construction

• S maintains in its storage space encryptions of the buffers, denote these encryptions

• For , we defined

• KeyGen(k) :Run K(1s), generate Apublic and Aprivate.

mjjB

1

*1,0w kiwhH iw )(

Page 15: Public Key Encryption that Allows PIR Queries

SendX,S(M, K, Apublic)

KMME publicA )(

)(MEStorage ProviderSender

MessageBuffer

wHjjB

Bloom FilterBuffer

ρ

ρ

)(ME

γ copies of the address ρ

ρ

ρ

ρ

ρ

ModifyX,S(x, α)

Page 16: Public Key Encryption that Allows PIR Queries

RetrieveY,S(w, Aprivate)

wHjjB

ww

HjjDec

Hjj BB

Receiver

Storage Provider

PIR Query

ww Hjj

compute

Hj j BBL

wHjjB

MessageBuffer

Bloom FilterBuffer

PIR Query

LMEpo

int)(

)(ME

))(( MEDM privateA

Modifyy,S(x, α)