Linux中國

用 PGP 保護代碼完整性(三):生成 PGP 子密鑰

在本系列教程中,我們提供了使用 PGP 的實用指南。在此之前,我們介紹了基本工具和概念,並介紹了如何生成並保護您的主 PGP 密鑰。在第三篇文章中,我們將解釋如何生成用於日常工作的 PGP 子密鑰。

清單

  1. 生成 2048 位加密子密鑰(必要)
  2. 生成 2048 位簽名子密鑰(必要)
  3. 生成一個 2048 位驗證子密鑰(推薦)
  4. 將你的公鑰上傳到 PGP 密鑰伺服器(必要)
  5. 設置一個刷新的定時任務(必要)

注意事項

現在我們已經創建了主密鑰,讓我們創建用於日常工作的密鑰。我們創建 2048 位的密鑰是因為很多專用硬體(我們稍後會討論這個)不能處理更長的密鑰,但同樣也是出於實用的原因。如果我們發現自己處於一個 2048 位 RSA 密鑰也不夠好的世界,那將是由於計算或數學有了基本突破,因此更長的 4096 位密鑰不會產生太大的差別。

創建子密鑰

要創建子密鑰,請運行:

$ gpg --quick-add-key [fpr] rsa2048 encr
$ gpg --quick-add-key [fpr] rsa2048 sign

用你密鑰的完整指紋替換 [fpr]

你也可以創建驗證密鑰,這能讓你將你的 PGP 密鑰用於 ssh:

$ gpg --quick-add-key [fpr] rsa2048 auth

你可以使用 gpg --list-key [fpr] 來查看你的密鑰信息:

pub rsa4096 2017-12-06 [C] [expires: 2019-12-06]
 111122223333444455556666AAAABBBBCCCCDDDD
uid [ultimate] Alice Engineer <alice@example.org>
uid [ultimate] Alice Engineer <allie@example.net>
sub rsa2048 2017-12-06 [E]
sub rsa2048 2017-12-06 [S]

上傳你的公鑰到密鑰伺服器

你的密鑰創建已完成,因此現在需要你將其上傳到一個公共密鑰伺服器,使其他人能更容易找到密鑰。 (如果你不打算實際使用你創建的密鑰,請跳過這一步,因為這隻會在密鑰伺服器上留下垃圾數據。)

$ gpg --send-key [fpr]

如果此命令不成功,你可以嘗試指定一台密鑰伺服器以及埠,這很有可能成功:

$ gpg --keyserver hkp://pgp.mit.edu:80 --send-key [fpr]

大多數密鑰伺服器彼此進行通信,因此你的密鑰信息最終將與所有其他密鑰信息同步。

關於隱私的注意事項:密鑰伺服器是完全公開的,因此在設計上會泄露有關你的潛在敏感信息,例如你的全名、昵稱以及個人或工作郵箱地址。如果你簽名了其他人的鑰匙或某人簽名了你的鑰匙,那麼密鑰伺服器還會成為你的社交網路的泄密者。一旦這些個人信息發送給密鑰伺服器,就不可能被編輯或刪除。即使你撤銷簽名或身份,它也不會將你的密鑰記錄刪除,它只會將其標記為已撤消 —— 這甚至會顯得更顯眼。

也就是說,如果你參與公共項目的軟體開發,以上所有信息都是公開記錄,因此通過密鑰伺服器另外讓這些信息可見,不會導致隱私的凈損失。

上傳你的公鑰到 GitHub

如果你在開發中使用 GitHub(誰不是呢?),則應按照他們提供的說明上傳密鑰:

要生成適合粘貼的公鑰輸出,只需運行:

$ gpg --export --armor [fpr]

設置一個刷新定時任務

你需要定期刷新你的鑰匙環,以獲取其他人公鑰的最新更改。你可以設置一個定時任務來做到這一點:

$ crontab -e

在新行中添加以下內容:

@daily /usr/bin/gpg2 --refresh >/dev/null 2>&1

注意:檢查你的 gpggpg2 命令的完整路徑,如果你的 gpg 是舊式的 GnuPG v.1,請使用 gpg2。

通過 Linux 基金會和 edX 的免費「Introduction to Linux」 課程了解關於 Linux 的更多信息。

via: https://www.linux.com/blog/learn/pgp/2018/2/protecting-code-integrity-pgp-part-3-generating-pgp-subkeys

作者:Konstantin Ryabitsev 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國