与 SSH 密钥相比,使用 GPG 密钥签署 git 提交有什么优势

What are the advantages of signing git commit with GPG key compared to SSH key

我使用 git 进行大部分编程工作,并使用 SSH 密钥对大部分提交进行签名。但是,当我将 git 更新到版本 2.17.1 时,git 默认使用 GPG 密钥而不是 SSH 密钥进行签名。

我想知道使用 GPG 密钥相对于 SSH 密钥的优点和缺点是什么,以及为什么 git 将 GPG 设置为默认值。

SSH 密钥用于许多身份验证应用程序,例如登录到 ssh 服务器、登录和许多其他应用程序。

这意味着如果您在不安全的环境中使用它并且您的私钥被盗,其他人就可以伪造您的签名并登录到您的所有计算机。

GPG 广泛用于发送电子邮件文件和其他加密活动。因此,您可以在安全性较低的环境中使用它,因为伪造签名 github 远不如窃取您的服务器可取。