令和5年度 問5|ハッシュ関数とデジタル署名(改ざん検知)

令和5年度 問5科目A(四択)

セキュアハッシュ関数 SHA-256 を用いてファイル A 及びファイル B のハッシュ値を算出すると,どちらも全く同じ次に示すハッシュ値 n(16 進数で示すと 64 桁)となった。この結果から考えられることとして,適切なものはどれか。

ハッシュ値 n:86620f2f 152524d7 dbed4bcb b8119bb6 d493f734 0b4e7661 88565353 9e6d2074

正解:エ ファイル A の内容とファイル B の内容は同じである。

ポイント

同じハッシュ値から言えることと、ハッシュ値の長さを問う問題です。

考え方と解き方

ハッシュ関数は、同じデータから同じ値を、どんなデータからでも決まった長さの値を作ります。値の長さと、そこから言えることを分けて考えます。

  1. SHA-256 では、異なる内容から同じ値が出る衝突は実用上見つかっていません。同じハッシュ値なら、内容は同じと考えます。
  2. 他の選択肢は、ハッシュ値の性質や長さに合いません。したがって、最も適切なのは エ です。

ほかの選択肢

  • ア 内容を変えずに再計算すれば、同じハッシュ値になります。値が異なることはありません。
  • イ 16 進で 64 桁は 256 ビットで、32 バイトです。64 バイトではありません。
  • ウ ハッシュ値は入力の大きさに関わらず固定長です。連結したファイルでも、16 進で 64 桁です。

覚えておくこと

  • ハッシュ関数:データから固定長のハッシュ値を求める。元のデータには戻せない
  • 同じデータからは同じハッシュ値。わずかに違えば値は大きく変わる
  • SHA-2(SHA-256 など):SHA-256 は 256 ビット(16 進で 64 桁)の値を出す

(テーマ・覚えること)

出典:令和5年度 情報セキュリティマネジメント試験 公開問題 科目A 問5

前の問題次の問題