Provable-Security

IND-CCA1和IND-CCA2的本質區別?

  • April 14, 2022

對於一些加密方案 $ (\mathcal{E}, \mathcal{D}) $ :

在 IND-CCA 的定義中,對手 $ \mathcal{A} $ 可以訪問解密預言機 $ \mathcal{D} $ . 這個設置的深層原因是為了確保我們的方案能夠“保護密文”(例如完整性和真實性)。

所以“保護密文”是 IND-CPA 安全方案無法提供的。這就是 IND-CCA 比 IND-CPA 更強的原因。此外,IND-CCA2 允許 $ \mathcal{A} $ 查詢 $ \mathcal{D} $ 後 $ \mathcal{A} $ 收到挑戰密文 $ c^{*} $ ,即所謂的“自適應”查詢。

那麼我的問題是:

  • 我們應該如何以一種清晰的方式****描述IND-CCA2 中這種獨特的抵抗自適應查詢的能力?

換言之,“類隨機比特密文”導致IND-CPA安全,“密文保護”導致IND-CCA1安全。那麼是什麼導致 IND-CCA2 安全性呢?

提前致謝!

IND-CCA1 是在選擇密文攻擊下的不可區分性。

IND-CCA2 是自適應選擇密文攻擊下的不可區分性。

在這兩種情況下,對手都試圖破譯密文 $ C $ 通過向將解密任何內容的解密預言機進行查詢。不同之處在於,在 IND-CCA1 中,查詢是在不知道 $ C $ (在查詢之後給對手),當在 IND-CCA2 中查詢時,可以在了解以下內容的情況下進行 $ C $ (早期給予對手,禁止給予 $ C $ 到解密預言機)。

IND-CCA1 模擬了一個臨時提供給對手的解密設備。IND-CCA2 使之永久化。

以下是需要 IND-CCA2 加密的情況:

  • 有一個伺服器解密,然後將解密的明文解析為(消息簽名)對,並根據公鑰(與加密/加密密鑰無關)對其進行檢查。如果 OK,則伺服器根據message進行操作;否則它會輸出“我不會做”的消息
  • 大使館 A 知道它發給 B 的消息被 E 截獲並轉發(使用前綴 INTERCEPT)加密到 F;F 解密然後將以 INTERCEPT 開頭的內容轉發給 G,A 已經穿透。這將 A 置於 IND-CCA2 情況下,以攻擊從 E 到 F 的密碼(在 A 只能送出以 INTERCEPT 開頭的消息的限制內)。
  • 有一個伺服器解密,然後刪除填充,定時攻擊可以知道刪除了多少填充。

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