Cryptanalysis

對於公鑰加密,為什麼抵制 COA 就意味著抵制 CPA?

  • November 15, 2011

我的教授告訴我:

如果公鑰密碼系統對純密文攻擊是安全的,那麼它對選擇明文攻擊也是安全的。

為什麼這是真的?有證據證實這一點嗎?

我曾經/正在假設對於公鑰加密,COA 的意思是“除了公鑰之外,只有密文”。否則,任何具有已發布密鑰的安全對稱密碼都將成為“抗 COA”的 PKE 方案。考慮到這一點,訪問加密預言機不可能幫助攻擊者,因為攻擊者已經可以使用公鑰加密任何明文。 $ : $ 因此,COA 阻力意味著 CPA 阻力。 $ : $ (對於公鑰加密,我假設 COA 的定義)

我的腦海中有一個 COA 安全性的定義,但我在文獻或參考書中找不到這個定義(適用於公鑰密碼術)。

在它之下,教科書 RSA 是一個公共密鑰密碼系統的例子,它是 COA 安全但不是 CPA 安全的。要獲得 CPA 安全,一個必要但不充分的屬性是兩次加密同一消息不會兩次都給您相同的密文。為此,加密函式應該是隨機的。帶有 OAEP 的 RSA 和 Elgamal 一樣是 CPA 安全的。為了保證 COA 安全,您基本上只需要確保私鑰不容易從公鑰中計算出來。

無論如何,問題實際上歸結為定義,並且在沒有為 PKC 提供 COA 安全性的定義的情況下,我輕率地說該聲明是對還是錯(後者,我最初是這樣做的,在我編輯此答案之前) .

如果 COA 和 CPA 安全遊戲之間的唯一區別是對手是否可以訪問加密預言機,那麼向對手提供公鑰會賦予對手加密預言機的所有權力。在這種情況下,COA 和 CPA 是等價的。

然而,CPA 安全遊戲中的挑戰基於對手選擇一對消息進行加密,對其中一個消息進行加密(隨機選擇),並挑戰說明哪一個消息。我不相信 PKC 的 COA 安全遊戲中的挑戰會是相同的,因為挑戰的前提是對手選擇(或至少知道)兩個潛在的明文候選者。

如果 COA 和 CPA 中的挑戰不同,它們不一定是等效的。

引用自:https://crypto.stackexchange.com/questions/1177