ITパスポート試験 / 令和8年度 ITパスポート試験 公開問題 / 問91
certification-simodake-work

令和8年度 ITパスポート試験 公開問題 問91 解説 ハッシュ関数の特性

デジタル署名やブロックチェーンで用いられるハッシュ関数には,SHA-256,SHA-512などがある。このようなハッシュ関数に関する記述として,適切なものはどれか。

  1. ア あるハッシュ関数を用いて得たハッシュ値を,そのハッシュ関数に入力することによって,元のデータを復元することができる。
  2. イ 同じデータを異なるハッシュ関数にそれぞれ入力したとき,得られるハッシュ値は全て同じになる。
  3. ウ 同じハッシュ関数を用いる場合,入力したデータが同じであれば,得られるハッシュ値は常に同じになる。 ✓ 正答
  4. エ どのハッシュ関数にもそれぞれの逆関数が存在し,ハッシュ値から元のデータを復元することができる。

解説

ハッシュ関数の性質を瞬時に見抜くポイント

ハッシュ関数に関する問題では、その最大の武器である一方向性(不可逆性)と、再現性の2点を押さえるだけで正解にたどり着けます。「データから値は作れるが、値からデータは戻せない」「同じデータからは必ず同じ値が生まれる」という性質が判断の基準です。

ハッシュ関数の特徴と仕組み

ハッシュ関数とは、どんなに長いデータであっても、一定の長さの固定されたビット列(ハッシュ値)に変換する計算手法のことです。この仕組みには以下の3つの重要な特性があります。

  1. 再現性:同じ入力値からは、何度計算しても全く同じハッシュ値が出力されます。これが選択肢ウが正しい理由です。
  2. 不可逆性:出力されたハッシュ値から、元のデータを推測したり復元したりすることはできません。このため、選択肢アやエのように「元のデータを復元できる」といった記述は、ハッシュ関数の定義から外れる誤りとなります。
  3. 雪崩効果:入力データがほんの1ビットでも異なると、出力されるハッシュ値は全く別の値に変わります。

なぜこの知識が重要なのか

ITパスポート試験でハッシュ関数が問われる理由は、現代のセキュリティインフラにおいて欠かせない技術だからです。

例えば、パスワードの管理が挙げられます。システム側がユーザーのパスワードをそのまま保存するのは危険ですが、ハッシュ値に変換して保存しておけば、万が一データが流出しても、ハッシュ関数は元に戻せない(不可逆)ため、元のパスワードを知ることはできません。ログイン時には、ユーザーが入力したパスワードを同じハッシュ関数で計算し、保存されているハッシュ値と一致するかを確認することで、パスワードを直接保持せずに認証を行うことができます。

また、デジタル署名やブロックチェーンにおいても、この「同じ入力なら同じ値になる」かつ「改ざんするとハッシュ値が大きく変わる」という特性を利用して、データの真正性や改ざん検知が行われています。これらの仕組みの土台となるのが、今回学習したハッシュ関数の性質なのです。

各選択肢の判定

・選択肢ア:誤り。ハッシュ関数は不可逆であるため、ハッシュ値から元のデータを復元することはできません。 ・選択肢イ:誤り。異なるハッシュ関数を使えば、同じデータであっても異なるアルゴリズムで処理されるため、ハッシュ値は全く別のものになります。 ・選択肢ウ:正解。ハッシュ関数は決定論的であり、同じ入力に対しては必ず同じ出力を返します。 ・選択肢エ:誤り。選択肢アと同様に、ハッシュ関数には逆関数が存在しない(不可逆である)ことが前提です。

参考リンク

学習の記録にははてなブックマーク!

気づいたこと・覚えたことをコメントにメモしよう