NW-K37情報Ⅰ 対策問題

情報通信ネットワーク用語

データから固定長の値(ハッシュ値)を計算し、改ざん検出などに使う一方向の変換を行う関数を何というか。

解答・解説を見る

正解: 1

正答

1

この問題のポイント

ハッシュ関数(一方向の要約計算) を問う問題です。3つの性質と、暗号化との違いを押さえましょう。

解説

ハッシュ関数は、どんな大きさのデータからでも、**固定長の値(ハッシュ値)**を計算する関数です。データの「指紋」を取るようなもので、次の3つの性質があります。

  1. 同じデータからは、いつ計算しても必ず同じハッシュ値が得られる。
  2. データが1文字でも変わると、ハッシュ値は大きく変わる。
  3. ハッシュ値から元のデータを復元することはできない(一方向性)。

この性質の代表的な使い道が改ざん検出です。送信前と受信後のハッシュ値を比べ、一致すれば途中で書き換えられていないと確認できます(性質1と2)。また、Webサービスはパスワードそのものではなくハッシュ値を保存します。こうすれば、万一データが流出しても元のパスワードは分かりません(性質3)。デジタル署名でも、文書のハッシュ値に署名する形で使われています。

注意したいのは暗号化との違いです。暗号化は「鍵で戻せる」ことが前提の双方向の変換、ハッシュは「誰にも戻せない」一方向の変換です。「復号できるか否か」がこの2つを見分ける決め手で、共通テストでもこの違いを突いた選択肢が作られます。

選択肢の確認

1.○ 固定長のハッシュ値を計算し、一方向で改ざん検出などに使うのはハッシュ関数。
2.× 三角関数は角度から値を求める数学の関数で、情報セキュリティとは無関係。
3.× 一次関数も数学の関数で、ハッシュ値の計算とは無関係。
4.× 乱数関数はでたらめな数を生成するもの。同じ入力から同じ値が出るハッシュとは逆の性質。

ここだけは覚えよう

ハッシュ=固定長・一方向・1文字違えば大違い — 改ざん検出とパスワード保存の基盤。暗号化と違い元に戻せない。

関連問題

NW-K36NW-K38