情報処理技術者試験の問題 SM-H13AM

KIKIの情報処理試験の部屋 〜シスアドから高度まで〜という情報処理技術者試験の問題の解説をおこなうサイトから.
高橋雅奇さん(d:id:TakahashiMasaki)がブックマークしていたので見つけたテクニカルエンジニア(システム管理)午前 平成13年 問42という問題を見てみる.

テクニカルエンジニア(システム管理)午前 平成13年 問42

次の 4 種の脅威に対して,メッセージ認証が有効なものはどれか。
a (盗聴)

      データα ___ データα
┌────┐    /ネット\    ┌────┐
│ユーザ A├───→| ワーク |───→│ユーザ B│
└────┘    \___/    └────┘
            │
            │
            ↓
         ┌──────┐
         │悪意の第三者│
         └──────┘

b (なりすまし)

           ___ データα
┌────┐    /ネット\    ┌────┐
│ユーザ A├--------| ワーク |───→│ユーザ B│
└────┘    \___/    └────┘
            ↑
        データα│
            │
         ┌──┴───┐
         │悪意の第三者│
         └──────┘

c (改ざん)

      データα ___ データβ
┌────┐    /ネット\    ┌────┐
│ユーザ A├───→| ワーク |───→│ユーザ B│
└────┘    \___/    └────┘
           │ ↑
       データα│ │データβ
           ↓ │
         ┌───┴──┐
         │悪意の第三者│
         └──────┘

d (窃取)

      データα ___
┌────┐    /ネット\    ┌────┐
│ユーザ A├───→| ワーク |--------│ユーザ B│
└────┘    \___/    └────┘
            │
        データα│
            ↓
         ┌──────┐
         │悪意の第三者│
         └──────┘
  1. ア a と b
  2. イ b と c
  3. ウ c
  4. エ c と d

解答

ウ c

ダウト.
メッセージ認証を利用する際にはAとB間で鍵が秘密に共有されている. だから悪意ある第三者は自分の送りたいデータに正しいメッセージ認証コード (MAC) を付けることは出来なさそうというのが直観である (本当は色々と証明しなきゃいけない).
もしウが正解だとしよう.
この場合, bの状況で悪意ある第三者がデータαに正しいMACを付けることができるだろうか? よくよく考えると, cの状況はbの状況よりも悪意ある第三者にとって得られている情報は多い. よって, cの状況で安全なならばbの状況でも安全である. よってcが防げるのならばbも防げないといけない.
色々譲って, メッセージ認証の方法がハッシュ関数を噛ましてハッシュ値を得るだけだとすると, bでもcでも安全じゃない.
さて問題作成者は何を正解にしたのだろう? 誰か過去問持ってませんか.

余談

あとはbの状況で安全だけどcの状況で安全でないMACとかもありそう. IND-CPAだけどIND-CCAじゃない暗号とかあるんなら, そっちの方でもセパレーションはありそうだな. 情報理論的に安全なMACもありそう.

追記

bには(なりすまし)と書いてあるのでAとB間で鍵共有がなされていない可能性もある. 鍵共有がなされていない場合には, cも防げない. bだけ鍵共有がなされてないと考えるのが正解なん? cでも中間者攻撃と考えるとなされてない可能性はあるんだが.