Thunderbirdに実装されたOpenPGPでは、簡単な操作でメールの盗み見を防ぎ、メールの改ざんや成りすましメールを排除することができます。
○ OpenPGP技術
上記の通信自体を暗号化する技術はサーバー側の対応で簡単に導入(意識せずに導入)することができます。
しかし、インターネット上でやり取りする通信の全てが安全なサーバーを経由するとは限りません、WI-FIや経由地などで覗き見られたりするリスクを排除できません。
そこで、メールそのものを暗号化するOpenPGP技術が普及してきました。
OpenPGPでは作成したメールをアルゴリズム処理し添付ファイルとして送信します。
よく例として示されるのは、非SSL(非暗号化)通信はハガキで、SSL(暗号化)通信は封書のようなものとして説明されます。
対してOpenPGPで暗号化されたメールでは、ハガキや封筒の中に入れた便箋に書かれた文字が暗号文で書かれているイメージです。
この暗号化された文書は第三者が見ても何が書いてあるかはわかりません。
このことにより、信頼性の小さいネットワークを経由したメールでも安全に送ることができます。
さらに、メールの信憑性を確保する仕組みは、メールの送信者が事前に自分のメールアドレスに対して作成した鍵を使います。受信者は事前にこの鍵を入手しておきます。
メールを受け取った場合、メールに添付された鍵と手持ちの鍵を対比し確認しメール送信者が間違いなく本人であることを確認します。イメージ的には割符が近いでしょうか。
また、メールの改ざんが無いことも確認することができます。
メールを送信するときに送信者が事前に作った鍵を使ってアルゴリズム処理したファイルを添付します。受信者は、送信者から事前に入手した鍵を使ってアルゴリズム処理をして、添付されたファイルと比較します。
このときにメールが改ざんされていると、添付されたアルゴリズム処理されたファイルと受信者がアルゴリズム処理したものが噛み合わなくなります。
例えば 送信するメールの文字数が10でそれを3倍したファイルを添付します。受信したメールが12文字で3倍処理をした場合 10x3 ≠ 12x3 となり改ざんされていることがわかります。
○2つの鍵
OpenPGPで鍵が要であることを書きましたがこの鍵はどのような役割をしているのでしょうか。
この鍵は、メールアドレスに対して作成されます。先で書いたOpenPGP鍵マネージャーで自分のメールアドレスで鍵を作成すると自分専用の鍵(秘密鍵)が作成されます。
この鍵は、OpenPGPの機能を使うための強い権限を持っていますので大切に保管する必要があります。
もう一つ重要な鍵があります。こちらの鍵はみんなに配るための鍵(公開鍵)です。みんなに鍵を配るというと不安になるかもしれませんが、あくまで仕組み上の鍵ですから問題ありません。
この公開鍵は、先の秘密鍵を元に作られるものでこの組み合わせを「キーペア」と呼びます。
・秘密鍵
すべての権限を持つ強力な鍵
決して他人に渡してはいけない
メールに署名したり暗号化されたメールを復号する
・公開鍵
秘密鍵と対になる鍵
メールの相手方に渡す(ネット上で公開しても構わない)
メールを送ってきた人の公開鍵を使って成りすましや改ざんを確認する
メールを送りたい相手の公開鍵を使って暗号化する