- ホーム >
- 基礎知識 >
- インターネットの仕組み >
電子メールのセキュリティ(1) ~ 公開鍵暗号化方式とは ~
- スポンサード リンク:
- 全てのPC買い取ります

- 琉球市場

電子メールは、前項で解説のとおり、基本的には文字データだけの「プレーンテキスト」でインターネット上に送り出されます。
これではメールの転送経路やメールサーバ(SMTPサーバ、POPサーバ)に侵入された場合や、サーバの管理者には、内容を「盗み見」されてしまう危険性があります。
Windowsメール(Outlook Express)では、プレーンテキストである「テキスト形式」の他にも、「リッチテキスト形式」や「HTML形式」でもメールを送信することができます。
この書式についての解説は後述しますが、リッチテキスト形式でもHTML形式でも同様に、メールの内容は「盗み見」されてしまう危険にさらされています。
つまり、郵便ハガキと同様に、
電子メールの機密性はかなり低い
ということを認識しておく必要があります。また、スパムメールの「踏み台」にされる危険性や、改ざん、なりすまし、ウィルス感染の危険性もはらんでおり、プライバシー以外の危険性があることも認識しておかなければなりません。
例えば、商取引などで、電子メールや添付ファイルの数字や金額が改ざんされてしまったら、もう訂正できないかもしれませんし、なりすましによる詐欺で、不正に取得したIDやパスワードが悪用されて情報やお金が盗まれる可能性もあります。
とはいうものの、取引に便利な電子メールを使うなというわけにもいかず、機密性は低くウィルス感染の危険もあるけれど、それでも納得して使ってくださいというわけにはいかない場合があります。
IT化とグローバル化が進み、インターネット抜きにはビジネスが成り立たなくなった現在では、電子メールの存在はかなり大きいものです。重要な機密情報であっても、リアルタイムでやり取りしなければならない場合もあるでしょう。
先ほどような企業間での商取引や、個人情報を含むデータのやり取りなど、その情報がインターネット上に漏えいした場合や、悪用された場合に被害を被るような情報をやり取りする場合は、何らかの対策が必要になります。
したがって、郵便の「書留」のように、完全に機密性や安全性、確実性が保障された電子メールのやり取りを行う方法が求められました。
これまでも前項で解説したように、電子メールのセキュリティに関する対策や技術が開発されてきました。
・POP before SMTP(ポップ ビフォア エスエムティーピー)
・SMTP-AUTH(エスエムティーピー オウス)
・APOP(エー ポップ)
・POP over SSL(ポップ オーバー エスエスエル)
・SMTP over SSL(エスエムティーピー オーバー エスエスエル)
などの方式です。しかし、どれも完全ではありません。
POP/SMTP over SSLでは、ユーザーのメーラーと契約しているプロバイダ等のサーバまでのルートが暗号化されるのみです。自分のサーバから送信相手までのルートは暗号化されません。
もっとも、このサーバからサーバの間の通信は、サーバ同士の専用回線(バックボーン という)で行われており、基本的には第三者が侵入することはできません。
しかし、 送信相手(または送信元)が、POP/SMTP over SSLを使用していなかったら、相手のサーバから相手のメーラーまでのルートはプレーンテキストで通信されてしまいます。やはり、
送信相手へ届くまでのすべてのルートで暗号化しなければ、本当に安全が保たれているといえない
のです。以下は、AさんからBさんへのメール送信を例にした図です。

では、どうすれば安全に相手と通信できるのかというと、 やはり、
メール本文(ヘッダも含む)を暗号化して、そのまま相手に送信するしか方法はない
のです。暗号文を送れば、途中で中身を見られても、暗号文を見られるだけで内容を知られてしまう恐れはなくなります。また、暗号化することによって内容の改ざんも防ぐことができます。
ただ、その有効な暗号化の方法について、研究者たちは長年悩まされ続けてきました。当事者同士以外には絶対に解読されることなく、なりすましできない認証機能を備えた暗号など「不可能を可能にする」ような話だからです。
そもそも「暗号」とは、
当事者間でのみ理解できるように取り決めた特殊な記号や文字、またはその手順や方式
のことを言います。つまり、暗号とはメッセージを当事者以外に解読されないように、一見すると意味不明な文字列や数字に置き換えること、また、その置き換える手順や方法、すなわち解読方法である「鍵」を決めておくことをいいます。
メールに限らずデータを暗号化する時、または暗号を復号化する時(暗号をもとのデータに戻すことを「復号化」という)には「鍵」が必要です。
例えば、紀元前に使われたという有名な「シーザー暗号」を例にすると、「YAMANJO」という文字は、「BDPDQMR」になります。

