電子メールのセキュリティ(6) ~ PKIの検証 ~

子メールのセキュリティ編では、公開鍵暗号化通信の仕組みと認証局によるPKIについて学習してきました。前項までの学習で基礎はすべて学習できたと思います。

本項では、それらが理解できていることを前提として、当初から触れてきた「8つの疑問」の検証をすすめていきますので、不安な方はもう一度復習してみてください。

さて、その「8つの疑問」は暗号通信で防止しなければならない4つの要素、

盗聴・改ざん・なりすまし・否認

をさらに具体的に分類したものでした。

PKIによってそれらが本当にすべて解決できるのか、ひとつひとつ検証してみましょう。例によって「あなた」と「花子さん」が通信を行うと仮定します。

まず「あなた」が「送信者」になる場合です。あなた自身と仮定して考えてみてください。

公開鍵暗号通信で「あなた」が送信者の場合のイメージ

1.送信相手は本当に「花子さん」なのか?
2.花子さんの公開鍵が本当に花子さん本人のものなのか?
3.花子さんにメールが届いているか?
4.内容が盗聴されていないか?
5.内容が改ざんされていないか?

「あなた」が送信者となる場合の注意点は、以上の5つでした。

次に「あなた」が受信者になる場合です。

公開鍵暗号通信で「あなた」が受信者の場合のイメージ

6.あなた宛ての暗号文が本当に花子さん本人からのものなのか?
7.内容が改ざんされていないか?
8.花子さんがメールを送ったという事実を否定しないか?

「あなた」が受信者となる場合の注意点は、以上の3つでした。

では、これまで学習した知識で解決してみましょう。

1.送信相手が本当に「花子さん」なのか

この問題はどのように解決できるでしょうか?

送信相手である「花子さん」が顔なじみで何度か通信したことがある間柄であり、かつメールアドレスが正しければ相手は「花子さん」で間違いありません。

しかし「あなた」が「花子さん」と初めてやり取りする場合は、花子さんの素性もメールアドレスも正しいかどうかわかりません。花子さんの「なりすまし」の可能性を否定できません。

なりすましの可能性を否定し、相手が「花子さん」であることを確めるには、「花子さん」にデジタル署名を送ってもらうのが最も有効で確実な方法です。

ただし、デジタル署名はそれだけでは不十分でした。信用ある認証局が発行した「電子証明書」とセットで「あなた」に送ってもらうことで相手が「花子さん」で間違いないと確信することができます。

つまり、電子証明書によって「花子さん」の公開鍵が証明されているので、その公開鍵で「花子さん」のデジタル署名が正しく検証できれば、通信相手は「花子さん」で間違いないことが証明できます。

2.花子さんの公開鍵が本当に花子さん本人のものなのか?

これも、1.で「花子さん」に電子証明書を送ってもらったことで解決しています。電子証明書には「花子さん」の公開鍵が含まれているので、その公開鍵は電子証明書によって「花子さん」のものであると証明されています。

電子証明書以外のかたちで公開鍵を受け取らない

ようにすることでこの問題は解決できます。

問題は、その証明書を発行した認証局が信頼できるかどうかですが、ルート証明書がプレインストールされている認証局、もしくはその認証局が保証している中間認証局であれば、その認証局のデジタル署名を検証することで問題なく信用できます。

ただし、ルート証明書がプレインストールされていない認証局については、前項で学習のとおり、総合的に判断することになります。

3.花子さんにメールが届いているか?

これは、基本的に「花子さん」から何らかのアクション(返信や送信内容の履行など)がない限り、確認することはできません。

Outlookなどの多くのメーラーの機能で「開封確認」の要求を行うことができます。これは、この要求を付けたメールを受信するとメッセージボックスが開かれて、送信者にメールを開封したというメッセージを返送できる機能です。

ただし、開封確認の要求をしても、無視されたり通信経路の途中でメールが第三者に盗まれた場合は「花子さん」にメールが届いているかどうか確認することはできません。

例えばこのメールが請求書だった場合、「花子さん」に受け取っていないと「否認」されたら大問題になってしまいます。「花子さん」の否認を防止するためには、「あなた」が送信した事実と「花子さん」がそれを受信した事実の2つを証明しなければなりません。

しかし、受信者に対して「送信した事実」や「開封した事実」を証明する標準的な方法はまだありません。迷惑メールやフィッシング詐欺が社会問題となり、受信者の保護のほうが優先されがちですが、メールを送信したら取り消せないのと同様に、送信者が保護されるシステム環境も必要となってくるはずです。

したがって、現状として「受け取っていない」とシラを切られたら、それを個人で立証するのは非常に困難になります。慎重を期すような内容を送信するのであれば、返信があってから履行するように本文に記載するなどの工夫が必要になります。

日本郵便では、電子内容証明(e内容証明) のサービスも行われていますが、電子メールの内容証明を行うのではなくインターネットから24時間申し込みできるサービスになっています。

この疑問を解決するには、本文の内容を工夫し、花子さんに何らかのアクションをしてもらうほかありません。

4.内容が盗聴されていないか?

これは「花子さん」が秘密鍵を漏洩することなく大切に保管していれば、誰であろうと盗聴することはできません。公開鍵で暗号化した暗号文は、対になる秘密鍵でしか復号化できないからです。

