web-dev-qa-db-ja.com

信頼に関するこのgpg出力の正確な意味は何ですか?

署名をインポートしたり、gpgでキーを受け取ったりすると、次のような不可解な行が出力されます。

gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   1  signed:  16  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:  16  signed: 115  trust: 1-, 1q, 1n, 1m, 12f, 0u
gpg: depth: 2  valid: 105  signed: 189  trust: 81-, 11q, 0n, 4m, 9f, 0u
gpg: depth: 3  valid:  29  signed: 120  trust: 19-, 9q, 0n, 0m, 1f, 0u

Web-of-trustと非対称暗号について理解しています。しかし、「限界」、「有効」、「署名」、および信頼の背後にあるすべての文字が正確に何を意味するのかはわかりません。

29
Thomas Koch

この出力に関する公式のGnuPGドキュメントは、かなり扱いにくいものです。

OpenPGP信頼モデル

gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model

デフォルトでは、GnuPGはOpenPGP信頼モデルを使用します。この場合、キーを信頼して、他のキーを検証できます。

信頼できる鍵

鍵は信頼できます。信頼により、キーは他のキーを検証できます。信頼は他のキーに対する一種の署名ですが、キーをキーサーバーにアップロードするときに配布されません。

信頼レベルはさまざまです。

  • -オーナートラストが割り当てられていない/まだ計算されていない
  • e信頼の計算に失敗しました。おそらく期限切れのキーが原因です
  • q計算に十分な情報がありません
  • nこの鍵を信頼しない
  • mわずかに信頼
  • f完全に信頼されています
  • u究極の信頼

GnuPGマニュアル、チャプターキー管理)から取得

最も重要なのは、最後の3つのカテゴリです。独自のキーは最終的に信頼されます。完全に信頼された鍵の署名は、自分の署名と同等に価値があると見なされます。信頼できる限界キーは、キーを有効にするために、より多くの署名パスを必要とします。

有効なキー

デフォルトのOpenPGP信頼モデルでは、次の場合、キーは完全に有効ですです。

  1. 十分な有効なキーで署名されている、つまり
    • あなたは個人的にそれに署名しました、
    • 1つの完全に信頼された鍵で署名されている、または
    • わずかに信頼できる3つの鍵で署名されています。そして
  2. kから自分の鍵に戻る署名付き鍵のパスは、5ステップ以下です。

GnuPGマニュアルの「公開鍵リングの他の鍵の検証」の章から取得)

他のキーはわずかに有効です;信頼パスがあることを示していますが、十分に強力ではありません。上記の引用で「有効」という言葉を強調しました。有効性の計算には、完全に有効な鍵の信頼のみが考慮されます。 GnuPGでは、デフォルトの信頼モデルを構成できます。

すぐ上にリンクされているマニュアルページにも信頼計算の例がいくつか含まれていますが、簡単にするために適用されているデフォルト以外の信頼モデルに注意してください!

GnuPGの信頼DB情報

この情報は、信頼データベースが更新されるたびに、たとえば、キーサーバーから受け取った後に出力されます。

gpg: depth: 0  valid:   1  signed:  16  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:  16  signed: 115  trust: 1-, 1q, 1n, 1m, 12f, 0u
gpg: depth: 2  valid: 105  signed: 189  trust: 81-, 11q, 0n, 4m, 9f, 0u
gpg: depth: 3  valid:  29  signed: 120  trust: 19-, 9q, 0n, 0m, 1f, 0u

この出力は、信頼のWebについて説明しています。文字は上記の信頼レベルを表しています。 レベル0 には、独自の(最終的に信頼されている)鍵があります。このレベルで他の種類の信頼があってはなりません。このキーは有効です(もちろん)。

さらなる出力は、(欠落している)ドキュメントやソースコードの読み取りに基づいていない私の解釈を表しています:16個のキーに署名し、それらすべてをレベル1 で完全に有効にします。それらのうち12つについては、完全な信頼を発行しましたが、そのうちの1つはわずかなものです。これらは再び、レベル2 で信頼できる別の105個の有効なキーにつながります。それらの一部は再び信頼され、レベル3 の別の29個の有効なキーにつながります。

この出力を keyserversが伝える と比較すると、おそらくキーリングを更新する必要があります。 ;)

OpenPGPの信頼モデルによって提案された5つの最大パス長を変更しない場合、より深いレベルでより多くの信頼できるキーがレベル0〜5を作成する可能性があります。


GnuPGの主著者であるWerner Kochが GnuPGメーリングリスト に記載されていた場合:

ソースを確認する必要があります。ただし、WoTをよく知っている場合は、これが何であるかを理解できるはずです。 [...]これはデバッグ出力と考える必要があります。

26
Jens Erat