GitHub:未加密的 Git 协议正在成为历史
前几天,GitHub 发布了一篇博客
。这表明我们正在采取措施提高托管代码存储库的安全性。稍后,当您推送和拉取 Git 数据时,您将需要使用加密的 Git 协议。这些更改会影响 SSH 支持的一些密钥。根据 Git 系统团队的说法,未加密的 Git 协议已成为过去。
具体来说,GitHub 不再支持 DSA 密钥(数字签名算法),一些传统的 SSH 算法如 HMAC-SHA-1 和 CBC 不再适用。特别是在后一种情况下,CBC 现在是攻击者频繁且容易攻击的目标。 GitHub 添加了两个新的主机密钥,SSH-ECDSA 和 Ed25519。这两个都是基于椭圆曲线密码学的新标准。对 RSA 密钥也有新的要求(Rivest-Shamir-Adleman),将来会使用 SHA-2 签名来满足额外的安全要求。
此更改不会影响所有 GitHub 用户
但是,根据系统团队的说法,大多数用户不受此政策变化的影响。根据公告,只有通过 SSH 或 git:// 连接到仓库的用户才会受到影响。如果您的 Git 以 https:// 开头,它也不受影响。不久前,GitHub 还放弃了 Git Actions 密码认证。虽然 Git 协议的加密要求在技术上并不相关,但这两个变化是 GitHub 为保护用户数据所做的努力。
删除旧的键类型</ h3>
GitHub 团队表示,放弃旧的密钥类型和签名使用的一些算法的原因是,在原始技术下,更多的攻击和更新的攻击方法会增加安全问题......几十年前被认为是安全的,今天并不总是如此。 DSA 密钥的安全级别只有 80 位,但当前的标准是 128 位。 GitHub 的用户需要或多或少地了解这一点,但根据 GitHub 内部统计,仍有 0.3% 的 GitHub 请求使用 DSA。
去除不安全的签名算法</ h3>
目前,许多 SSH 客户端,包括 OpenSSH 7.2(rsa-sha2-256 和 rsa-sha2-512)和更新版本,都支持 SHA-2 和 RSA 组合。 RSA 密钥被认为更安全 (ssh-rsa),但通常在较旧的 Git 客户端中与较旧的签名算法(基于 SHA-1)结合使用。 SHA-1 签名算法非常脆弱,GitHub 强制新的 RSA 客户端使用 SHA-2 签名。用户目前仍然可以使用 SHA-1 签名,但在 2021 年 11 月 2 日之后,所有密钥都必须使用 SHA-2 签名。
这些更改何时生效? </ h3>
Git 团队分享了即将发生的变化的时间表。新的主机密钥 ECDSA 和 Ed25519 最早将于 2021 年 9 月 14 日通过 UpdateHostKeys
-Extension 提供。 11 月 2 日之后,使用 SHA-1 算法设置 RSA 密钥的选项将不再适用,届时您将需要使用 SHA-2。两个新的主机密钥 ECDSA 和 Ed25519 将从 11 月 16 日起全面发挥作用。同时,旧的 DSA 主机密钥也不再支持。
人气: 429
GitHub: 根据 Git 系统团队的说法,未加密的 Git 协议已成为过去。:等您坐沙发呢!