応用情報技術者 2011年 秋期 午前2 問38
問題文
ディジタル署名を生成するときに、発信者がメッセージのハッシュ値をディジタル署名に変換するのに使う鍵はどれか。
選択肢
ア:受信者の公開鍵
イ:受信者の秘密鍵
ウ:発信者の公開鍵
エ:発信者の秘密鍵(正解)
ディジタル署名の鍵選択【午前2 解説】
要点まとめ
- 結論:ディジタル署名の生成には発信者の秘密鍵を使います。
- 根拠:秘密鍵で署名し、公開鍵で検証することで真正性と改ざん検知が可能です。
- 差がつくポイント:公開鍵と秘密鍵の役割を正確に理解し、署名と暗号化の違いを区別しましょう。
正解の理由
ディジタル署名は、発信者がメッセージのハッシュ値を自分の秘密鍵で暗号化することで生成されます。これにより、受信者は発信者の公開鍵で署名を復号し、メッセージの真正性と改ざんの有無を検証できます。秘密鍵は発信者だけが持つため、署名の信頼性が担保されます。
よくある誤解
公開鍵で署名を生成すると考える誤解がありますが、公開鍵は検証に使うものであり、署名生成には秘密鍵が必須です。
解法ステップ
- ディジタル署名の目的を理解する(真正性・改ざん検知)。
- 署名生成は秘密鍵で行い、検証は公開鍵で行うことを確認。
- 発信者が署名を作るため、発信者の鍵ペアを使うことを認識。
- 選択肢の鍵の所有者と役割を整理し、秘密鍵を選択。
選択肢別の誤答解説
- ア: 受信者の公開鍵は署名検証に使う鍵であり、署名生成には使いません。
- イ: 受信者の秘密鍵は受信者が持つ鍵で、署名生成とは無関係です。
- ウ: 発信者の公開鍵は署名検証に使う鍵であり、署名生成には使いません。
- エ: 発信者の秘密鍵は署名生成に使う正しい鍵です。
補足コラム
ディジタル署名は公開鍵暗号方式の応用で、メッセージのハッシュ値を秘密鍵で暗号化し、受信者は公開鍵で復号して検証します。これにより、送信者のなりすまし防止とメッセージの改ざん検知が可能です。
FAQ
Q: なぜ公開鍵で署名を生成しないのですか?
A: 公開鍵は誰でも知っているため、署名生成に使うと本人確認ができません。秘密鍵で署名することで本人性が保証されます。
A: 公開鍵は誰でも知っているため、署名生成に使うと本人確認ができません。秘密鍵で署名することで本人性が保証されます。
Q: ハッシュ値を使う理由は何ですか?
A: メッセージ全体を暗号化するのは計算コストが高いため、ハッシュ値を使い効率的に署名を生成します。
A: メッセージ全体を暗号化するのは計算コストが高いため、ハッシュ値を使い効率的に署名を生成します。
関連キーワード: ディジタル署名、秘密鍵、公開鍵、ハッシュ関数、公開鍵暗号、署名検証

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

