令和元年度 秋期 午前 問40
セキュリティ
SHA-256に関する問題
ファイルの提供者は,ファイルの作成者が作成したファイル A を受け取り,ファイル A と,ファイル A に SHA-256 を適用して算出した値 B とを利用者に送信する。そのとき,利用者が情報セキュリティ上実現できることはどれか。ここで,利用者が受信した値 B はファイルの提供者から事前に電話で直接伝えられた値と同じであり,改ざんされていないことが確認できているものとする。
- ア値 B に SHA-256 を適用して値 B からディジタル署名を算出し,そのディジタル署名を検証することによって,ファイル A の作成者を確認できる。
- イ値 B に SHA-256 を適用して値 B からディジタル署名を算出し,そのディジタル署名を検証することによって,ファイル A の提供者がファイル A の作成者であるかどうかを確認できる。
- ウファイル A に SHA-256 を適用して値を算出し,その値と値 B を比較することによって,ファイル A の内容が改ざんされていないかどうかを検証できる。
- エファイル A の内容が改ざんされていても,ファイル A に SHA-256 を適用して値を算出し,その値と値 B の差分を確認することによって,ファイル A の内容のうち改ざんされている部分を修復できる。
答えと解説を見る
✓ これが正解ウファイル A に SHA-256 を適用して値を算出し,その値と値 B を比較することによって,ファイル A の内容が改ざんされていないかどうかを検証できる。
解説
同じハッシュ値になるかを見て、改ざんの有無を確かめます。
要約値は、元の中身から決まった手順で作る短い値です。中身が一文字でも変われば、まったく違う値になります。受け取った側は、手元の中身から自分で同じ手順で値を作れます。それを、別の道で伝えられた値と見比べます。一致すれば、中身が途中で書き換えられていないと確かめられます。ここで大事なのは、比べる相手の値が信用できることです。問題文では、その値を電話で直接伝えられ、確かだと分かっています。一方、この仕組みで分かるのは中身が変わっていないことだけです。誰が作ったかまでは分かりません。作り手を確かめたいなら、鍵を使った署名の仕組みが別に必要になります。別の道で値を伝えるのは、その値ごと差し替えられては意味がないからです。何を確かめられて何を確かめられないかを、道具ごとに区別します。
ほかの選択肢はなぜ違うのか
- ア値 B に SHA-256 を適用して値…:要約値からさらに署名を作って、作り手を確かめると述べています。要約値を要約しても、鍵を使っていないので誰の証しにもなりません。作り手の確認には、本人だけが持つ鍵が必要です。要約値をもう一度縮めても、持ち主の情報は生まれません。
- イ値 B に SHA-256 を適用して値…:同じく要約値から署名を作り、提供者と作り手が同じかを確かめると述べています。鍵が出てこない時点で、身元を確かめる仕組みにはなりません。二人が同じかどうかも、この材料からは分かりません。作った人までは分かりません。
- エファイル A の内容が改ざんされていても…:食い違いから、書き換えられた場所を直せると述べています。要約値は短くまとめた値なので、元へ戻す手がかりを持っていません。見つけることと直すことは、必要な仕組みが違います。短く縮めた時点で、戻す手がかりは失われています。
この問題の用語
- SHA-256データから決まった長さの値を計算する関数。値が一致すれば内容も同じとみなせ、改ざんの検知に使われます。
- 改ざん保管や送信の途中で、内容を許されずに書き換えること。完全性が損なわれますが、電子署名などを使えば起きたことを見つけられます。
- ディジタル署名デジタル署名の古い書き方で、指しているものは同じです。改ざんを見つけられるだけで、改変そのものを防ぐ力はありません。
出典:令和元年度 秋期 基本情報技術者試験 午前 問40
同じ用語が出る問題
- 令和6年度 科目A 問9:ペネトレーションテストの問題(改ざん)
- 令和元年度 秋期 午前 問38:ディジタル署名の検証鍵と使用方法(ディジタル署名)
- 平成30年度 秋期 午前 問43:セキュアブートの説明(ディジタル署名)
- 平成29年度 春期 午前 問40(SHA-256)
- 平成27年度 秋期 午前 問43:SHA-256に関する問題(SHA-256)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)