28

我最近设置了 GPG 来签署我的 Git 提交,所以现在我的 gitconfig 中有一个signingKey字段。我对 GPG 的细节不是很熟悉——这个签名密钥是我应该保密的敏感信息,还是属于 gpg 的公共部分?我将 gitconfig 放在一个公共存储库中,在那里我保存了我的 dotfiles,我想知道是否可以让该字段可见。

4

2 回答 2

25

不,没有必要保密。

密钥不在 git 的配置中,而是在 GnuPG 的“密钥环”中,通常是您 HOME 中的某个文件。从理论上讲,它也可以位于更安全的位置,例如硬件令牌,但我对此了解不多。

git config 中的值仅指示 gpg 选择哪个密钥。

于 2018-01-02T21:21:26.483 回答
10

我不是安全专家,但我认为您的签名密钥不必保密:

  • .gitconfig 文件不包含任何关键数据(如私钥),因此许多人在他们的 GitHub dotfiles 存储库中共享它,包括他们的签名密钥
  • 如果要保密,当您单击签名提交中的“已验证”按钮时,GitHub 不会公开显示它:

GPG 密钥 ID

于 2019-03-21T12:55:54.283 回答