2003年12月01日

SqWebMailでGnuPGを使う

SqWebMailには暗号メールが使えるようになるGnuPG連携機能があります.
SqWebMailのGnuPG連携機能を使うための鍵の登録方法をまとめます.

SqWebMailでもいつも自分がWindowsで使っている鍵と同じ公開鍵・秘密鍵を使えるようにする方法を解説します.
(SqWebMailもBecky!と同様にGnuPGを利用します,
 ここではUNIXで既にGnuPGがインストールされ,SqWebMailが正しくセットアップされているとします)
SqWebMailは鍵保存ディレクトリとして $HOME/.gnupg を使わず,Maildir/gpg を用います.
これはホームディレクトリを持たないバーチャルドメイン機構に対応するためです.

シェルが使える場合は,Windowsのように gpg コマンドを用いて簡単にできます.
gpg コマンドの --homedir オプションによって,SqWebMail用の鍵保存ディレクトリを指定します.
1.公開鍵を取り込むには,
  「gpg --homedir="~/Maildir/gpg" --import < keyfile 」を実行します
  keyfile とは,鍵情報の入ったファイル名です
2.秘密鍵を取り込むには,
  「gpg --homedir="~/Maildir/gpg" --import --allow-secret-key-import < keyfile 」を実行します
3.公開鍵を取り出すには
  「gpg --homedir="~/Maildir/gpg" --export --armor your_user_id」を実行します
4.秘密鍵を取り出すには
  「gpg --homedir="~/Maildir/gpg" --export-secret-keys --armor your_user_id」を実行します

シェルが使えない場合は,メールで鍵を送り,取り込むことができます.
鍵情報の入ったファイルを,MIME形式で,
コンテンツタイプをapplication/pgp-keysとして送付すると,
SqWebMail側で取り込むことができます.
送付例:
# Mime-Version: 1.0
# Content-Type: multipart/mixed; boundary="xxx"
#
# --xxx
# Content-Type: text/plain
#
# Here's the key
#
# --xxx
# Content-Type: application/pgp-keys
# -----BEGIN PGP PRIVATE KEY BLOCK-----
# Version: GnuPG v1.0.4 (GNU/Linux)
# Comment: For info see http://www.gnupg.org
#
# +M3OSONvootZCzKXP6VT29Vf+lZLQkjSyuY28PpfflaFKi8YpeCEKo4dDhynxCbV
# NAYk2I6wXguwl4MOT0ebkEWM1WS9lTsto7cCzz0ovSg3xe82PozA/4s6E5UUgl1B
#
# ...
# RQj/UASJxoPEEDHAhfZ0FYPsDFbo/P///4nDiTQk6Pz///+J2I1l+FteXcOJ9lWJ
# RSBQ/3Uc/3UY/3UU/3UQ/3UM/3UI6GsAAACDxBz/dSxqBf91KGoAicP/dST8McCJ
# -----END PGP PRIVATE KEY BLOCK-----
#
# --xxx

公開鍵の取り込みは,以上の手順で問題ないが,秘密鍵の取り込みは,暗号化をして行うべきである.そのための手順は次の通り.
A. まず,一時的な公開鍵・秘密鍵のペアを生成する.
B. 一時的な公開鍵を用いて,取り込みたい秘密鍵を暗号化し送付する.
C. 一時的な秘密鍵を用いて,取り込みたい秘密鍵を得る.
以上の手順を踏んで,安全に暗号鍵を取り込むことができる.

また,鍵の取り出しは,添付ファイル(attachment)を選択する時に,
公開鍵・秘密鍵を選択して,メールに添付することで行える.