AさんがBさんに署名付きメールを送信したい。S/MIME (Secure/Multipurpose Internet Mail Extensions) を利用して署名付きメールを送信する場合の条件のうち, 適切なものはどれか。
平成25年度 秋期 ITパスポート試験 問60
この問題の解説と、これまでの解答の記録です。
問 60
不正解ア
「A さん、B さんともに、あらかじめ自身の公開鍵証明書の発行を受けておく必要がある」は誤り。両者に証明書が必要になるのは、双方向に暗号化メールをやり取りする場合や、B も署名付きメールを返信する場合である。本問が問うているのは A から B へ署名付きメールを送る条件だけなので、必要なのは署名を作る A の証明書 (と秘密鍵) のみ。B は A の添付証明書と認証局の証明書を使って検証するだけであり、B 自身が証明書の発行を受けていなくても署名の検証はできる。必要以上に条件を厳しくしている点で不適切。
不正解イ
「A さん、B さんともに、同一の ISP に属している必要がある」は誤り。S/MIME はメールソフト (メールクライアント) 側でメッセージ本体に署名や暗号化を施す方式であり、途中を運ぶ SMTP のメールサーバや ISP はその中身をそのまま転送するだけである。信頼の基盤になるのは認証局が発行した公開鍵証明書であって、通信事業者や ISP の一致ではない。異なる ISP、異なる組織、異なる国のあいだでも S/MIME の署名付きメールは問題なくやり取りできる。
不正解ウ
「A さんが属している ISP が S/MIME に対応している必要がある」は誤り。S/MIME の署名は送信側のメールソフトが作り、受信側のメールソフトが検証する、いわゆるエンドツーエンドの処理である。署名や証明書は MIME 形式の添付データとしてメール本文に埋め込まれるため、ISP のメールサーバから見れば通常のメールと同じデータにすぎず、サーバ側に特別な対応機能は要らない。必要なのは送受信双方のメールソフトが S/MIME に対応していることであって、ISP の対応ではない。
- エ
正解 正解はエ。S/MIME は電子メールに暗号化とデジタル署名の機能を追加するインターネット標準で、公開鍵暗号方式と公開鍵証明書 (デジタル証明書) を土台にしている。署名付きメールの流れはこうなる。まず送信者 A は、あらかじめ認証局 (CA) から自分の公開鍵証明書の発行を受けておく。メール送信時には、本文からハッシュ値 (メッセージダイジェスト) を計算し、それを A の秘密鍵で暗号化したものをデジタル署名としてメールに付け、さらに A の公開鍵証明書も一緒に添付して送る。受信者 B のメールソフトは、添付されてきた A の証明書を認証局の信頼をたどって検証し、そこに入っている A の公開鍵で署名を復号して本文のハッシュ値と突き合わせる。一致すれば「確かに A が送った」「途中で改ざんされていない」ことが確認でき、送信者の認証と完全性の保証、そして送信否認の防止が成り立つ。この一連の検証で使う鍵はすべて A 側のものであり、B は自分の鍵ペアや証明書を一切使わない。つまり署名付きメールを送るために証明書が要るのは署名する側の A だけで、受け取る B には不要である。よってエが適切。なお B の公開鍵証明書が必要になるのは、A が B の公開鍵でメールを暗号化して送る場合 (暗号化メール) であり、本問の署名付きメールとは条件が異なる点に注意したい。
- デジタル署名は「送信者の秘密鍵で署名を作り、送信者の公開鍵で検証する」仕組みである。使う鍵はどちらも送信者側のものなので、署名付きメールを送るために公開鍵証明書が必要なのは送信者だけで、受信者には不要。これに対し暗号化は「受信者の公開鍵で暗号化し、受信者の秘密鍵で復号する」ため、暗号化メールを送る場合は受信者側の証明書が必要になる。どちら側の鍵を使う処理かで必要な証明書が変わる点が最大の考点。
- S/MIME は公開鍵証明書 (認証局が発行するデジタル証明書) を用いて電子メールに署名と暗号化を提供するインターネット標準であり、送信者と受信者のメールソフトが対応していれば成立する。ISP やメールサーバの種類・一致は条件に関係しない、というエンドツーエンドの性質も併せて押さえておきたい。