題 如何讓GnuPG顯示完整的8字節/ 64位密鑰ID?


我如何製作GnuPG (特別是版本1.4.12) 顯示系統上密鑰環上的密鑰的完整64位(8字節)密鑰ID?

gpg --list-keys --fingerprint XXXXXXXX 只顯示我已經知道的密鑰ID的32位部分和指紋(至少在過去不一定與密鑰ID相同,儘管在這種特殊情況下最右邊的32位匹配) 。

谷歌搜索出現了一些關於指定64位密鑰ID以最小化衝突風險的重要性的頁面,以及一些想要或接受長密鑰ID的GnuPG選項,但我找不到任何關於如何實際顯示長的ID密鑰ID。


33
2017-07-12 21:20


起源




答案:


或者你可以使用:

gpg --keyid-format LONG -k 0xDEADBEEF

要么:

gpg --keyid-format 0xLONG -k 0xDEADBEEF

51
2017-09-29 23:06



這實際上是更好的IMO,因為輸出比Paulo的建議(它仍然有效)更具可讀性。 - α CVn
是的,我更喜歡更長的格式,以至於我的gpg.conf中有“keyid-format 0xLONG”,所以我不必每次都指定它。使用--keyid-format 0xSHORT將以默認方式顯示鍵。 - Ben
Paulo的建議更好的原因是--with-colons格式保證可以工作,因為--with-colons選項保證向後兼容,用於編程訪問。其他選項不一定具有輸出格式保證。 - Christopher
除了某些平台上某些值的定位並不總是相同的。對於真正的程序化平台獨立性而言,它通常是,但不是足夠一致。不幸的是我不記得哪種變化打破了這種模式,但我確實記得它正在gnupg-users上進行討論;我相信有關計算密鑰環中密鑰數量的討論。 - Ben
@Christopher當你編寫腳本或嘗試解析輸出時,這當然是一個考慮因素。然而,對於人類消費而言,它當然不是主要考慮因素,因為在適當校準時,人腦是高度自適應的模糊邏輯匹配器。 - α CVn


您可以使用該選項查看長密鑰ID --with-colons (是的,非常直觀)。

要僅打印長密鑰ID,請使用以下內容:

$ gpg --list-keys --with-colons XXXXXXXX | awk -F: '/^pub:/ { print $5 }'

10
2017-07-12 21:57