この指示に従ってカーネルをダウンロードして解凍しました。 https://priyachalakkal.wordpress.com/2013/01/19/verifying-digital-signature-using-gpg/
その後、署名を確認しようとしましたが、予期しないエラーが発生しました。これは、基本的なアプローチを文書化したWebサイトで説明されている成功または失敗のシナリオの1つではありません。
公開鍵を探す場所を示すコマンドラインフラグを提供する必要がありますか?
~# gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 79BE3E4300411886
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key 79BE3E4300411886: public key "Linus Torvalds <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1
~# gpg --verify linux-5.6.9.tar.sign
gpg: assuming signed data in 'linux-5.6.9.tar'
gpg: Signature made Fri 01 May 2020 11:51:56 PM PDT
gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
gpg: Can't check signature: No public key
アップデート1:@StephenKittの答えに基づいて最初のメッセージに表示されたキーを取得しようとしましたが(ユーザーIDを見つけるにはキーサーバーを指定する必要がありました)、結果は期待したものとは異なります。
~# gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 647F28654894E3BD457199BE38DBBDC86092693E
gpg: key 38DBBDC86092693E: public key "Greg Kroah-Hartman <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1
~# gpg --verify linux-5.6.9.tar.sign
gpg: assuming signed data in 'linux-5.6.9.tar'
gpg: Signature made Fri 01 May 2020 11:51:56 PM PDT
gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
gpg: Good signature from "Greg Kroah-Hartman <[email protected]>" [unknown]
gpg: aka "Greg Kroah-Hartman <[email protected]>" [unknown]
gpg: aka "Greg Kroah-Hartman (Linux kernel stable release signing key) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: 署名が所有者に属するという表示はありません。主キー指紋:647F 2865 4894 E3BD 4571 99BE 38DB BDC8 6092 693E
アップデート2:インターネット検索で信頼できない署名警告を処理する方法を見つけることができました(該当する回答でStephenのコメント/返信を参照)。
~# gpg2 --tofu-policy good 647F28654894E3BD457199BE38DBBDC86092693E
gpg: Setting TOFU trust policy for new binding <key: 647F28654894E3BD457199BE38DBBDC86092693E, user id: Greg Kroah-Hartman <[email protected]>> to good.
gpg: Setting TOFU trust policy for new binding <key: 647F28654894E3BD457199BE38DBBDC86092693E, user id: Greg Kroah-Hartman <[email protected]>> to good.
gpg: Setting TOFU trust policy for new binding <key: 647F28654894E3BD457199BE38DBBDC86092693E, user id: Greg Kroah-Hartman (Linux kernel stable release signing key) <[email protected]>> to good.
~# gpg2 --trust-model tofu --verify linux-5.6.9.tar.sign
gpg: assuming signed data in 'linux-5.6.9.tar'
gpg: Signature made Fri 01 May 2020 11:51:56 PM PDT
gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
gpg: Good signature from "Greg Kroah-Hartman <[email protected]>" [full]
gpg: aka "Greg Kroah-Hartman <[email protected]>" [full]
gpg: aka "Greg Kroah-Hartman (Linux kernel stable release signing key) <[email protected]>" [full]
gpg: [email protected]: Verified 1 signatures in the past 0 seconds.
Encrypted 0 messages.
gpg: [email protected]: Verified 1 signatures in the past 0 seconds. Encrypted
0 messages.
gpg: [email protected]: Verified 1 signatures in the past 0 seconds. Encrypted
0 messages.
答え1
正しいキーがありません。 5.6.9 アーカイブは、Linus ではなく Greg Kroah-Hartman によって署名されました。走る
gpg --recv-keys 647F28654894E3BD457199BE38DBBDC86092693E
アーカイブを確認できます。 (第2通貨の指紋ですgpg
。)
キーを検索した後に受信したメッセージは、次の2つを表します。
- プロフィールに署名がよくなっています(「良い署名は次から来ました」...)。
- しかし、ダウンロードしたキーが実際にGregのものであるという証拠はありません。
デフォルトでは、これは鍵を信頼する限りアーカイブも信頼できることを意味します。 GPGは、あなたのキーから他の人とのリンクを追跡する信頼データベースを維持します。これは信頼ネットワークに基づいており、汎用ツールでは実用的ではないと見なされます。ほとんどの場合、TOFU(Trust on First Use)はより簡単で同じように便利です。次のオプションを使用して信頼モデルを変更できます--trust-model
。GnuPG マニュアル詳しく学んで議論してください。