ハッシュ関数の基本特性|ITパスポート 令和8年 公開問題 問91
出典:令和8年 公開問題 問91
分野:技術要素 / セキュリティ
デジタル署名やブロックチェーンで用いられるハッシュ関数には、SHA-256、SHA-512などがある。このようなハッシュ関数に関する記述として、適切なものはどれか。
- ア:あるハッシュ関数を用いて得たハッシュ値を,そのハッシュ関数に入力することによって,元のデータを復元することができる。
- イ:同じデータを複数のハッシュ関数にそれぞれ入力したとき,得られるハッシュ値は全て同じになる。
- ウ:同じハッシュ関数を用いる場合,入力したデータが同じであれば,得られるハッシュ値は常に同じになる。
- エ:どのハッシュ関数にもそれぞれの逆関数が存在し,ハッシュ値から元のデータを復元することができる。
TSUNAGARU-ADVICE
まず押さえたいこと
ハッシュ関数はデータの一方向性変換を行うため、同じ入力には同じハッシュ値が生成され、かつハッシュ値から元のデータを復元することはできません。
迷ったときの判断軸
ハッシュ関数の基本特性である一方向性と再現性(同じ入力は同じ出力になる)に注目し、逆に復元可能とする記述は誤りと判断します。
次の学習につなげるために
ハッシュ関数の性質を正しく理解することで、デジタル署名やブロックチェーンにおけるセキュリティ技術の基礎を学習しやすくなります。
ハッシュ関数は任意の長さの入力データを固定長のハッシュ値に変換する一方向関数です。主な特徴として、元のデータからハッシュ値は計算できるが、ハッシュ値から元のデータを復元することはできません(不可逆性)。また、同じハッシュ関数に同じ入力を与えれば常に同じハッシュ値が得られますが、異なるハッシュ関数では通常、異なるハッシュ値が得られます。
以上の特性から、この設問の正しい記述は「同じハッシュ関数を用いる場合,入力したデータが同じであれば,得られるハッシュ値は常に同じになる」です。
したがって、ウが適切です。
❌他選択肢が誤りの理由
ア:あるハッシュ関数を用いて得たハッシュ値を,そのハッシュ関数に入力することによって,元のデータを復元することができる。
⇒ハッシュ関数は一方向関数であり、ハッシュ値から元のデータを復元できません。
イ:同じデータを複数のハッシュ関数にそれぞれ入力したとき,得られるハッシュ値は全て同じになる。
⇒異なるハッシュ関数は異なる計算方法を用いるため、同じデータでも異なるハッシュ値が得られます。
エ:どのハッシュ関数にもそれぞれの逆関数が存在し,ハッシュ値から元のデータを復元することができる。
⇒ハッシュ関数は元のデータに戻せない不可逆性があり、逆関数は存在しません。