Key-Exchange
在 PAK 協議中,誠實使用者是否也會呼叫隨機預言機乙米ķ00乙米ķ00BMK00?
在PAK方案的完整證明中,作者廣泛使用隨機預言從現實世界對手為理想世界模擬器生成的消息中提取(猜測)密碼。
問題:
- 都是隨機的預言機呼叫嗎 $ H_i(\cdots) $ 在模擬器控制的現實世界協議(甚至由誠實的使用者呼叫)中?
- 模擬器是否需要通過現實世界對手的傳遞來響應誠實使用者的請求?
- 模擬器是否利用了誠實使用者的狀態?例如,A(誠實使用者或由現實世界的對手冒充)向 B 發送密碼,B 將自己的狀態設置為接受或拒絕。B 的狀態是否被模擬器和現實世界的對手監視?
- 為什麼從現實世界的消息中提取密碼在基於模擬的證明中如此重要?是否確實是某種零知識證明來證明這些與密碼相關的消息在真實協議中與理想世界中的消息一樣是零知識的?(正如作者建議使用 NIZK 代替隨機預言機)
- 有沒有更弱的證明方法(然而,實際上仍然保證我們的安全),特別是對於密碼認證的密鑰交換區域?
- 在現實世界的協議中沒有模擬器。有一個真實世界的對手,它可以訪問與誠實方完全相同的(隨機)預言機。模擬器只控制理想模型模擬中的隨機預言機。
- 這不是定義所要求的,而是事情的工作方式。本質上,模擬器扮演著真實對手的誠實方的角色。當然,它在不知道誠實方的輸入和輸出的情況下這樣做。
- 這取決於理想的對手/模擬器獲得的關於誠實方狀態的資訊。如果理想的功能為理想的對手提供了狀態,那麼它就知道了;否則,不是。
- 定義理想功能的自然方式是各方將其密碼發送到理想功能,如果匹配,則向雙方提供隨機會話密鑰。為了在理想模型中模擬真實執行,模擬器因此必須將對手(隱式)使用的密碼發送給理想功能。
- 您可以不通過理想的功能來定義“基於遊戲的定義”。無論如何,在沒有任何設置(如 CRS 或 PKI)的情況下證明密碼協議的安全性是非常困難的。沒有隨機預言機的證明更加困難。
總的來說,您似乎可以從 PAKE 退後一步,看看理想/真實的模擬證明是如何工作的。這是我寫的一個答案,試圖給出一些解釋。但是,您確實需要閱讀一些更基礎的論文。(PAKE 是一個很難開始的地方。)