セキュリティ
ハッシュ関数の誕生日攻撃(衝突探索)において、n ビットのハッシュ値で衝突を見つけるのに必要な試行回数の期待値として最も適切なものはどれか。
ア.2ⁿ回
イ.n²回
ウ.n回
エ.2ⁿ/²回正解
解説
誕生日攻撃は「クラスに何人いれば2人が同じ誕生日?」問題の暗号版。全探索空間2ⁿのうち平方根(2ⁿ/²)試行するだけで衝突が期待できる——だから128ビットでも実質64ビット分の強度しかない。
なぜ エ が正解か
エが正解。誕生日問題(Birthday Paradox)により、サイズNの集合からランダムに選んだ要素が衝突する期待試行回数はO(√N)。nビットのハッシュ値の全体空間はN=2ⁿ。衝突探索の期待試行回数=√(2ⁿ)=2ⁿ/²回。例:MD5(128ビット)の衝突探索は2⁶⁴回、SHA-256(256ビット)は2¹²⁸回で期待できる。
出典: AI生成問題(学習用)