Security

在 gpg 名稱中給出鍵/子鍵

  • April 7, 2021

我正在學習如何使用 gpg,我想為不同的目的創建多個密鑰,例如一個用於加密我的電子郵件,另一個用於連接到 ssh,另一個用於傳遞密碼儲存。我可以看到這很快就失控了,我忘記了我將哪個密鑰用於 ssh 等。

所以我的問題是我怎樣才能保持井井有條?有沒有辦法用名稱或一些標記系統附加鍵或子鍵?或者我正在以錯誤的方式思考這個問題,我不應該查看 gpg 本身來組織我的密鑰?

我知道這個問題是開放式的,可能是固執己見,但我只是不確定這裡推薦什麼安全做法。

用於 SSH 身份驗證的 GPG(子)密鑰必須具有用途 A(身份驗證),並且實際上該用途不用於其他任何用途,因此有選擇地設置足以辨識您的 SSH 密鑰。在舊版本中,很難設置/更改甚至查看使用標誌,但現代 GPG 更好:請參閱

如何在關鍵詳細資訊列表中定義 GPG 使用標誌?

https://security.stackexchange.com/questions/31614/how-to-change-subkey-usage-of-a-pgp-key

https://superuser.com/questions/833875/how-do-i-display -the-usage-flags-for-my-encryption-keys-in-a-less-hackish-way

https://security.stackexchange.com/questions/206072/how-do-i-interpret-output-that-產生-gpg-listing-keys

,但要注意每個的日期。

如果您使用gpg --full-gen-key它,您可以輸入“真實姓名”、“電子郵件地址”和“評論”,所有這些都進入**使用者 ID 記錄,**當您列出或查看密鑰時會顯示該記錄。顯然,您可以在評論中添加您想要的任何資訊;不太明顯,您可以在其他領域這樣做。PGP 最初設計用於電子郵件,因此它旨在將密鑰與人相關聯,或者與外部人員看起來穩定但實際上在業務部門或“listserv”等人員之間共享和/或轉移的電子郵件地址相關聯,但是這只是一個意圖——像 GPG 這樣的程序可以處理任何格式正確的數據,無論它是否實際收到或將作為電子郵件發送。

但是請注意,使用者 ID 資訊包含在公鑰中,任何人都可以看到您的公鑰分發給的任何人——如果您使用常見或預設的分發方法(如密鑰伺服器),則可能會有很多。標記密鑰“nerd@hackers.org(將此密鑰用於 github)”並將該密鑰提供給 github 以驗證您的送出可能是一個好主意。將密鑰標記為“(記住這不是我的兒童色情文件的正確密鑰)”可能是個壞主意。另請注意,使用者 ID 資訊僅在主密鑰級別而不是子密鑰,因此它不容易幫助區分子密鑰 - 但是大多數 PGP 程序,包括 GPG,通常只在主密鑰上執行,並且不容易選擇或甚至辨識大多數操作的子鍵。

引用自:https://unix.stackexchange.com/questions/643860