セキュリティ

基本情報技術者試験ディジタル署名の流れ」の問題

テクノロジ系セキュリティ難易度:normal
ディジタル署名で、受信者が署名を検証して文書の正当性を確認する手順として最も適切なものはどれか。
受信者の秘密鍵で署名を復号し、得た値を文書のハッシュ値と比較する
送信者と共有した共通鍵で署名を復号し、文書本文と直接比較する
受信者の公開鍵で文書を暗号化し、送信者から届いた署名と一致させる
送信者の公開鍵で署名を復号し、得た値と文書から求めたハッシュ値を比較する
正解
送信者の公開鍵で署名を復号し、得た値と文書から求めたハッシュ値を比較する

署名生成は送信者が文書のハッシュ値を自分の秘密鍵で暗号化して作る。検証では受信者が送信者の公開鍵で署名を復号し、文書から再計算したハッシュ値と比較する。一致すれば本人性と改ざんのなさが確認でき正しい。

?選択肢ごとの解説

ア ×受信者の秘密鍵で復号するという記述は誤りで、署名は送信者の秘密鍵で作られるため受信者の鍵では復号できない。
イ ×共通鍵で復号し本文と直接比較するのはMACに近い別技術で、公開鍵を用いるディジタル署名の手順ではない。比較対象もハッシュ値であるべきである。
ウ ×受信者の公開鍵で文書を暗号化するのは機密通信の操作であり、署名検証は送信者の公開鍵で署名を復号して行う。鍵と操作が誤っている。
エ ○署名生成は送信者が文書のハッシュ値を自分の秘密鍵で暗号化して作る。検証では受信者が送信者の公開鍵で署名を復号し、文書から再計算したハッシュ値と比較する。一致すれば本人性と改ざんのなさが確認でき正しい。

くわしく

ディジタル署名は機密性ではなく完全性・認証・否認防止を実現する。署名は文書全体ではなくハッシュ値に対して行うため効率的で、検証時は復号した値と再計算したハッシュ値の一致を確認する。送信者の秘密鍵でしか作れないため否認防止が成立する。

本番での押さえどころ

試験のコツ

署名は『秘密鍵で署名、公開鍵で検証、対象はハッシュ値』の3点で覚える。機密性は別という点も押さえる。

覚え方

署名は『本人だけが押せる実印(秘密鍵)、誰でも照合できる印鑑証明(公開鍵)』とイメージする。

よくある誤り

署名に使う鍵を取り違える誤りが最頻出。『署名=送信者の秘密鍵で生成、送信者の公開鍵で検証』と固定する。比較対象がハッシュ値である点も要注意。

セキュリティの他の問題

この問題を、AIの8-ways解説つきで。

基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。

無料ではじめる →

ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0284

【基本情報技術者試験】ディジタル署名の流れの問題 — 解答・解説|ukamiru 過去問