不了解確定性身份驗證加密 (DAE) 安全定義
我對Bellare 和 Shrimpton定義的*確定性認證加密 (DAE)*的安全定義有疑問。他們的定義在下面轉載,我的問題與強調的部分有關。
定義 1讓 $ \Pi = (\mathcal K, \mathcal E, \mathcal D) $ 是一個帶有頭部空間的 DAE 方案 $ \mathcal H $ , 消息空間 $ \mathcal X $ , 和擴展函式 $ e $ . DAE-對手的優勢 $ A $ 打破 $ \Pi $ 定義為
$$ \mathbf{Adv}_{\Pi}^{\mathrm{dae}}(A) = \Pr[K \gets \mathcal{K} : A^{\mathcal{E}_K(\cdot, \cdot), \mathcal{D}_K(\cdot, \cdot)} \Rightarrow 1] - \Pr[A^{\$(\cdot, \cdot), \bot(\cdot, \cdot)} \Rightarrow 1] $$
查詢時 $ H \in \mathcal H,X \in \mathcal X $ ,對手的隨機位預言機 $ \$(\cdot,\cdot) $ 返回一個隨機長度的字元串 $ |X|+e(H, X) $ . 與往常一樣,指定域外的 oracle 查詢返回 $ \bot $ . 這 $ ⊥(\cdot,\cdot) $ 甲骨文返回 $ \bot $ 在每個輸入上。我們假設對手不問 $ (H, Y) $ 如果某個先前的左(即第一個)oracle 查詢,則它的右(即第二個)oracle $ (H, X) $ 回來 $ Y $ ; 不問 $ (H, X) $ 如果之前有一些右甲骨文查詢,則它的左甲骨文 $ (H, Y) $ 回來 $ X $ ; 不問以外的左查詢 $ \mathcal H \times \mathcal X $ ; 並且不重複查詢。 最後兩個假設不失一般性,因為違反任何這些約束的對手可以被更有效和同樣有效的對手取代(在 $ \mathbf{Adv}_{\Pi}^{\mathrm{dae}} $ -感覺)沒有。 前兩個假設是為了防止微不足道的勝利
基本上,我看不出最後一個假設(即沒有重複查詢)是如何不失泛化的?更具體地說,根據這個定義,任何確定性方案是否都**需要這個假設才能被認為是安全的?
這是根據 Def打破*任何確定性方案的方法。*1,如果查詢可以重複。首先,重複相同的查詢 $ (H,X) $ 到左邊的神諭(要麼 $ \mathcal{E}_K(\cdot, \cdot) $ 或者 $ \$(\cdot, \cdot) $ ) 並返回 $ Y_1 $ 和 $ Y_2 $ . 如果 $ Y_1 = Y_2 $ 返回 1. 可以看出這種攻擊具有 DAE-advantage 是微不足道的 $ 1-2^{-|X|-e(H,X)} $ .
作為他們 WLOG 聲明的理由,我想他們有以下減少的想法。讓 $ A $ 成為重複查詢的 DAE 對手,並讓 $ B $ 以下 DAE 對手沒有。它執行 $ A $ 並轉發所有 $ A $ 對它自己的預言機的查詢,除非在任何時候 $ A $ 重複查詢,其中 $ B $ 而是為該查詢返回相同的響應(其中 $ B $ 記憶體)。 $ B $ 輸出與 $ A $ . 但是,這種減少不起作用!(特別是,它不能正確模擬 DAE 遊戲)。
正如我在評論中所寫,您提出的攻擊不起作用的原因是隨機預言機在使用相同輸入進行查詢時也會返回相同的結果。
理想的功能顯然仍然應該是一個(隨機)功能,但我同意您參考中的定義並不像它可能的那樣清晰。說“統一隨機函式”而不是“隨機位預言機”會更準確。例如,參見本文中的定義 1 。