Git:解释为什么使用 PGP key 签署提交/标签并不愚蠢

标签 git gnupg pgp

首先让我说,我非常怀疑签署您的提交和标签一点也不傻,但我需要帮助来理解它是如何工作的。

话虽如此,如果签名的全部原因是验证提交/标记是由您完成的(因为您可以在 Git 上冒充任何人)。是什么阻止恶意用户使用我的信息创建 key 并使用它签署提交?

最佳答案

谢谢迈克尔迈克尔。你的link about web of trust为我指明了正确的方向。

对于可能会问同样问题的任何人:答案很简单,如果您没有其他人的签名(已建立的信任网络),您的 key 就不是真正值得信赖的。

这些签名意味着签署你的 key 的人在这样做之前验证了你的身份(可能这个人认识你或者你提供了有效的身份证明等......)。这些签名对于试图验证您身份的人来说可能没有任何意义,除非您有一个他们信任的人已经签署了您的 key 。如果您没有“共同的人”,您将不得不通过其他方式证明您的身份并让他们签署您的 key 以提高其完整性。

好书(它们帮助我更好地理解 PGP 和 GPG):

如果您对 key 签名过程感兴趣,请阅读:

http://www.phildev.net/pgp/gpgsigning.html

关于Git:解释为什么使用 PGP key 签署提交/标签并不愚蠢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28755229/

相关文章:

Git:从另一个分支获取更改

git - 在多个分支中执行 git cherry-pick

git - 使用 Git 时出现 Permission denied (publickey) 错误?

ubuntu - Apt 在 Ubuntu 18.04 上拒绝 `/etc/apt/trusted.gpg.d` 中的 key 环

security - 公司中的 PGP 密码

git - 致命 : Could not read from remote repository. Github 错误:无法将某些引用推送到

java - 从 Java 运行时为 Linux 运行命令

go - 相当于 golang 中的 gpg --sign 吗?

java - BouncyCasSTLe 加密 - 丢失 "END PGP MESSAGE"

java - 使用 PGP Bouncy CaSTLe 依赖项创建 CipherOutputStream