デジタル署名は「暗号化」ではなく「本人確認と改ざん検知」の仕組み
今回は、情報セキュリティでよく出る デジタル署名 の問題です。
初学者が混乱しやすいのは、次の2つです。
暗号化
→ メッセージの内容を秘密にする
デジタル署名
→ 誰が送ったか、改ざんされていないかを確認する
今回の問題は、デジタル署名を何のために使うのかを問う問題です。
問題
デジタル署名における署名鍵の使い方と、デジタル署名を行う目的のうち、適切なものはどれか。
選択肢
ア
受信者が署名鍵を使って、暗号文を元のメッセージに戻すことができるようにする。
イ
送信者が固定文字列を付加したメッセージを署名鍵を使って暗号化することによって、受信者がメッセージの改ざん部位を特定できるようにする。
ウ
送信者が署名鍵を使って署名を作成し、その署名をメッセージに付加することによって、受信者が送信者を確認できるようにする。
エ
送信者が署名鍵を使ってメッセージを暗号化することによって、メッセージの内容を関係者以外に分からないようにする。
正解
正解は ウ です。
送信者が署名鍵を使って署名を作成し、
その署名をメッセージに付加することによって、
受信者が送信者を確認できるようにする。

まず「署名鍵」とは何か
デジタル署名では、送信者が 署名鍵 を使って署名を作ります。
ここでいう署名鍵は、一般的には 送信者の秘密鍵 と考えると分かりやすいです。
送信者の秘密鍵
→ 署名を作るために使う鍵
送信者の公開鍵
→ 署名を検証するために使う鍵
つまり、流れはこうです。
送信者
↓
署名鍵でデジタル署名を作る
↓
メッセージに署名を付けて送る
↓
受信者が公開鍵で検証する
デジタル署名の目的
デジタル署名の主な目的は、次の3つです。
1. 送信者の確認
2. 改ざん検知
3. 否認防止
特にこの問題では、送信者の確認 が問われています。
送信者の確認とは
受信者は、受け取ったメッセージについて次のことを確認したいわけです。
このメッセージは、本当に送信者本人から来たものなのか?
そこで、送信者は自分だけが持っている署名鍵を使って、デジタル署名を作ります。
受信者は、その署名を検証することで、
この署名は、送信者の鍵で作られたものだ
と確認できます。
そのため、選択肢ウの、
受信者が送信者を確認できるようにする
という内容が正解になります。
デジタル署名は「暗号化」とは違う
ここが大事です。
デジタル署名は、メッセージの内容を秘密にするためのものではありません。
デジタル署名
→ 誰が送ったかを確認する
→ 改ざんされていないかを確認する
暗号化
→ 内容を第三者に読まれないようにする
つまり、デジタル署名を付けても、メッセージの内容そのものを隠すことが目的ではありません。
内容を秘密にしたい場合は、暗号化 を使います。
選択肢アが誤りの理由
アは、次のような内容です。
受信者が署名鍵を使って、
暗号文を元のメッセージに戻す
これは誤りです。
暗号文を元に戻す処理は、復号 です。
デジタル署名の目的は、暗号文を元のメッセージに戻すことではありません。
また、署名鍵は受信者が使うものではなく、基本的には 送信者が署名を作るために使う鍵 です。
選択肢イが誤りの理由
イは、改ざん部位を特定できるようにすると書かれています。
しかし、デジタル署名で分かるのは、
改ざんされている可能性がある
ということです。
デジタル署名で、
どこが改ざんされたのか
までは基本的に分かりません。
そのため、
改ざん部位を特定できる
という部分が誤りです。
選択肢ウが正しい理由
ウは、デジタル署名の基本的な説明になっています。
送信者が署名鍵を使って署名を作る
↓
署名をメッセージに付ける
↓
受信者が署名を検証する
↓
送信者を確認できる
これは、デジタル署名の目的に合っています。
したがって、正解は ウ です。
選択肢エが誤りの理由
エは、メッセージの内容を関係者以外に分からないようにすると書かれています。
これは、暗号化 の目的です。
内容を秘密にする
→ 暗号化
送信者を確認する
→ デジタル署名
デジタル署名は、内容を隠すための仕組みではありません。
そのため、エは誤りです。
試験での覚え方
試験では、次のように整理すると判断しやすいです。
デジタル署名
→ 送信者の確認
→ 改ざん検知
→ 否認防止
暗号化
→ 内容を秘密にする
復号
→ 暗号文を元に戻す
今回の問題では、問題文に デジタル署名 とあります。
そのため、内容を秘密にする話ではなく、
本人確認
改ざん検知
否認防止
の方向で考えます。
まとめ
問題11-22では、デジタル署名の目的が問われています。
重要なのは、次の違いです。
デジタル署名
→ 送信者を確認する
→ 改ざんされていないか確認する
→ 否認防止に役立つ
暗号化
→ 内容を秘密にする
したがって、正解は ウ です。
送信者が署名鍵を使って署名を作成し、
その署名をメッセージに付加することによって、
受信者が送信者を確認できるようにする。











ディスカッション
コメント一覧
まだ、コメントがありません