IT PASSPORT
ITパスポートの問題解説
問題
ハッシュ関数を利用してダウンロードしたファイルが改ざんされていないかを確認する仕組みについて、ハッシュ値(メッセージダイジェスト)の性質として正しいものはどれか。
- ア 入力データがわずかに変わると、得られるハッシュ値は大きく異なる。
- イ ハッシュ値からは、計算に使った元のデータを簡単に復元できる。
- ウ 入力データの大きさに比例して、ハッシュ値の長さも長くなる。
- エ 同じ入力データでも、計算するたびに異なるハッシュ値が得られる。
出典:オリジナル問題|参考範囲:IPA ITパスポート試験シラバス(最新版)、情報処理技術者試験の基礎知識
正解と解説
正解:入力データがわずかに変わると、得られるハッシュ値は大きく異なる。
解説:ハッシュ関数は、任意の長さのデータから固定長の短い値(ハッシュ値・メッセージダイジェスト)を作り出す関数です。同じ入力からは必ず同じ値が得られる一方、入力が1文字でも違えば出力はまったく別物になります。この鋭敏な性質のおかげで、配布元が公開したハッシュ値とダウンロードしたファイルのハッシュ値を比べるだけで、途中で改ざんや破損が起きていないかを判定できます。さらにハッシュ値から元データを逆算できない一方向性も持つため、パスワードの保管などにも応用されます。
覚え方:ハッシュは「固定長・一方向・敏感(雪崩効果)」の3点セット。元には戻せないが少しの違いを大きく映す指紋のようなもの、とイメージしましょう。
他の選択肢はなぜ違う?
- イハッシュ関数は一方向性を持ち、ハッシュ値から元データを復元することは事実上できません。これが安全性の根拠になっています。
- ウハッシュ値の長さはアルゴリズムごとに固定で、入力が大きくても小さくても出力長は一定です。比例して長くなるという説明は誤りです。
- エ同じ入力に対しては必ず同じハッシュ値が得られます。毎回変わってしまうと改ざんチェックに使えなくなります。
この問題について
IPAのITパスポート試験シラバスとIT基礎知識を参考に、Sikaku Master向けに独自作成した問題です。公式試験問題・過去問題の転載ではありません。
IPAの過去問題の転載ではなく、シラバス・公開情報に基づく独自問題として作成しています。