基本情報技術者試験「ディジタル署名の流れ」の問題
ディジタル署名で、受信者が署名を検証して文書の正当性を確認する手順として最も適切なものはどれか。
ア受信者の秘密鍵で署名を復号し、得た値を文書のハッシュ値と比較する
イ送信者と共有した共通鍵で署名を復号し、文書本文と直接比較する
ウ受信者の公開鍵で文書を暗号化し、送信者から届いた署名と一致させる
エ送信者の公開鍵で署名を復号し、得た値と文書から求めたハッシュ値を比較する
正解
エ.送信者の公開鍵で署名を復号し、得た値と文書から求めたハッシュ値を比較する
署名生成は送信者が文書のハッシュ値を自分の秘密鍵で暗号化して作る。検証では受信者が送信者の公開鍵で署名を復号し、文書から再計算したハッシュ値と比較する。一致すれば本人性と改ざんのなさが確認でき正しい。
?選択肢ごとの解説
ア ×受信者の秘密鍵で復号するという記述は誤りで、署名は送信者の秘密鍵で作られるため受信者の鍵では復号できない。
イ ×共通鍵で復号し本文と直接比較するのはMACに近い別技術で、公開鍵を用いるディジタル署名の手順ではない。比較対象もハッシュ値であるべきである。
ウ ×受信者の公開鍵で文書を暗号化するのは機密通信の操作であり、署名検証は送信者の公開鍵で署名を復号して行う。鍵と操作が誤っている。
エ ○署名生成は送信者が文書のハッシュ値を自分の秘密鍵で暗号化して作る。検証では受信者が送信者の公開鍵で署名を復号し、文書から再計算したハッシュ値と比較する。一致すれば本人性と改ざんのなさが確認でき正しい。
✎くわしく
ディジタル署名は機密性ではなく完全性・認証・否認防止を実現する。署名は文書全体ではなくハッシュ値に対して行うため効率的で、検証時は復号した値と再計算したハッシュ値の一致を確認する。送信者の秘密鍵でしか作れないため否認防止が成立する。
✓本番での押さえどころ
試験のコツ
署名は『秘密鍵で署名、公開鍵で検証、対象はハッシュ値』の3点で覚える。機密性は別という点も押さえる。
覚え方
署名は『本人だけが押せる実印(秘密鍵)、誰でも照合できる印鑑証明(公開鍵)』とイメージする。
よくある誤り
署名に使う鍵を取り違える誤りが最頻出。『署名=送信者の秘密鍵で生成、送信者の公開鍵で検証』と固定する。比較対象がハッシュ値である点も要注意。
セキュリティの他の問題
公開鍵暗号方式を用いて、送信者が受信者だけに読める暗号文を送る場合、暗号化に使う鍵はどれか。ハイブリッド暗号方式において、通信本文(平文データ)そのものの暗号化と、その暗号化に用いた鍵の受け渡しに使う方式の組合せとし…メッセージダイジェストの生成に用いるハッシュ関数が備えるべき性質として最も適切なものはどれか。PKI(公開鍵基盤)において、利用者の公開鍵が本人のものであることを保証する電子証明書を発行する機関はどれか。利用者の入力をWebページに無検証で出力する不備を悪用し、第三者が用意した不正なコードを被害者のブラウザ上で動作させる攻撃は…共通鍵暗号アルゴリズムであるAESの説明として最も適切なものはどれか。
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0284