IT PASSPORT
ITパスポートの問題解説
問題
Webサイトでパスワードを保存するとき、ハッシュ関数で変換した値を保存する。ハッシュ関数の性質として適切でないものはどれか。
- ア 同じデータを入力すれば、いつも同じハッシュ値が得られる
- イ 入力データの長さにかかわらず、ハッシュ値の長さは一定である
- ウ 入力データがわずかに変わると、ハッシュ値が大きく変化する
- エ ハッシュ値から元のデータを簡単に計算して復元できる
出典:オリジナル問題|参考範囲:IPA ITパスポート試験シラバス(最新版)、情報処理技術者試験の基礎知識
正解と解説
正解:ハッシュ値から元のデータを簡単に計算して復元できる
解説:ハッシュ関数は、任意のデータを固定長の値(ハッシュ値)に変換する一方向の関数です。「一方向」とは、入力から出力は計算できても、出力から入力を逆算するのが現実的に不可能だという意味で、これを原像計算困難性といいます。だからこそパスワードをハッシュ値で保存しておけば、万一データが漏れても元のパスワードは簡単には分かりません。照合時は入力されたパスワードを同じ関数でハッシュ化し、保存値と一致するかを比べます。同じ入力なら必ず同じ値になり、少しでも違えば大きく異なる値になるので、改ざん検出やファイルの同一性確認にも使われます。
覚え方:ハッシュは「行きはよいよい、帰りは不可能」。固定長・一方向・同じ入力で同じ出力、の3点をおさえましょう。
他の選択肢はなぜ違う?
- ア同じ入力に対して必ず同じ出力を返すのはハッシュ関数の正しい性質で、パスワード照合に利用できる理由です。
- イ入力の長さによらず固定長の値を出力するのはハッシュ関数の正しい特徴です。
- ウわずかな入力の違いで出力が大きく変わる性質(雪崩効果)は、改ざん検出に役立つ正しい性質です。
この問題について
IPAのITパスポート試験シラバスとIT基礎知識を参考に、Sikaku Master向けに独自作成した問題です。公式試験問題・過去問題の転載ではありません。
IPAの過去問題の転載ではなく、シラバス・公開情報に基づく独自問題として作成しています。