git - 与 SSH 密钥相比,使用 GPG 密钥签署 git commit 有什么优势
问题描述
我在大部分编程工作中都使用 git,并在大多数提交中使用 SSH 密钥对它们进行签名。但是,当我将 git 更新到 2.17.1 版本时,git 默认使用 GPG 密钥而不是 SSH 密钥进行签名。
我想知道使用 GPG 密钥而不是 SSH 密钥的优缺点是什么,以及为什么 git 将 GPG 设为默认值。
解决方案
SSH 密钥用于许多身份验证应用程序,例如登录 ssh 服务器、登录和许多其他应用程序。
这意味着如果您在不安全的环境中使用它并且您的私钥被盗,其他人能够伪造您的签名并登录到您的所有计算机。
GPG 被广泛用于发送电子邮件文件和其他加密活动。因此,您可以在不太安全的环境中使用它,因为伪造签名 github 远不如窃取您的服务器可取。
推荐阅读
- android - 从 nativescript 调用 android 方法(sdk、aar 或 jar)
- python - nltk 包返回 TypeError:“LazyCorpusLoader”对象不可调用
- javascript - jQuery官方发布有错误吗?
- javascript - 如何为具有不同数量的键/值对的对象添加类型?
- python - python路径/点安装
- jekyll - Jekyll - 如何仅为主页设置 YAML 前端默认值?
- apache-spark - 在 Spark 中动态替换机器学习模型,无需重新启动 Spark-streaming 作业
- mysql - 具有多个 OR 的查询结果不是 OR 的顺序
- mysql - 如果我无法触及插入查询,有没有办法在 sql 中回滚失败的批量插入?也许触发?
- javascript - 为什么我的对象没有被推入不同的数组?