NW-C05|情報Ⅰ 対策問題
ファイルの改ざん検出にハッシュ値が使える理由として最も適当なものはどれか。
解答・解説を見る
正解: 1
正答
1
この問題のポイント
ハッシュによる改ざん検出の原理 を問う問題です。「2つの値を比べる」ことで検出する仕組みを押さえましょう。
解説
ハッシュ関数は、どんな大きさのデータからも固定長の値(ハッシュ値)を計算する関数です。重要な性質は2つあります。①同じデータからは必ず同じ値が出る。②内容が1ビットでも変わると、値がまったくの別物になる。
改ざん検出の手順は次の通りです。
- 配布元が、正しいファイルのハッシュ値を公式サイトに掲載しておく。
- 利用者は、入手したファイルから自分でハッシュ値を計算する。
- 2つの値を比較する。一致すれば無事、不一致なら途中で改ざん・破損があったと分かる。
ハッシュは一方向の計算で、ハッシュ値から元のデータを復元することはできません。ここが暗号化(鍵があれば復号できる)との決定的な違いです。また、データは無限にあるのに値は固定長なので、理論上は同じ値になる別データ(衝突)が存在します。ただし、意図的に衝突を作り出すことが計算上きわめて困難であることが、安全性の根拠になっています。
ハッシュは、デジタル署名(文書のハッシュ値に署名する)やパスワードの保存にも使われる基盤技術です。共通テストでは「暗号化との違い」「元に戻せるか」を突く選択肢が定番です。
選択肢の確認
1.○ わずかな変更で値が激変するため、配布時の値との比較で改ざんを検出できる。
2.× ハッシュは一方向の計算で、値から元のファイルは復元できない。
3.× 暗号化は復号できるがハッシュは戻せない。別の技術。
4.× 衝突は理論上存在する。「意図的に見つけるのが計算上困難」が正確な根拠。
ここだけは覚えよう
ハッシュ値の一致=改ざんなし — 1ビットの変更で激変・一方向で復元不可・署名の土台。