レインボーテーブル攻撃とは?
レインボーテーブル攻撃とは、ハッシュ値から元のパスワードを求めるため、あらかじめ計算した平文とハッシュの対応関係を圧縮した表として持ち、照合によって高速に解読する手法。総当たりに要する計算時間を、記憶領域と引き換えに大幅に削減する考え方である。
高度試験・午前I(全区分共通)の過去問では1回出題されています。
れいんぼーてーぶるこうげき
レインボーテーブル攻撃の意味
ハッシュ値から元のパスワードを求めるため、あらかじめ計算した平文とハッシュの対応関係を圧縮した表として持ち、照合によって高速に解読する手法。総当たりに要する計算時間を、記憶領域と引き換えに大幅に削減する考え方である。
レインボーテーブル攻撃の具体例
漏えいしたパスワードデータベースのハッシュ値を表と突き合わせ、短い文字列や辞書に載る語のパスワードを数秒で復元する。利用者ごとに異なるソルトを付けていれば表を作り直す必要が生じ、事実上無力化できる。
レインボーテーブル攻撃は試験でどう引っ掛けられる?
ハッシュを逆算しているのではなく、同じハッシュになる入力を探している。ソルトが有効なのはこの攻撃に対してであり、GPUによる高速な総当たりへの対策はストレッチングである点を区別する。
レインボーテーブル攻撃と関連する用語
レインボーテーブル攻撃が出た過去問
パスワードクラック手法の一種である、レインボーテーブル攻撃に該当するものはどれか。
正解:平文のパスワードとハッシュ値をチェーンによって管理するテーブルを準備しておき、それを用いて、不正に入手したハッシュ値からパスワードを解読する。
要点:レインボーテーブルは事前計算表でハッシュを逆引きする
レインボーテーブル攻撃は、平文パスワードとそのハッシュ値を還元関数によるチェーンの形で圧縮して保持したテーブルを事前に用意し、盗み出したハッシュ値から元のパスワードを高速に逆引きする手法である。ソルトを付けてハッシュ化すれば事前計算表が使えなくなるため、有効な対策となる。
出典:令和5年度 秋期 高度共通_午前I試験 am1 問12(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。