この場合、暗号の「鍵」はアルファベット「3文字」ということになります。暗号化する時は「3文字」後ろにずらし、復号化する時は「3文字」前にずらします。
この例は、とてもシンプルで、実際の暗号通信でこれほど単純な鍵はありえませんが、この暗号の「鍵」を知らない人が「BDPDQMR」を見ただけでは、「YAMANJO」と解読するのは難しいかもしれません。
このように、暗号通信とはインターネットのように安全性が確立されていない通信経路でも、安全に情報交換するための技術なのです。
実際の暗号通信では、次の4つを防止することが必要になります。
盗聴・改ざん・なりすまし・否認
です。「盗聴」は第三者に内容を知られてしまうこと、「改ざん」は内容を変更されてしまうこと、「なりすまし」は自分や相手、または企業などになりすまして通信されてしまうこと、「否認」は情報の通信を否認、つまり、メール等を送っていない、受け取っていないとシラを切られることです。
現在の情報通信では、この4つすべてを防止しなければ安全とはいえません。つまり暗号通信は、この4つを防止する技術なのです。
暗号の歴史は古く、特に先の世界大戦から近年、暗号通信は国家の威信をかけた技術であり、各国は、他国の暗号の解読や自国の暗号の強化に力を注ぎました。暗号が敵国に解読されたら、すなわち国家の存亡にもかかわるからです。
ドイツの「エニグマ」や日本の「パープル」などが有名です。近年では、アメリカの「DES暗号」が標準暗号として長年使用されていましたが、簡単な解読法が発見されてしまいました。その後は、2000年に、「AES暗号」が標準暗号に選ばれています。
大戦中から近年の暗号戦争の裏側について、私の好きな「ゴルゴ13」で「最終暗号」という大変面白い1話があるので、興味のある方は読んでみてください。
さて、シーザー暗号やエニグマ、DES暗号など、これまでの暗号通信は、
共通鍵暗号化方式
と呼ばれる方式が採用されてきました。共通鍵暗号化方式は、「秘密鍵暗号化方式」とも呼ばれますが、その名の通り、
暗号化と復号化に共通の鍵を使う
方式です。現在、標準暗号として使われているAES暗号も共通鍵暗号化方式の暗号です。(共通鍵暗号方式の中の標準という意味)
共通鍵暗号化方式は、送信者と送信相手が、暗号化と復号化に同じ鍵を使う方式です。例えば、シーザー暗号なら暗号化にも復号化にも「3文字」という鍵を使います。
したがって、共通である「鍵」は、絶対に漏れないように大切に管理しなければなりません。鍵が漏れたり、または解読方法が発見されたらその暗号は終わりです。
ただ、この暗号化と復号化に同じ鍵を使うというのは至極当然のことです。暗号とはそもそも、そういうものだという観念のもとに作られてきました。しかし、共通鍵暗号化方式には、ある矛盾が存在しているのです。
それは、事前になんらかの方法で送信相手に「鍵」を渡しておかなければならないということです。その時点で「鍵」が漏れてしまえば、その後の暗号通信はすべて解読されてしまいます。
つまり、どうやって相手に「鍵」を渡すのかという、本来の暗号通信と同じ問題に直面するのです。直接会って渡すのなら、そもそも暗号化する必要はありません。
安全に鍵を渡す方法があるのなら、その方法で情報自体を渡せば良い
からです。また、多数の相手と通信を行う場合は、相手の数だけ鍵を用意しないといけません。暗号の強度を維持するために、定期的に鍵を変更する場合もあります。
もちろん、安全に鍵を渡してしまえばその後は安全な通信が可能となるのですが、共通鍵暗号化方式は、現在主流ではなくなりました。
1976年に、ある画期的な方法が考え出されたからです。鍵は共通のものであり、鍵は絶対に秘密にしなくてはならないという概念を打ち破るものでした。千年にも及ぶ呪縛から解放されたとでも言うべき、新しい暗号法が開発されたのです。それが、
公開鍵暗号化方式
と呼ばれる方式です。公開鍵暗号化方式は、
暗号化と復号化に異なる鍵を使う
という方法です。その名の通り、これまでと全く逆の発想で、鍵を公開 してしまおうという大胆な発想で、暗号化と復号化には異なる鍵、つまり「2つの鍵」 が使われる暗号方式なのです。
この暗号は、Rivest氏、Shamir氏、Adleman氏という3名の研究者の頭文字をとって、「RSA暗号」と名付けられました。公開鍵暗号化方式の最初の暗号です。
公開鍵暗号化方式の仕組みを簡単に説明すると、通信には2つの鍵が使われますが、
鍵を作成するのは受信者
の方になります。「受信者」つまり、通信の受け手側が鍵を作成し、送信者に渡すのです。この時に作成する2つの鍵は、
秘密鍵と公開鍵
と呼ばれます。「秘密鍵」は自分(受信者)が大切に保管し、「公開鍵」は送信者に渡しますが、その名の通り公開するので、実際は悪意のある者でも誰でも手に入れることができます。
ここで大切なのは、共通鍵暗号化方式とは異なり、
自分が持つひとつの秘密鍵だけを漏れないように大切に保管すればよい
ということです。公開鍵の方は誰の手に渡ってもかまいません。なぜなら、
片方の鍵で暗号化したものは、もう一方の鍵でしか復号化できない
という公開鍵暗号化方式の原則があるからです。公開鍵で暗号化したものは秘密鍵でしか復号化できず、逆に、秘密鍵で暗号化したものは公開鍵でしか復号化できません。
例えば、「受信者」を太郎くん、「送信者」を花子さんとすると、太郎くんが秘密鍵と公開鍵の2つの鍵を作成し、秘密鍵は太郎くんが保管、公開鍵はみんなに公開します。花子さんは、公開されている太郎くんの公開鍵で文書を暗号化して太郎くんに送信します。
そして太郎くんは、自分が大切に保管している秘密鍵で文書を復号化するのです。この方法なら、共通鍵のように、鍵を渡すことに苦心する心配はありません。公開鍵は誰が手にしても問題ないからです。
なぜなら、公開鍵で作成した暗号文を復号化できるのは自分が持つ秘密鍵だけ、という仕組みです。下図を参照してください。

