この概念が出た関連問題

この試験の対策ガイド

情報セキュリティマネジメント試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は エ

解説

ハッシュ関数SHA-256は,入力データから固定長(256ビット=16進数64桁)のハッシュ値を生成します。同じ入力からは必ず同じハッシュ値が得られ(再現性),わずかでも内容が異なれば全く異なる値になります。また,異なる2つの入力が偶然同じハッシュ値になる『衝突』は,計算上ほぼ起こり得ないほど低い確率です。したがって,ファイルAとファイルBのハッシュ値が全く同じであれば,両ファイルの内容は同じであると考えられます。正解はd『ファイルAの内容とファイルBの内容は同じである』です。選択肢aは,内容を変えなければ再計算しても同じ値になる(異なるとするのは誤り)。bは,16進数64桁は256ビット=32バイトであり64バイトは誤り。cは,連結したファイルCのハッシュ値もSHA-256なら同じく64桁であり128桁にはなりません。

なぜ他の選択肢は違うのか

選択肢 ア
ハッシュ関数は,同じ入力からは必ず同じハッシュ値を出力します。内容を変更せずに再度算出すれば同じ値になるため,『ハッシュ値が異なる』という記述は誤りです。
選択肢 イ
16進数64桁は256ビット,すなわち32バイトです(1桁=4ビット,64桁÷2=32バイト)。データ量を64バイトとする記述は誤りで,正しくは32バイトです。
選択肢 ウ
ファイルを連結したファイルCのハッシュ値もSHA-256で算出すれば,同じく16進数64桁です。入力の長さによらず出力は固定長なので,128桁にはなりません。

解くときのポイント

SHA-256は固定長256ビット=16進64桁=32バイト。同じハッシュ値=内容が同じ(衝突はほぼ起こらない)。入力が長くても出力桁数は不変。