ThunderbirdとEnigmailでPGP

はじめに

個人的には、ずっとMacintoshユーザだったのですが、会社の都合などもあるので、近頃はWindowsを使うこともあります。

現在、Windows機ではメインのMUAとしてThunderbirdを使っているのですが、このMUAは、EnigmailというExtensionを入れることで、GnuPGを使った暗号・署名メールを簡単に送ることができるようになります。今回、この環境を構築しましたので、ここで自分向けのメモを兼ねて、インストール手順を残しておきます。すべて、windows2000上で、win32版を使用する前提で記していますが、他のOSも含め参考になれば幸いです。最低限のことは書いてあると思いますが、それぞれのproductに関しては、もっと詳しいページがきっとあるので、必要に応じてgoogleで探すなどして参照してください。

(1) GnuPGのインストール

まず、完全フリーのOpenPGP互換ソフトウェアである、GnuPGをインストールします。

1) ソフトウェアの入手
GnuPGのページから、GnuPGを頂いてきます。
2) バイナリの展開
適当なソフトウェアを用いて、c:\gnupg\に展開します。勿論、他のディレクトリでもいいのでしょうが、いろいろ便利なので、特に理由がなければここにしましょう。変更した場合には、後の説明を適宜読み替えてください
3) PATHの設定
環境変数pathに、c:\gnupgを追加します。
4) レジストリの編集
c:\gnupg\gnupg-w32.regをダブルクリックして開き、内容をレジストリに追加します。なお、別ディレクトリにインストールした場合には、内容を変更する必要があります。
5) メッセージの日本語化(オプション)
まず、S-JIS形式のja.moを探してきます。私は、GnuPG 1.2.3用のものを、venonaさんのページからいただいてきました。
頂いてきたja.moをgnupg.moとリネームして、c:\gnupg\locale\gnupg.moに置きます。なお、前述のvenonaさんのは、zipを展開するとgnupg.moが得られます。
6) 鍵ペアの生成
コマンドラインから、gpg --gen-key とします。鍵長とかは、ご自由にどうぞ。デフォルトでよいと思いますが。

(2) Thunderbirdのインストール

1) ソフトウェアの入手
mozilla.orgのThunderbirdのページ(日本語版)から、バイナリを頂いてきます。
2) バイナリの展開
zipファイルを、c:\Program Files\mozilla.org\Thunderbirdなどの、好きなディレクトリに展開します。ショートカットは、必要に応じて作成してください。
 【注1】簡略化するため日本語ランゲージパック(JLP)を使わないでください。ちゃんと設定できる上級者はこんなところを読んでいないはずなので。
 【注2】webページにもありますが、以前にThunderbirdを使用していた場合には、上書きするのではなくフォルダごと消してから、再度展開してください。その他、ドキュメントはできる限りちゃんと読みましょう。
(3) Thunderbirdの初期設定
Thunderbird.exeを、初めて起動する時には、アカウントの設定を求められますから、ご自分の環境に合わせて設定をしてください。なお、Enigmailは、メールアドレスを頼りに、鍵を探し出すことをお忘れなく。
Tools→Optionsで、必要な設定を行います。最低限の設定として、Tools→Options→Fontsのところの、default character encodingはiso-2022-jpが吉と思われます。

3) Enigmailのインストール

1) ソフトウェアの入手
Enigmail for Thunderbirdのページから、適切なxpiファイルを頂いてきます。環境非依存のものと、環境依存のものとで、あわせて2つ必要です。
2) Enigmailのインストール
Thunderbirdを起動して、Tools→Options→Extensionsペインで、Install New Extensionを押して、インストールします。もちろん、2つともインストールが必要です。インストールが完了したら、指示に従ってThunderbirdを再起動しましょう。
3) Enigmailの設定
Tools→Options→Extensionsペインで、Enigmailを選択してSettingを押し設定画面を呼び出します。一番上のエディットボックスで、gpg.exeのパスを確認してください。
また、日本人とのやり取りが多いようなら、key serverは、pgp.nic.ad.jpの方が良いと思います。

(4) Enigmailの使い方

Thunderbirdに新たに出現したEnigmailメニューとか、ツールバーのOpenPGPボタンとかを見ていただければ、わかると思います。できることは、署名、暗号化、署名+暗号化で、それぞれPGP/MIME形式を使うかどうか指定できます。

なお、PGP相互検証MLのサンプルメールを用いてテストしたところによると、1) 一部のMUAから、2) PGP/MIME形式で、3) 行末に空白(スペース)が入ったメッセージを受け取った場合に、署名の検証が失敗するようです。これは、ワードラップアルゴリズムの差だと思われますが、ユーザの書いたスペースを削除してしまうのですから、Thunderbirdが余計な処理をしていると言えるのでしょう。ただし、英語圏ではごく自然の処理であるのかもしれません。通常、行末にスペースを入れる積極的理由はないと思われますので、運用で回避するのがよろしいのではないでしょうか。詳しくは、PGP相互検証MLなどを参考になさってください。

私はだぁれ?

さんだ < naoki-s@ba2.so-net.ne.jp>