問題となるのは「花子さん」に第三者が「なりすまし」をした場合です。第三者の公開鍵で暗号化してしまったら、その第三者の秘密鍵でしか復号化できないことになり、第三者に盗聴されてしまいます。

しかし、1.および2.で、送信相手は「花子さん」に間違いなく、公開鍵も「花子さん」のもので間違いないことが証明されているので「なりすまし」の可能性はありません。したがって盗聴される恐れもないことになります。

5.内容が改ざんされていないか?

4.で盗聴は否定されているので、例えば「注文数を百個から千個」といった類の改ざんは防ぐことができます。しかし、暗号化されたデータを無理やり改ざん(改ざんした第三者も本文にどう影響したのかわからないような改ざん)される可能性はあります。

改ざんを検知する方法は「デジタル署名」です。

暗号化したメッセージダイジェストであるデジタル署名と、本文から抽出したメッセージダイジェストの両者を「花子さん」に比較してもらえば、改ざんの有無を認証することができます。

したがって、「あなた」がメールにデジタル署名を付けて送信することでこの疑問は解決することができます。

これで「あなた」が送信者である場合の疑問はすべて解決しました。

まとめると、まず先に「花子さん」にデジタル署名付きメールを送ってもらい、本人確認してから「花子さん」の公開鍵で暗号化した本文を「あなた」のデジタル署名と電子証明書付きで送信することで、完璧に安全な通信を行うことができます。

ただし、このように双方がデジタル署名による認証を行わなければなりません。PKIによって安全な通信を行うことができますが、処理が複雑で時間がかかるというのが公開鍵暗号通信の欠点でもあります。

では、「あなた」が受信者となる場合について検証してきましょう。

6.あなた宛ての暗号文が本当に花子さん本人からのものなのか?

この場合の暗号文は「あなた」の公開鍵で作成された暗号文です。その暗号文が「あなた」の秘密鍵で正しく復号化できれば、間違いなく「あなた」の公開鍵で作成された「あなた」宛ての通信であることは確定します。

しかし、「あなた」の公開鍵は誰でも手に入れることができるので、送信相手が本当に花子さんなのかを確かめる必要があります。「なりすまし」の可能性が否定できません。

ただし、これも「花子さん」にデジタル署名を付けてもらうことで解決できます。1.と同様に、電子証明書とデジタル署名で相手が「花子さん」であることを検証することができます。

このことにより、次の疑問も解決できます。

7.内容が改ざんされていないか?

5.と同様に改ざんは検知することができます。したがってこれも「花子さん」のデジタル署名によって解決しています。

また「盗聴」については、「あなた」自身の秘密鍵でしか復号化できないため、「あなた」が秘密鍵を漏洩しない限り防止できるので問題ありません。

8.花子さんがメールを送ったという事実を否定しないか?

これは「あなた」はメールを受け取っているのに、花子さんがそんなものは送っていないと「否認」する可能性があるということです。つまり、誰かが「花子さん」になりすまして送ったという言い逃れをする場合です。

これは、3.の「受信者否認」の逆で「送信者否認」になります。送信者否認が行われると、例えば注文書を受け取って商品などを発送したのに、そんな注文していないとシラを切られたら大問題になります。

ただし、この場合は「花子さん」にデジタル署名付きのメールを送ってもらうことで解決しています。

なぜならデジタル署名は、第三者が入手し得ない秘密鍵で暗号化しているため、送信者はその秘密鍵の持ち主である「花子さん」以外にはあり得ないからです。

したがって、「あなた」が受信者となる場合をまとめると、送信者である「花子さん」にデジタル署名と電子証明書を送ってもらうことで、完全に安全な通信となるということです。

以上で、すべての疑問は解決しました。

もうおわかりのように、結局のところ、

PKIによってデジタル署名だけで安全な通信が可能になる

ということなのです。

公開鍵暗号通信は、通信相手と公開鍵の作成者の証明ができれば安全な通信が可能となるからです。この証明をするために認証局という第三者証明機関を立てて、信頼の基礎を築いています。

長かったですが、これで「電子メールのセキュリティ」編は終了です。多少難解な部分もありましたが、基礎となるのは「公開鍵の証明」です。ここをおさえておけば、迷路に迷い込むことはないでしょう。

またすでに学習しましたが、

PKIは電子メールのみを目的としていない

ということもよく理解しておきましょう。

PKIは公開鍵暗号通信の基盤(インフラ)であり、公開鍵暗号通信は電子メールだけに用いられているわけではないのです。もっと広い範囲でインターネット上のすべての通信に影響を与える技術なのです。

したがって、

電子メールのみならずインターネット上のすべての暗号通信の基礎を学習した

ことになります。

それでは、次項で、電子メールに特化した暗号通信の規格について学習します。「電子メールのセキュリティ」編が理解できていれば、難なく理解できると思います。

更新履歴

2008年11月24日
ページを公開。
2009年6月5日
ページをXHTML1.0とCSS2.1で、Web標準化。レイアウト変更。
2018年1月30日
ページをSSL化によりHTTPSに対応。
2023年4月10日
内容修正。

参考文献・ウェブサイト

当ページの作成にあたり、以下の文献およびウェブサイトを参考にさせていただきました。

情報セキュリティ入門:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060214/229302/?ST=security
電子証明書とPKI入門
http://www.verisign.co.jp/basic/pki/index.html