辞書攻撃・レインボーテーブル攻撃とは?じしょこうげき・れいんぼーてーぶるこうげき
辞書攻撃は、よく使われる単語や流出したパスワードの一覧を順に試して認証を突破しようとする攻撃。レインボーテーブル攻撃は、盗み出したハッシュ値を、平文とハッシュ値の対応表を圧縮した表と突き合わせて元のパスワードを逆引きする攻撃。前者はログイン画面に、後者は漏えいしたハッシュ値に向く。
最終更新:2026-10-07
高度試験の午前Iを最短で暗記する →背景
ハッシュ関数は計算をさかのぼれないが、あらかじめ大量の平文をハッシュ化して表にしておけば、突き合わせるだけで元が分かる。計算をやり直す総当たりに対し、記憶領域を使って時間を買う発想がレインボーテーブルで、だから対策も「共通の表を作れなくする」方向になる。
具体例
利用者ごとに異なるランダム文字列(ソルト)をパスワードへ足してからハッシュ化すると、同じパスワードでも利用者ごとにハッシュ値が変わり、共通の表が使えなくなる。さらにストレッチング(ハッシュ計算の反復)で1件あたりの計算時間を延ばす。
試験での引っ掛け
対策の効き先が違う点が問われる。ソルトとストレッチングはレインボーテーブル攻撃と総当たりに効くが、ログイン画面で試される辞書攻撃は止められず、そちらはアカウントロックや多要素認証で防ぐ。総当たり攻撃との違いは、試す候補をあらかじめ絞り込んでいる点にある。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。