Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Pseudorandom-Permutation Index. 2 Outline Introduction Goh’s Z-IDX PRP-Index Secure game.

Similar presentations


Presentation on theme: "1 Pseudorandom-Permutation Index. 2 Outline Introduction Goh’s Z-IDX PRP-Index Secure game."— Presentation transcript:

1 1 Pseudorandom-Permutation Index

2 2 Outline Introduction Goh’s Z-IDX PRP-Index Secure game

3 3 Introduction Keyword index is a data structure that allows us to search in constant time for documents containing specified keywords Unfortunately, standard index constructions are not designed for encrypted documents, because they may leak some information about the document.

4 4 Parameter e: pseudorandom permutation f: pseudorandom function G: pseudorandom generator Key: k D w : (w 1, w 2,.., w n ) D id : document’s identifier

5 5 Goh ’ s Z-IDX

6 6 Bloom Filter

7 7 PRP-Index1&2 ‘water’ trapdoor: t 1 = E k (‘water’) codeword: x 1 =e(t 1, D id ) key: y 1 =f(D id, t 1 ) 1. sorted sequence2. hash(collision) BuildIndex (D, Key) SearchIndex (trapdoor, Index)

8 8 PRP-Index1 x 4 : (1, 4) Search time: O(log n) x 3 <x 4 <x 1 <x 5 <x 6

9 9 PRP-Index2 h(x4)h(x4) x 4 : (1, 4) 1 2 3 4 ….. m 用 f id (E k (w 4 )) 加密 null s

10 10 P-Index (Position-Index) ‘water’ trapdoor: t 1 = e k (‘water’) codeword: x 1 =f(D id, t 1 ) key 1 =G(t 1,+D id ) 3. hash + array BuildIndex (D, Key) SearchIndex (trapdoor, Index)

11 11 P-Index (Position-Index)

12 12 擬亂排列 (Pseudorandom Permutation, PRP)(1/2) 具有一對一的特性。在相同金鑰下,不會產 生輸入值不同,而輸出值相同的情況,沒有 碰撞 (Collision) 的情形,而且為單向函數。 若函數 ∏: {0, 1} n × {0, 1} s → {0, 1} n 為ɛ - pseudorandom-permutation ,則此函數滿足 下列性質: 1. ∏ (x, k) 可以定義為 ∏ k (x) 其中輸入值 x (0, 1) n 以及金鑰 k {0, 1} s ,並且計算速度要快, 必需在常數時間內完成。

13 13 擬亂排列 (Pseudorandom Permutation, PRP)(2/2) 2. 以 ∏ 作為輸入,由演算法 A 對函數 ∏ 作詢問, 在 t 的時間裡,進行了幾次查訊後,演算法 A 若判斷 ∏ 為擬亂排列,輸出 1 ,反之輸出 0 , 判斷為隨機排列函數;則演算法 A 能成功分 辨擬亂排列和隨機排列函數的優勢 (advantage) ,定義如下: | Pr[A ∏k(.) = 1] - Pr[A E(.) = 1] | < ɛ, 其中 E 為隨機 排列函數。

14 14 IND-CKA Index(1/4) 攻擊者 A 使用選擇關鍵字攻擊 (chosen keyword attack) 法來進行攻擊,由攻擊者 A 挑選欲知關 鍵字及文件交給挑戰者 C 來產生相對應的後門 及索引並回傳給攻擊者,之後攻擊者 A 開始進 行攻擊挑戰,最後由攻擊者在進行選擇關鍵字 攻擊的優勢 (advantage) 來判斷此索引架構是 否能抵擋選擇關鍵字攻擊法

15 15 IND-CKA Index(2/4) 1. 挑戰者 C 首先執行 Keygen 來得到自己的私密 金鑰 k 2. 惡意攻擊者 A 可以對 C 進行詢問,由 A 產生文 件 D 並對 C 進行詢問,詢問此文件 D 的索引 I D 為何,以及任選關鍵字 w 對 C 要求其關鍵字的 後門為何; C 在接到要求後,以私密金鑰 k 來 執行 BuildIndex 及 Trapdoor , A 可以由從 C 得 到的後門,自行對索引 I D 進行搜尋

