IND-CCA2の定義
Bellare, Hofheinz, and Kiltz “Subtleties in the Definition of IND-CCA: When and How Should Challenge-Decryption be Disarrowed?” (ePrint 2009/418)
暗号のIND-CCA2安全性も定義によって強さが変わるという話.
敵がメッセージを2つ出す前に行った復号クエリの集合をS1, チャレンジをもらった後の復号クエリの集合をS2とします.
- IND-CCA2-SP
- b=b'かつチャレンジがS2に入っていなかったら勝ち
- IND-CCA2-BP
- b=b'かつチャレンジがS1とS2に入っていなければ勝ち
- IND-CCA2-SE
- 後の方の復号クエリでチャレンジを投げない敵のみを考える. b=b'なら敵の勝ち.
- IND-CCA2-BE
- 前でも後でも復号クエリでチャレンジを投げない敵のみを考える. b=b'なら敵の勝ち.
とまぁ4通り考えられます.
教科書によって流儀が違っていたらしく, Goldreich, Delfs and Knebel, Katz and LindelはIND-CCA2-SEだけども, Menezes, van Oorschot and VanstoneはIND-CCA2-BEだったりするそうで.
彼らは, たとえば, OWPとIND-CCA2-BP安全な暗号を仮定して, IND-CCA2-BP安全だけどIND-CCA2-SP安全でない暗号を構成しています. (アイデアは意外と単純.)
一番強いのはIND-CCA2-SPかIND-CCA2-SEなのでそれを使えばいいということです.