Gpg

如何使用 gpg 更新過期的密鑰對

  • April 28, 2020

在 gpg 密鑰對過期時更新它的最佳方法是什麼?該方法的原因是什麼?

密鑰對已經被許多使用者簽名並且在公共伺服器上可用。

  • 新密鑰應該是過期私鑰的子密鑰嗎?
  • 是否應該由舊簽名(我可以嘗試編輯密鑰並將到期日期更改為明天)?
  • 新鑰匙應該簽舊鑰匙嗎?

私鑰永不過期。只有公鑰可以。否則,世界永遠不會注意到到期,因為(希望)世界永遠不會看到私鑰。

對於重要的部分,只有一種方法,這樣就省去了關於利弊的討論。

您必須延長主密鑰的有效性:

gpg --edit-key 0x12345678
gpg> expire
...
gpg> save

您必須決定延長與替換子項的有效性。替換它們會為您提供有限的前向安全性(僅限於相當大的時間範圍)。如果這對您很重要,那麼您應該擁有(單獨的)用於加密和簽名的子密鑰(預設是一個僅用於加密的子密鑰)。

gpg --edit-key 0x12345678
gpg> key 1
gpg> expire
...
gpg> key 1
gpg> key 2
gpg> expire
...
gpg> save

您需要key 1兩次選擇和取消選擇,因為您一次只能延長一個鍵的有效期。

您也可以決定延長有效期,除非您有理由假設密鑰已被洩露。僅當您擁有離線主密鑰(恕我直言,無論如何,這是使用 OpenPGP 的唯一合理方式)時,才在妥協的情況下不丟棄整個證書才有意義。

無論如何,您證書的使用者都必須獲得其更新版本(對於新密鑰簽名或新密鑰)。更換會使鑰匙變大一點,但這不是問題。

如果您使用智能卡(或計劃這樣做),那麼擁有更多(加密)密鑰會帶來一定的不便(具有新密鑰的卡無法解密舊數據)。

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