インターネットが普及して、みんな当たり前のようにメール(Email)を使うようになった。なかには携帯メールから使い始めEmailの仕組みなどを知らずに使ってる人も多い。(Emailの場合返信するとき元のメッセージを引用するのが常識だけど、携帯メールからの人にはうざいらしい) またウェブのことをインターネットと呼んでる人がたくさんいるので「じゃあメールはネットじゃないのか?」といつもツッコミたくなったりする。
さて、今回必要に迫られメールの暗号化をすることになった。昔S/MIMEを試したことがあるが、あっちは認証局にに署名してもらわないといけないようで、無料サービスもいくつかあるが基本的にSSLと同じように有料。個人で使うには難があった。今回挑戦したのはGnuPG。歴史をかいつまんで解説すると、もともとPGP(Pretty Good Privacy)という暗号ソフトウェアがあって、それをEmailにも使えてたけど開発は営利企業でいろいろライセンス問題もあったりしたらしく、openPGPという形でオープンライセンスで利用でき、それに準拠してるのがGnuPG(GPG)だ。
私はMac使いなのでMacでの使い方を調べたがどうやらApple Mail.appでは対応してないらしい。だが、GPGのソフトウェアをインストールすることでMail.appでGPGが使えるようになる。ということで、GPGToolsをインストールした。GPGToolsはいくつかのGPG関連ツールの集合体で、Mail.appをGPG対応させるものだったり、鍵を管理するアプリだったりする。
インストールや初期設定はサイトを見てもらえばすぐにわかる。鍵の作成はMail.appに登録しているアカウントから選択して作成出来る。
作成したら、新規メール作成画面でOpenPGPという表示が出るようになる。Fromに作成したメールアカウントを選択した場合のみだ。
これでメールに署名して送信出来るようにはなった。だが、まだ暗号化はされていない。暗号化メールを送るには相手の公開鍵が必要だ。暗号メールを送る前に相手から公開鍵をもらってGPG Keychain Accessに登録しておこう。また同時に自分の公開鍵も相手に渡しておこう。公開鍵はGPG Keychain Accessからアカウントを選択してExportできる。署名付きメールに鍵を添付して相手に送るといいだろう。
うまくいけば相手から自分へも暗号メールを送ってくれる。その場合 Mail.appでは
という具合にメールのヘッダー表示にマークがつく。安心暗号生活に入れるゾ!
最後に言うのもなんだけど、世の中に出回ってるメールは基本的に暗号化されておらず、中間で見ようと思えば見ることが出来る。たとえば、Gmailでいえば、自分のパソコンからメール送信すると「パソコンからGmail送信サーバー」までは暗号化されてるけど、「Gmail送信サーバーから相手の受信サーバー」までは見放題。またもし相手のメールサーバーが暗号化通信に対応してなかったら「相手のメールサーバーから相手のパソコン」までも見放題となる。このとき、相手が公衆無線LANなどを利用してた場合、他人にメール内容を見られる可能性がある。
当然だけど、Gmail使ってて暗号化しなかったらGoogleにも見られ放題です。
メール暗号化、もっと普及するといいんだけどね・・・