HOME > Theory > Crypt |
暗号を使おう! |
The comp.security.pgp
FAQ
Version 1.4 |
6. 鍵署名 |
6.1 鍵署名とは? よろしい、あなたはJohn Smithの公開暗号鍵のコピーを手に入れたところだとしよう。その鍵が本当にJohn
Smithのものか、だれか詐欺師のものか、どうやってわかるだろうか? この答えが鍵署名である。それは偽造できないために、メッセージへの署名も同様である。あなたはJohn
Smithの本当の鍵を手にしたのかどうかわからないとしよう。しかし、Joe Blowからの信頼できる鍵があったとする。そして、あなたはJoe
BBlowを信頼しており、彼がJohn Smithの鍵に署名を追加したとする。そうすると、あなたは今や、John Smithの鍵のコピーが有効であると信用できるだろう。これが鍵署名というものだ。この信用の鎖はいくつかのレベルで伝えられる。Dを信頼するCを信頼するBを信頼するA、というように。PGP設定ファイルで、この信用の鎖が何レベルまで進んでもいいようにするかを決められる。
これをコントロールするオプション(PGPの設定ファイル、CONFIG.TXTにある)は、
PGP信頼モデルは、Alfarez Abdul-Rahmanによって詳しく論じられている。 |
6.2 鍵への署名の仕方は? コマンド・プロンプトから以下のコマンドを実行する。
PGP -ks [-u あなたのID] <鍵ID>
これで、あなたは鍵IDで特定された鍵に署名(もし指定していれば、あなたの私的鍵で署名されたもの)を追加する。鍵IDがユーザーIDなら、あなたは特定のユーザーIDに署名する。そうでなければ、その鍵にデフォルトのユーザーID( 次に、あなたはその署名とともに、"-kxa"オプションを使って、この更新された鍵のコピーを抜き取るべきだ。装甲テキストファイルが作られる。このファイルを鍵の所有者に送って、彼の選んだだれかへの新しい署名を伝えることができるようにしよう。 あなたの秘密鍵束には特に注意すること。それをだれかの機会にコピーして彼らの公開鍵に署名しようとしてはならない――彼らはあなたの秘密鍵をコピーして、あなたのパスフレーズを盗めるようにPGPを改造しているかもしれないからだ。 |
6.3 自分の鍵に署名すべきか? そう、あなたはあなたの鍵のそれぞれの個人IDに署名すべきである。これは、だれかが偽のアドレスをID部分に書き込んであなたへのメールを彼らのところに送るようなことができないようにするだろう。もちろん彼らは暗号化メールを読めないが、あなたはそれをまったく見ることすらできなくなるだろう。さらに悪いことには、「今から0x416A1A35鍵を使ってください」と読める偽ユーザーIDを付け加えれば、あなたの鍵ではなく、どこかの詐欺師の鍵を使うことになってしまうのである。
ユーザーIDをだれかの鍵に追加することは非常に簡単だ。それに必要なのはバイナリ・エディタと、PGP公開鍵フォーマットについての少しの知識である。しかし、あなたのユーザーIDに署名できる唯一の人物はあなたしかおらず、偽者は署名できないので、その鍵を手にした者はすぐに偽物かどうかわかる。たとえば、私の公開鍵束の登録は、以下のように"-kvv"コマンドで示すことができる。 Type Bits/KeyID Date User ID pub 1024/416A1A35 1994/10/01 Arnoud Engelfriet <galactus@stack.nl> sig 416A1A35 Arnoud Engelfriet <galactus@stack.nl> *** <galactus@stack.urc.tue.nl> now INVALID! sig 416A1A35 Arnoud Engelfriet <galactus@stack.nl> Galactus <galactus@stack.urc.tue.nl> sig 3602A619 Stephen Hopkins <shopkins@coventry.ac.uk> sig DD63EF3D Frank Castle <Frank_Castle@panther.pphost.nl> sig 416A1A35 Arnoud Engelfriet <galactus@stack.nl> Arnoud Engelfriet <galactus@stack.urc.tue.nl> sig 390E3FB1 Martijn Heemels <M.A.L.Heemels@stud.tue.nl> sig DA87C0C7 Edgar W. Swank <EdgarSwank@Juno.com> sig 416A1A35 Arnoud Engelfriet <galactus@stack.nl> あなたが自分の鍵に署名すべき理由についてさらに詳しい議論を見たいなら、Walther Soldiererの「なぜあなたは自分の鍵に署名すべきか」を参照のこと。 PGP 2.6.3[i]は自動的に、あなた自身の鍵に追加したすべてのユーザーIDに自動的に署名することに注意。 |
6.4 私はX氏の鍵に署名すべきか? だれかの鍵に署名することは、その鍵がまさにその人物のものであって、彼がそのように称している人物そのものであると信じているということを世界に示すことである。他の人は、あなたの署名によって、その鍵が有効かどうかを決めるのだから、気まぐれに署名すべきではない。
国によっては、パスポート申請のときの本人の証拠として、パスポートの写真に医者やエンジニアなどの尊敬される専門家に裏書きしてもらうことが必要なところもある――だれかの鍵に署名することは同じようなものだと考えるべきだ。代わりに、だれかの鍵に署名するときには、その人物の同一性について法廷で証言する覚悟があるかというくらい自問自答すべきだ。 ある人の鍵に署名することは、その人を好きかどうかとか、その人を信頼するかどうかとか、その人の行動を支持するかどうかとは関係ないことを忘れてはならない。それはちょうどパーティーでだれかに会って、「やあ、あそこにいるのがJoe Blowだよ」というようなものだ。Joe Blowは斧殺人者かもしれない。だが、彼を群衆の中から見分けたからといって、あなたはその犯罪で訴えられることはないのである。 |
6.5 だれかのものであると立証するには? それは、あなたがその人をどれだけよく知っているかにかかっている。親族、友人、同僚なら簡単だ。会議で会った人や、鍵署名セッションでは、運転免許証やクレジット・カードのようないくらかの証拠が必要である。
|
6.6 誰かが偽の鍵を署名するように送ってこなかったかどうか知るには? 誰かが誤ったIDの鍵を作って、不正なヘッダで電子メールを送ってきたり、電子メールが送られてくる中継点で別の鍵とすり替えることは非常に簡単である。フィンガー・サービスは改変しづらいけれども、不可能ではない。問題は、公開鍵交換は、安全な経路は必要ではない(盗聴なら問題とはならない)が、改変を証明する経路は必要(鍵代用は問題)ということだ。
それが、よく知っていて、声もわかる人からの鍵であれば、電話をして彼らの鍵の指紋を読み上げてもらえばいい( その人をよく知らないなら、鍵を面と向かって交換し、その人のものであるという証拠を尋ねればいい。彼らが鍵を追加できるように、あなたの公開鍵ディスクを機械に入れてみようと考えてはならない――それはあなたの鍵を同時に詐術的に交換できる。もしユーザーIDに電子メールアドレスが含まれているなら、同意された暗号化メッセージを、署名する前にそのアドレスと交換して確かめよう。あなたが確認していない鍵のユーザーIDには、署名してはならない。 |
6.7 鍵署名パーティーとは? 鍵署名パーティーは、PGPのいろいろなユーザーが集まって、鍵に署名するものである。これは「信頼の網」を広げるのに大いに役立つ。
|
6.8 鍵署名パーティーを開くには? 考え方は簡単だが、実際にやるのはちょっと難しい。他の人の私的鍵を汚損させたり、ウィルスを広めたりしたくないだろうからだ(これは、フロッピーが交換されるときには否応なくついてまわるリスクだが)。ふつう、こういうパーティーは、パーティーで誰もが会い、本人のものであると立証し、彼らから鍵指紋を得て、家で署名することになる。
Derek Atkins <warlord@mit.edu> はこの方法を推薦している。 鍵署名セッションを開くにはいろいろな方法がある。多くの提案がなされてきた。そして、このニュースグループにさらに指摘しておくために、うまくいき、しかも配布と署名についてn2乗問題を解決できる一つの方法を提案しておこう。これがそのやり方。
|
[ PGP-FAQ目次] [ 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11] [ 追補 1|2|3|4] [ このFAQについて | 用語集 | 著作権] |