180 likes | 292 Vues
This presentation by Dan Boneh, Eyal Kushilevitz, Rafail Ostrovsky, and William E. Skeith III, delivered by presenter 紀汶承, discusses advanced techniques in public key encryption that support Private Information Retrieval (PIR) queries. It covers essential tools, definitions, and constructions relevant to PIR, demonstrating how users can retrieve information without disclosing what data is accessed. The use of Bloom filters, hash functions, and homomorphic encryption techniques enhances communication efficiency and security in modifying encrypted data.
E N D
Public Key Encryption That Allows PIR Queries Dan Boneh, Eyal Kushilevitz, Rafail Ostrovsky, William E. Skeith III Presenter:紀汶承
Outline • Introduction • Tools • Definition • Main Construction
Introduction • Tools • Definition • Main Construction
PIR(Private Information Retrieval) • 允許user從擁有database的server中取回資料(item),但不洩漏取回的是什麼資料。 • PIR solutions • 藉由address,從database中,取回一個 (明文 或 加密過) 的record。 • 靠關鍵字搜尋一個未加密的資料(data)
Introduction • Tools • Definition • Main Construction
Bloom filter • 觀念: • Hash function: • suppose • A array: such that and such that • Note that ,then
Bloom filter(cont.) Input a to hi, i: 1~k h1 h2 hk T 驗證: H2(a) If then H1(a) Hk(a)
Bloom filter(cont.) • 儲存什麼? • 不只是單單儲存element,改儲存 : 表示與elements 的關係(表達element所存放的位址) • 現今儲存(a,v), , where • v 被加入 for all • If a∈S,
Bloom filter(cont.) Insert: (a1,v1) Insert: (a2,v2) {v1,v2} H1(a1) B1 ∩ B2 {v1} H2(a1) ∩ B3 B4 {v1,v2,v3} ∩ ={v1} Hk(a1) Bm
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
Modifying Encrypted Data in a Communication Efficient Way (cont.) • Parameters: • (K, , 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 ourassumption, there exists some such that
Modifying Encrypted Data in a Communication Efficient Way (cont.) • Protocol: ModifyU,S(l, α) where l and α are private input to U. • U compute i*, j* as the coordinates of l (i.e., i* and j* are quotient and remainder of l/n, respectively) • U sends to S where all values are encrypted under Apublic. • S computes for all , and replaces each cij with the corresponding resulting ciphertext. 每一次修改都對所有的Cij作修改,因此,可以簡易看出保有私密性
Introduction • Tools • Definition • Main Construction
Definition • 參數: • X: message sending parties. • Y: message receiving party. • S: server/storage provider • 定義: • KeyGen(1S): 產生公密鑰對 • SendX,S(M, K, Apublic) • RetrieveY,S(w, Aprivate)
Introduction • Tools • Definition • Main Construction
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.
SendX,S(M, K, Apublic) ε(M) Server/Storage Sender ρ γcopies of the address ρ ρ ρ ε(M) M + K ρ ρ ρ ρ Message buffer Bloom filter buffer
RetrieveY,S(w, Aprivate) PIR query Server/Storage Receiver PIR query, L ε(M) 解密 Message buffer Bloom filter buffer