`gpg --recv-keys`は機能しますが、 `auto-key-retrieve`は機能しません。

`gpg --recv-keys`は機能しますが、 `auto-key-retrieve`は機能しません。

ファイルを確認しようとしています。

https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-108.4.453.tar.gz

ここで提供されている署名を使用してください。

https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-108.4.453.tar.gz.asc

次のコマンドを使用しています。

gpg --verify dropbox-lnx.x86_64-108.4.453.tar.gz.asc

これにより、次のような出力が生成されます。

gpg: assuming signed data in 'dropbox-lnx.x86_64-108.4.453.tar.gz'
gpg: Signature made Tue 20 Oct 2020 10:53:17 PM CEST
gpg:                using RSA key FC918B335044912E
gpg: Can't check signature: No public key

私のGPG設定は~/.gnupg/gpg.conf次のとおりです。

keyserver keyserver.ubuntu.com
auto-key-retrieve

ポイントは、auto-key-retrieve次のように動作することです。関連する公開鍵がなかったにもかかわらず、ファイルは確認プロセス中に期待どおりに検索されました。

gpg --search-keys FC918B335044912Eまた、私が使用しているキーサーバーでそのキーを見つけることができることも表示されます。私もすることができ、gpg --recv-keys後で確認が明らかに動作します。

私の質問、これはおそらく仕事の誤解から来ているようですgpg。問題のキーを手動で取得できますが、auto-key-retrieve他のキーと連携して動作することがわかっていますが、自動的に取得できないのはなぜですか?

答え1

もう少し詳細な調査を行った後、私はこの質問に少なくとも部分的に答えることができると思います。もちろん、追加情報も歓迎します。 :)

その理由は、指定された署名にキーの指紋が含まれておらず、キーIDのみが含まれているためです。たとえば、を使用してこれを表示できますgpg --list-packets。問題の署名については、

:signature packet: algo 1, keyid FC918B335044912E
    version 4, created 1603227197, md5len 0, sigclass 0x00
    digest algo 8, begin of digest fd b9
    hashed subpkt 2 len 4 (sig created 2020-10-20)
    subpkt 16 len 8 (issuer key ID FC918B335044912E)
    data: [2046 bits]

別の有効な署名の場合は、auto-key-retrieve次のようになります。

:signature packet: algo 1, keyid BCAA30EA9C0D5763
    version 4, created 1543944543, md5len 0, sigclass 0x00
    digest algo 10, begin of digest 84 51
    hashed subpkt 33 len 21 (issuer fpr v4 1A4E8B7277C42E53DBA9C7B9BCAA30EA9C0D5763)
    hashed subpkt 2 len 4 (sig created 2018-12-04)
    subpkt 16 len 8 (issuer key ID BCAA30EA9C0D5763)
    data: [2046 bits]

線を強調する

    hashed subpkt 33 len 21 (issuer fpr v4 1A4E8B7277C42E53DBA9C7B9BCAA30EA9C0D5763)

man gpg以下のセクションに明確に記載されていますauto-key-retrieve

キーを見つける方法の順序は次のとおりです。

[...]

  1. 鍵サーバーが構成されている場合発行者の指紋は署名の一部です(GnuPG 2.1.16以降)。、キーサーバーを構成しようとしています。

(強調します。)

--recv-keys一方、検索はキーIDでも行われます。


注意:Dropboxキーに指紋がないことは奇妙です。キーID照会を削除する理由のいくつかは次のとおりです。今回提出してください2019-07-05からこんな感じたとえそれでも指紋は基本的に署名に含まれているようです。長い間。 Dropboxの署名日は2020年10月20日です。やってみよう、ドロップボックス! xP

関連情報