今天(2026 年 10 月 14 日),GitHub 开始实施两项 SSH 变更:新上传的 RSA 密钥长度不得低于 3072 位,并在部分连接中启用后量子密钥交换算法 mlkem768x25519-sha256。这些变更适用于 SSH 连接;使用 HTTPS 进行 Git 操作的用户无需因这项公告而更改设置。

GitHub 9 月 22 日的公告指出,该算法将在 github.com 和启用了 Data Residency 的 GitHub Enterprise Cloud 上推出,但美国区域除外。这意味着平台开始提供支持;是否实际使用新算法,还取决于 SSH 客户端及其设置。
具体有哪些变化
对于 10 月 14 日之后上传的新 RSA SSH 密钥,最低长度要求为 3072 位。现有 RSA 密钥无需仅因长度而更换:GitHub 建议为这些密钥使用 RSA-SHA-2 签名,即 rsa-sha2-256 或 rsa-sha2-512。公司还在文档中建议,在适合工作环境的情况下,新密钥使用 Ed25519。
第二项变化涉及会话密钥协商。mlkem768x25519-sha256 将后量子密钥封装算法 ML-KEM 与 X25519 结合。按照 GitHub 的计划,配置为优先选择该算法的兼容客户端将能够自动使用它。较旧的客户端则应回退到受支持的兼容算法。
团队应检查什么
- 确认连接方式。 检查 Git remote 地址:以
https://开头的记录不受 SSH 变更影响。对于 SSH,请检查所用的客户端、库和集成。 - 检查 RSA 签名。 确认客户端和所用库支持 RSA-SHA-2。GitHub 列出了常见实现的最低版本要求,包括 OpenSSH 7.2p1、Go SSH 0.16.0 和 libssh2 1.11.0。
- 检查新密钥。 如果组织政策要求使用 RSA,新密钥必须至少为 3072 位。对于已经上传的 RSA 密钥,重点是确认其支持相应签名算法,而不是仅为此次变更生成替代密钥。
- 检查客户端对 ML-KEM 的支持。 平台更新本身并不能保证具体客户端会选择新的密钥交换算法。请先查阅客户端文档,并在测试连接中验证实际行为;对于较旧的客户端,应按照组织既定计划安排升级。
此外,之后还将进行单独的过渡:GitHub 计划于 2026 年 11 月 4 日和 12 月 9 日试行停用过时的 RSA-SHA-1 签名和 diffie-hellman-group-exchange-sha256 机制,并计划于 2027 年 1 月 13 日将其彻底移除。因此,今天对新 RSA 密钥长度的要求,与未来淘汰旧算法,应作为不同的迁移任务分别处理。
对团队而言,当前的实际优先事项是盘点 SSH 客户端并检查 RSA-SHA-2 支持,然后单独测试 ML-KEM 支持。目前尚未宣布美国用户可以使用新算法;但对于 10 月 14 日之后上传的新 RSA 密钥,长度要求已经生效。