web-dev-qa-db-ja.com

gpg --fingerprintは完全に異なる指紋を出力します

OpenPGPキーの完全なフィンガープリントを表示する場合、IDと比較して完全に異なるものを取得します。

この特定のキーについて:

$ gpg --list-keys --fingerprint D72AF3448CC2B034
pub   rsa4096 2017-02-09 [SC] [verfällt: 2027-02-07]
      F554 A368 7412 CFFE BDEF  E0A3 12F5 F7B4 2F2B 01E7
uid        [ unbekannt ] OpenVPN - Security Mailing List <[email protected]>
sub   rsa4096 2017-02-09 [E] [verfällt: 2018-03-06]
sub   rsa4096 2017-02-09 [S] [verfällt: 2018-03-06]

他のキーの場合、フィンガープリントは期待どおりにIDと一致します。

$ gpg --list-keys --fingerprint 57DB9DAB613B8DA1
pub   rsa4096 2016-08-23 [SC] [verfällt: 2026-08-21]
      7ACD 56B7 4144 925C 6214  3297 57DB 9DAB 613B 8DA1
uid        [ unbekannt ] David Sommerseth (OpenVPN Technologies, Inc) <[email protected]>
uid        [ unbekannt ] David Sommerseth (OpenVPN Technologies, Inc) <[email protected]>
uid        [ unbekannt ] David Sommerseth (OpenVPN mailing list ID) <[email protected]>
sub   rsa4096 2016-08-23 [E] [verfällt: 2026-08-21]
sub   rsa4096 2016-08-23 [S] [verfällt: 2021-08-22]

これは正常ですか?誰かが私に説明できますか、なぜ指紋が完全に異なるのですか?

9
Felix

サブキーが引数として渡される場合、GnuPGは通常、サブキーを主キーに解決します。暗号化サブキーを指定する場合、これは特に驚くかもしれません。GnuPGはサブキーを主キーに解決し、暗号化のために別のサブキーを実際に選択する可能性があります(最新の暗号化サブキーを選択)。

キーをリストする場合、これは常に実行されます。暗号化などの一部の操作では、!をサブキーのID(つまり、D72AF3448CC2B034)に追加して、このキーを明示的に選択し、主キーのルックアップを無効にすることができます。

コマンドラインでサブキーのフィンガープリントを表示するには、--with-subkey-fingerprintsオプションを適用します。

$ gpg --list-keys --with-subkey-fingerprints D72AF3448CC2B034
pub   rsa4096/0x12F5F7B42F2B01E7 2017-02-09 [SC] [expires: 2027-02-07]
      F554A3687412CFFEBDEFE0A312F5F7B42F2B01E7
uid            [ unknown] OpenVPN - Security Mailing List <[email protected]>
sub   rsa4096/0xF80E8008F6D9F8D7 2017-02-09 [E] [expires: 2018-03-06]
      E6CAF699521B9B5E57A5C31BF80E8008F6D9F8D7
sub   rsa4096/0xD72AF3448CC2B034 2017-02-09 [S] [expires: 2018-03-06]
      B59606E2D8C6E10B80BE2B31D72AF3448CC2B034
8
Jens Erat

どうやら、D72AF3448CC2B034はサブキーであり、E0A312F5F7B42F2B01E7は対応するマスターキーです。ただし、gpgはサブキーの指紋を出力しません。これを確認するには、enigmail guiツールを使用する必要がありました。

0
Felix