マナビングITパスポート

ハッシュ関数の出力と復元にはどんな特徴がある?

ITパスポート試験 令和元年度秋期 問93 / セキュリティ › 情報セキュリティ対策・実装技術

過去問にチャレンジ

令和元年度秋期 問93

ディジタル署名やブロックチェーンなどで利用されているハッシュ関数の特徴に関する,次の記述中のa,bに入れる字句の適切な組合せはどれか。 ハッシュ関数によって,同じデータは,[a]ハッシュ値に変換され,変換後のハッシュ値から元のデータを復元することが[b]。

令和元年度秋期 問93の図
  1. ア

    a:都度異なる、b:できない

  2. イ

    a:都度異なる、b:できる

  3. ウ

    a:常に同じ、b:できない

  4. エ

    a:常に同じ、b:できる

会話形式の解説

講師講師
この問題では、ハッシュ関数の出力が毎回同じかどうかと、元のデータに戻せるかを分けて考えます。
受験者受験者
変換するたびに値が変わるようにも思えます。同じデータなら、結果も同じですか。
講師講師
同じハッシュ関数に同じデータを入力すれば、ハッシュ値、つまり変換後の値は毎回同じです。まず「常に同じ」に絞れます。
受験者受験者
では、残る違いは、その値から元のデータを復元できるかどうかですね。
講師講師
はい。ハッシュ値から元のデータを実用的に復元することは困難です。したがって、「常に同じ」と「できない」の組合せが正解です。
受験者受験者
「都度異なる」と「できない」の組合せは、復元については合っていますが、値の変わり方が違うのですね。
講師講師
そのとおりです。「都度異なる」と「できる」の組合せは、両方とも誤りです。
受験者受験者
「常に同じ」と「できる」なら、前半だけが合っていますか。
講師講師
はい。ハッシュ値から実用的に元のデータを復元できる、という後半が誤りです。
受験者受験者
同じ入力なら同じ値になり、その値から元のデータを復元するのは困難、と覚えます。
講師講師
なお、復元が困難でも、候補のデータをハッシュ化して値を照合することはできます。

まとめ

同じハッシュ関数に同じデータを入力すると、ハッシュ値は毎回同じになります。ハッシュ値から元のデータを実用的に復元することは困難です。したがって、正解は「常に同じ」と「できない」を組み合わせたウです。候補のデータをハッシュ化して値を照合することはできます。

解答・解説

正解はウです

この問題のテーマ

ハッシュ関数の二つの特徴を問う問題です。同じデータから得られる値と、その値から元のデータを復元できるかを判断します。

解き方の考え方

まず、同じハッシュ関数に同じデータを入力すれば、計算するたびに同じハッシュ値になると考え、aを「常に同じ」に絞ります。次に、ハッシュ値から元のデータを実用的に復元することは困難なので、bは「できない」を選びます。この組合せはウです。

選択肢ごとの解説

  1. ×ア  a:都度異なる、b:できない
    「都度異なる」が誤りです。同じハッシュ関数に同じデータを入力すれば、ハッシュ値は毎回同じになります。bの「できない」は適切です。
  2. ×イ  a:都度異なる、b:できる
    「都度異なる」が誤りです。また、ハッシュ値から元のデータを実用的に復元することは困難なので、「できる」も誤りです。
  3. ○ウ  a:常に同じ、b:できない
    同じハッシュ関数に同じデータを入力すると、ハッシュ値は「常に同じ」です。そのハッシュ値から元のデータを実用的に復元することは困難なので、「できない」も適切です。
  4. ×エ  a:常に同じ、b:できる
    aの「常に同じ」は適切です。しかし、ハッシュ値から元のデータを実用的に復元することは困難なので、bの「できる」は誤りです。

補足

「復元できない」は、ハッシュ値が元データを探す手掛かりにもならないという意味ではありません。候補のデータをハッシュ化し、値を照合することはできます。

POINT

  • 同じハッシュ関数に同じデータを入力すると、同じハッシュ値が得られます。
  • ハッシュ値から元データを実用的に復元することは困難です。
  • 組合せ問題では、まず確実に判断できる欄から選択肢を絞ります。

※出典:令和元年度秋期 ITパスポート試験 問93(一部改変)