暗号メールの作り方

2001.09.29

とりあえず「妖精現実」にメールでも

具体的に説明したほうが分かりやすいでしょう。ここでは、春川菜美さんが、妖精現実にあててPGPで暗号化したメールを出すことを考えてみます。

まず相手の公開鍵を入手する必要があります。妖精現実の公開鍵は案内のページなどに書いてあるように、
http://www.faireal.net/about/pgp/
という場所にあります。

このページを開くと次のようになってます。この鍵は、菜美さんの作った2048ビット鍵よりだいぶ短いですが、鍵の種類や長さが違うためなので(しかし互換性は、あるので)気にしないでください。

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: PGP 6.5.8

mQCNAziReL0AAAEEAMjxIHxjYSxj6y55582yLtBzleBifm6rV4I3vB0XEQzvCfYD
DkA04FquXFWI72twhxBWLUoETcApY4JLWYi1hiGBTOuGm2uZMQTplsm/OOiNbyLL
Cq43zj0QbejkVc17BOB5s8tfwLBo7lzIZSFx8gLFj1wSdLtH/HxtfcPIRyTNAAUT
tCNmYWlyZWFsLm5ldCA8d2VibWFzdGVyQGZhaXJlYWwubmV0PokAlQMFEDsDA8J8
bX3DyEckzQEBRWUD/2dwai412nHucNZpZQ8p9/zClaahBVEr8/pZUar4MQoFFNwi
zRywFQyqYLUm2Fq9Fo6FtNYYBAHY/7Hu+B3ZA75HsUn8yhTcBhONJJuBBraD1sPE
4b+arj2D2wBxyEeUD3ZoSjHPmg2IrV4R3EQHKIhfEu2EEP3tSpODTVQGyGvctCBt
aW9uIDx3ZWJtYXN0ZXJAZmFpcmVhbC4xMDQubmV0PokAlQMFEDiReL18bX3DyEck
zQEBKWQEAK/K85d7T+1w5Y1QNLb5pDwOVOQiIGO88p8EEJxyUgt8iLsEbTDsurX3
RiIXRLJ2knRTxpUc4d6yFldBJ7Is5d8MJIZ7j+rO2WzFfmIEz4Bk7mFezE7JIQqG
irxboglr6cfq0GwkeAp6MqXzSPvo2NlGpKi2FxkGXobfhk8Q6Wga
=PrEU
-----END PGP PUBLIC KEY BLOCK-----

BEGIN から END までのあいだをマウスでドラッグして反転させて、「右クリック→コピー」したら、PGPKeys で「編集→張り付け」します。

(図版入ル)

早い話、ウェブ上に公開されてる鍵を自分のキーホルダーにコピー&ペーストするわけです。

(図版入ル)

上のようなダイアログが出るので、インポートしたい鍵(自分のキーホルダーにくっつけたい鍵)であることを確認したら「インポート」をクリック。すると次のように、PGPKeys のなかに妖精現実の鍵が入り、これ以降、妖精現実とのあいだでPGP通信ができるようになります。

(図版入ル)

ただし、ごらんのように、インポートしただけでは、「有効性」が灰色になってます。この鍵が本当に有効か(妖精現実の鍵かどうか)保証がないからです。実際、どこかわけの分からないページに「これがフェアリアルのメールアドレス、これが公開鍵です」などと貼ってあっても、そんなの信用できません。関係ない第三者のメールアドレスかもしれないからです。――単にPGPで暗号化すればセキュアという問題でなく、暗号化に使うキーがホンモノか(有効か)というのがむしろ重大なわけです。が、とりあえず、いまインポートした鍵は、www.faireal.net 上のページに記されているので、いちおう信頼することにしましょう。

そうと決めたら、「わたしは、この鍵を有効だとみなします」というサインをして、鍵を有効化する必要があります。それにはインポートした鍵をクリックして選択してから、「右クリック→署名」を選びます。

(図版入ル)

すると、次のようなダイアログが出ます。

(図版入ル)