公開されている公開鍵から秘密鍵を推測して偽造することは、ほぼ不可能です。詳しくは割愛しますが、素数と素数の掛け算の解はすぐ出せますが、その逆の素因数分解は難しく、有効な方法が発見されていないことを利用しているのです。
では、逆に、太郎くんが秘密鍵で文書を暗号化して花子さんに送信した場合は、公開鍵であれば復号化できるので、誰にでも復号化されてしまいます。しかし、このことは相手を特定する「認証」に利用されています。詳しくは次項で解説します。
このように公開鍵暗号化方式は、安全で強度な暗号ですが、処理が複雑なため速度が遅いというデメリットがあります。その点、共通鍵暗号化方式は、どちらも同じ鍵を使うため処理が高速です。
したがって、容量の多いデータ処理や高速で処理を行いたい場合は、公開鍵暗号化方式と共通鍵暗号化方式を組み合わせた、「ハイブリッド暗号」が使われることもあります。
ハイブリッド暗号は、共通鍵そのものを公開鍵暗号方式で相手に送る
という方法です。つまり、鍵を送る時だけ安全に公開鍵暗号化方式で送り、その後の通信は、高速に処理できる共通鍵暗号化方式で行うというものです。
このハイブリッド暗号を用いた暗号化ソフトとして一般的なものが、「PGP」です。PGP(ピージーピー)は、電子メールだけではなくファイルも暗号化することができます。PGPには、フリーウェア(無料でダウンロードできるソフトウェア)でも多数存在します。
また、ウェブサイトで使われるSSLという暗号通信(HTTPの暗号通信)も、ハイブリッド暗号を使用します。SSLについては後述します。
さて、この公開鍵暗号化方式によって、メールの本文を解読される「盗聴」は完全に防ぐことができます。しかし、暗号通信は盗聴の他にも、改ざん、なりすまし、否認を防止しなければなりません。それらをどうやって防止するのでしょうか?
公開鍵暗号化方式では、認証によってそれらを防止します。公開鍵暗号化方式における、盗聴・改ざん・なりすまし・否認の認証について次項からみていきましょう。
- 更新日:2009年5月21日(更新内容は本ページ下部に記述)
- 前ページ、次ページへのリンクバーは本ページ下部にあります。
関連情報&オススメ
フレッツ光プレミアム、Bフレッツ、ひかり電話、光ブロードバンドの申し込みは、受付窓口としてNTT正規契約している「代理店」がオススメです。
NTTやプロバイダによるキャンペーンや割引はどこの窓口(代理店)で申し込んでも同じですが、実は「代理店独自のキャンペーン」があり、申し込む代理店によってかなりお得度が異なります。
株式会社インテレコムは、NTTや大手家電量販店などで契約するよりも、キャッシュバックや特典、プレゼントもありかなりお得です。
初期工事費、月額利用料最大2ヶ月無料、さらに現金キャッシュバック最大43,000円キャンペーンを実施中で、ユーザー向けプレゼントキャンペーンは、業界最高クラスです。
更新履歴
- 2008年11月24日
- ページを公開。
- 2009年5月21日
- ページをXHTML1.0とCSS2.1で、Web標準化。レイアウト変更。
参考文献・ウェブサイト
当ページの作成にあたり、以下の文献およびウェブサイトを参考にさせていただきました。
- 情報セキュリティ入門:ITpro
- http://itpro.nikkeibp.co.jp/article/COLUMN/20060214/229302/?ST=security
- 電子証明書とPKI入門
- http://www.verisign.co.jp/basic/pki/index.html
- 次ページ:「電子メールのセキュリティ(2) ~ 公開鍵暗号化方式の疑問 ~」へ進む
- 前ページ:「電子メールの危険性 ~ POP before SMTP・SMTP-AUTHとは ~」へ戻る
- 基礎知識:「メニューページ」へ戻る
- ホームへ戻る