[PGP]は過度の肛門性麻痺を起こすことがある。 — Phil Zimmermann
私は自分の web of trust を構築中です。つまり、私は人々(PGPユーザー…)に—公平に—sure私の公開PGPキーを使用することで、実際に私と通信していることを望みます私の公開鍵、そしてそれらが信頼できると思われる場合は、私もそうすることができます)。
私の[公開]キーに十分な信頼できる署名がある場合、他の人のキーに対する私のown署名はより意味をなすようになります。悪い例のシナリオ:私はマロリー(悪者)の鍵に署名し、1年後、私の鍵は、たとえば、Debianメンテナ(非常に信頼できる人)によって署名されます。その人が信頼され、私の鍵に署名した場合、それは私も信頼されていることを意味します。私も信頼されているのであれば、マロリーも信頼されているということですright?
他の人の公開鍵に次のGPGコマンドで署名します(Linuxの場合):
gpg --ask-cert-level \
--cert-policy-url http://diti.me/pgp/ \
--sign-key 0xFFFFFFFE
上記のコマンドを使用すると、0-FFFFFFFEキーにpolicy URL(howについての情報を提供する)で署名し、次のように選択できます。
How carefully have you verified the key you are about to sign actually belongs
to the person named above? If you don't know what to answer, enter "0".
(0) I will not answer. (default)
(1) I have not checked at all.
(2) I have done casual checking.
(3) I have done very careful checking.
質問は:レベル3で、私が数年前から知っている友達の鍵に署名できますか?言うまでもなく、私は彼を信頼しています( &キー署名における彼の深刻さ)、そして慎重なチェックを実行します(拡張質問、TXTフィールドを彼のドメイン名のレコードに追加する、など?)。
Phil Zimmermannはpeopleではなく、単にgeeksではなくPGPを使用したいと考えていました。私は彼が「過度のアナルネス」と呼んでいるものを避けたいと思いますが、それでも(信頼関係の問題では)真面目な人物と見なされています。そのため、2つを組み合わせて、WoTを壊さずにIDとキーを正確に検証できる友人の検証プロセスを簡略化したいと思います。
うまくいけば、私の質問と懸念が理にかなっています。
最後に、あなたはあなたがしたい誰にでも署名できます。あなたを制御する人は誰もいませんし、あなたが何をしているか(そしてあなたがそれをどのようにしているか)をチェックするものもありません。
安全なチャネルを介して改ざんされていない人のキーを確実に受信できる場合は、有名な(私にとって)人のキーに有効な署名をすることを検討します。あなたが彼の声を認識できるか、または他の何らかのチェックを行ってそれが適切な人物であることを完全に確信している場合(たとえば、彼が電話で答えることができる人だけに質問することによって)、私はこの人物に鍵を署名することで問題ありませんこの確立された信頼できる接続を介して(たとえば、電話に向かって話すことによって)私を送信します。私はキーサーバーで見つかったキーに署名することに問題があります(誰でも任意のUIDのキーをアップロードでき、すべての 大統領のキー を確認できます)または未署名で受け取った(別の人による署名なし)すでに信頼されているキー)電子メール。
gpg sign
コマンドを使用して友達のキーに "sig3"を与えると、彼が自分のUIDを使用しているように見せかけた人物が本当にその人物であることを証明します。 Debianメンテナがあなたの鍵に署名するとき、彼はあなたがあなたになりすましている人物であることを証明しています。
それは今のところすべてです。あなたもDebianメンテナも、あなたがあなたの能力(またはあなたの友人の能力)を信頼してキー署名を実行するかどうかについては何も述べていません。
あなたが言及した署名ポリシーは、他の人があなたが発行した署名を信頼する方法を決定するのに役立ちます。
友人が他の鍵に確実に署名できることが確かな場合は、gpg trust
を使用して、友人に別の種類の鍵を信頼することができます。これを使用すると、GnuPGを注文して、友達が発行した署名を自分が発行したかのように見なすことができます。
この情報はあなた自身にのみ有効です。キーサーバーにもエクスポートされたキーにも含まれていません。
キーの信頼レベルは、あなただけがキーに割り当てるものであり、個人情報と見なされます。エクスポート時にキーと一緒にパッケージ化されることはありません。キーリングとは別に、別のデータベースに保存されます。 (- GnuPGマニュアル から)
不明なものへの(複数の)信頼パス(「ID署名」、この回答で最初に説明した種類の信頼)があると、ヒントすべてとして読み取れます大丈夫ですが、信頼チェーンのすべての人を今信頼していることを忘れないでください。ほとんどの人は正直であり、有効な署名を実行する能力がありますが、予想もしていなかった誰かに知覚されたことはありませんか?誰かが本当にあなたを詐欺する理由を持っている場合、彼はいくつかの奇妙なパスで信頼の連鎖を獲得できるかもしれません。
OpenPGPの信頼に関する優れた記事があります: 信頼があり、信頼があり、信頼があり 。
私が事前にあなたを知らない場合、私にとって、私が通信していることをかなり確信しているとはどのような意味がありますか本当のあなた?私が知っているすべてのことについて、私はあなたがまったく存在することを確信することはできません。あなたが私と相互作用しない限り、あなたの存在は私には無関係です。
これは、PGPのWeb of Trustの主要で大きな露骨な失敗です。「アイデンティティ」の一貫した概念を最初に定義する手間をかけることなく、公開鍵とアイデンティティの強いリンクを確保しようとします。
たとえば、今、このメッセージによって、私は(おそらく)何らかの知覚的存在(おそらく人間)と対話できるようになり、その1つの質問に対して、「Diti 「そして、アヒルのように漠然と見える顔。その人間のエンティティと機密メールをやり取りしたい場合は、「security.SEでその特定の質問を書いたDiti」にメッセージを送信します。 それは、私が使用したいアイデンティティの概念です。 PGPの鍵署名は、事前に知らないいくつかの公開鍵を、私も知らない電子メールアドレスにリンクします。効果的にするには、「キーに署名する」人は次のようなステートメントに署名する必要があります。「I、[email protected]、公開キー0xA7C083FEが「署名しても大丈夫ですか?」 IRLミーティングのないPGPキー?」 2013年9月9日のセキュリティに関するSEの質問」.
地球上のすべてのボブと出会い、すべてのボブにあなたの鍵に署名させることができます。最高の「チェックレベル」では、有用な情報は得られません。あなたの秘密鍵をあなたの名前やメールアドレスにリンクすることは、私が他の理由であなたをすでに知っているのでない限り、私にとって意味がありません-その時点で、完全な見知らぬ人を介した自動連鎖を備えたWoTは何の関連性も失います。
同じ質問には別の側面があります。なぜ、そのような計り知れない強さをもって、与えられた公開鍵が本当に自分のものであることを保証したいのですか?それが機能する場合、署名されたすべてのメッセージのみが追跡可能になり、証明に対して使用可能になります。自分のシャベルを墓地に持っていくようなものです。
デジタル署名 の場合、彼の正しい心構えの誰も、署名を生成する可能性を積極的に追求すべきではありません。私たちが欲しいのは他の人が署名を生成することです。
したがって、私の答えは、任意の「ポリシーレベル」で鍵に署名できるということです。 実際に破壊するものは何もないため、PGPのWeb of Trustは破壊されません。
(これは一種の祝福です。PGPのWeb of Trustが機能する世界は、誰もが一意に識別され、空間と時間で特定され、世界的に責任を負う世界です。それに到達すると、それはかなり Orwellian 、つまり素晴らしいが怖い。)
実際のところ、信頼の網は非常に安全ではありません。キー署名を行う大多数の人々は、個人のIDをかなりざっと見て、それに基づいてそれを行っています。やや説得力のある偽のパスポートを入手すれば、好きな名前で簡単に署名を取得できます。
何年も誰かを知っていることと比較すると、確実に安全に見えます。
あなたがしたいことは、リクエストをする人があなたがそれを思っている人であることを確認することです。それが個人的によく知っている人物である場合、オンラインチェックに加えて、電話でキーフィンガープリントを読み取らせることはおそらく合理的です。これは、アカウントの資格情報を盗んだだけの人物ではなく、本当にあなたが知っている人物であることを確認するのに役立ちます。
IMOの信頼のWebが行う主なことは、「インターネットファック」からの保護です。