「選択されたユーザ ID に署名することにより、あなたは、直接知り得た情報によって、鍵とユーザ ID が、本当に本人のものであるかということを、証明します。署名する前に、鍵が所有者によって安全な方法であなたに渡されたか、あるいは所有者が持っている指紋と一致しているかを確かめてください。」――今から行う署名は、インポートした鍵が、本当に
faireal.net <webmaster@faireal.net>
のものであることを――「誰かが言ってたから」とかでなく――あなた自身の直接の判断で推定できますか?と尋ねています。具体的には、「安全な方法で渡されたか」または「指紋が一致するか」を確かめてください、と書いてあります。妖精現実のページから直接コピーしたものなので、いちおう安全な方法で得たと言えるでしょう。指紋についても、
http://www.faireal.net/about/pgp/
にある「Key fingerprint」と一致してますが、これは鍵と指紋を同時に渡されているので、あまり意味がありません。ともあれ、PGPの使い方の練習の段階で、あんまり根本的なところを疑っても仕方ないので、とりあえずOKをクリック。すると、あなた自身のパスフレーズを尋ねられます。

(図版入ル)

パスフレーズを入れればいいわけですが、そんなことより、この操作の意味をよく理解してください。

――あなたのキーホルダーにある鍵の有効性を変更する権限があるのは、あなた本人だけに限らなければならない、ということ。慣れないと面倒と想うかもしれませんが、セキュアとは、そういうことです。鍵を作るときに決めたパスフレーズをタイプして OK をクリック。すると、めでたく、次のように、いまインポートした鍵の有効性がグリーンになります。

(図版入ル)

以上の準備(鍵のインポートと有効化)は、新しい鍵をキーホルダーにつけくわえる最初だけ必要なもので、いちどインポートしてしまえば、もうこんな手間は、かかりません。

ではメールを書いてみましょう

本当はメーラーから透過的に使うこともでき、そのほうがラクですが、ここでは原理を理解する意味もかねて、「手動」でやってみましょう。とりあえずメモ帳でもひらいて、何かタイプしてみます。

(図版入ル)

書き終えたら、タスクトレイの鍵のアイコンを右クリックし「現在のウィンドウ→JISで暗号化」を選択します。

(図版入ル)

だれあてに暗号化するのか尋ねられます。ここで指定した相手だけがPGP暗号を解除できるようになります。画面の説明にもあるように、上部の鍵一覧から使いたい鍵を選択して、下部の受信者リストにドラッグします。

(図版入ル)

ここでは例として先ほど鍵をインポートした「faireal.net」をあて先とします。該当するメールアドレスを上の欄から下の欄へドラッグしてください。

(図版入ル)

通常は、自分自身も受信者リストに加えておいてください。

(図版入ル)

PGPは強い暗号なので、あなたが自分自身を受信者(=暗号を解除する権利のある者)に加えない場合、ある意味で常識と反することが起きます。自分で作った暗号文をあとから解読して読み返そうと思っても、PGPは、このような動作を拒絶するのです――あなたが指定した受信者リストのなかに、あなたが入っていない場合には。つまり、あなた自身であれ、ほかの者であれ、とにかくあなたが受信者としてハッキリと指定した以外の相手は(たとえ読みたがっているのがあなた自身であっても)PGPは暗号解除に応じてくれません。

ともあれ受信者が指定されたら、OK をクリックします。その瞬間、さきほどのメモ帳の内容は、(指定した受信者にしか解読できない形で)PGP暗号化されます。

もともとのメモ――

(図版入ル)

それがPGP処理されたもの――

(図版入ル)

この方法で暗号文を生成した場合、生成された暗号文は、この時点ですでにクリップボードにもコピーされています。だから、メーラを開いて、メニューの貼り付けを実行するだけでOKです。そしてそれを送信すれば良いわけです。

以上が、メモ帳に下書きした原文をPGPで暗号化したメール送信するまでの方法の説明です。(PGPを透過的に使えるメールソフトなら、本当は、もっと簡単に使うこともできますが、メールソフトによって操作法が違うので、ここでは一般的な方法を説明しました。)

参考(受信した側では……)

メールを受信した側では、どうなるでしょうか。以下は EdMaxフリー版の場合です。

(図版入ル)

このメールソフトの場合、あらかじめ簡単な設定をしておくだけで、PGPを透過的に使うことができます。(ただし、上記のようなPGP GUI版は、EdMaxフリー版では使えません。ここではコマンドライン版の 6.5.8 が用いられています。)PGPでよろわれたメールを選択して、[Alt]+[T] - [P] を叩くと、次のようにパスフレーズを尋ねられます。

(図版入ル)

パスフレーズをタイプして [Enter] を叩くと、暗号は解除されます。

(図版入ル)

では逆に、あなたがPGPメールを受け取った場合、どういうふうに暗号解除すれば良いのでしょうか。次のページでは、その点を説明します。

www.faireal.net <webmaster@faireal.net>