16 16 IND-CKA Index(3/4) 3. 在經過幾次詢問後, A 開始進行攻擊挑戰;由 A 產生 出一新文件 D’ 及二關鍵字 w 0, w 1 ,其中 A 不能擁有此 二關鍵字的後門, A 將此文件 d 及關鍵字 w 0, w 1 傳送 給 C ; C 選取 b {0, 1} ,將 W b 放入文件 D’ 中並建 立其索引 I D’ ,回傳給 A 4. A 可以繼續對 C 作其他文件或關鍵字的索引及後門 的詢問,除了步驟( 3 )的 w 0, w 1 的後門不能詢問以 外。 5. A 最後輸出一值 b’ , A 成功破解之條件為 b’ = b

17 17 IND-CKA Index(4/4) 攻擊者 A 進行選擇關鍵字攻擊的優勢 (advantage) 為 Adv A =|Pr[b=b’]–1/2| 若一索引架構為ɛ -IND-CKA index ,表示 Adv A =|Pr[b=b]–1/2|< ɛ,惡意攻擊者 A 猜對 b 的 機率和 1/2 差距小於ɛ。

18 18 ɛ -IND-CKA Index If ∏ is a ɛ -pseudo-random-permutation, then P-Index is a ɛ -IND-CKA Index

19 19 proof 假設若 PRP-Index 不為ɛ -IND-CKA index ,則 會存在一 algorithm α 可以ɛ -breaks PRP- Index. 現在我們建立一個 algorithm β 使用 α 來判斷 ∏ 為擬亂排列或隨機排列 演算法 β 將利用輸入值 ∏ 建構 P-Index 環境, 將演算法 α 放入此環境中進行攻擊挑戰進,其 中演算法 α 攻擊所需的資訊均由 β 所給予,最 後由演算法 α 的結果來做為演算法的輸出值來 判斷 ∏ 是否為擬亂排列

20 20

21 21 proof 1. 演算法 β 首先執行 Keygen 來得到自己的私密 金鑰 k 2. 演算法 α 可以對 β 進行詢問,由 A 產生文件 D 並 對 β 進行詢問,詢問此文件 D 的索引 I D 為何, 以及任選關鍵字 w 對 β 要求其關鍵字的後門為 何; β 在接到要求後,以私密金鑰 k 和輸入函 數 ∏ 來執行 BuildIndex 及 Trapdoor , α 可以由 從 β 得到的後門,自行對索引 I D 進行搜尋

22 22 proof 3. 在經過幾次詢問後, α 開始進行攻擊挑戰;由 α 產生 出一新文件 D’ 及二關鍵字 w 0, w 1 ,其中 α 不能擁有此 二關鍵字的後門, α 將此文件 d 及關鍵字 w 0, w 1 傳送 給 β ; β 選取 b {0, 1} ,將 W b 放入文件 D’ 中並建 立其索引 I D’ ,回傳給 α 4. α 可以繼續對 β 作其他文件或關鍵字的索引及後門的 詢問,除了步驟( 3 )的 w 0, w 1 的後門不能詢問以外。 5. 演算法 α 最後輸出一值 b’ ,當 b = b’ 時,演算法 β 輸 出 1 ,表示 β 猜測 ∏ 為擬亂函數,反之輸出 0 。

23 23 proof | Pr[ β ∏ k (.) = 0] - Pr[ β e (.) = 0] | = | Pr[b = b ’ | ∏ is pseudorandom permutation] – Pr[b = b ’ | e is random permutation] | 當 e 為 random permutation 時,假設文件 D’={w b } 時,因為由 e 所得的後門為真隨機,所 以無法猜測 w 0, w 1 的後門,也無法根據索引來 分析;因此演算法 α 能猜測出 b = b’ 的機率為 1/2 。

24 24 proof | Pr[ β ∏ k (.) = 0] - Pr[ β e (.) = 0] | = | Pr[b = b ’ | ∏ is pseudorandom permutation] – Pr[b = b ’ | e is random permutation] | = | Pr[b = b’] – 1/2 | = Adv α ≥ ɛ 得到 ∏ 不為ɛ -pseudorandom-permutation If ∏ is a ɛ -pseudo-random-permutation, then P-Index is a ɛ -IND-CKA Index


Download ppt "1 Pseudorandom-Permutation Index. 2 Outline Introduction Goh’s Z-IDX PRP-Index Secure game."

Similar presentations


Ads by Google