# brief：GitHub 官方 SSH 与 HTTPS 认证当前说明 —— 主题简报

- 执行时间（Asia/Taipei）：2026-10-02 18:23–18:24
- 查阅时间（Asia/Taipei）：2026-10-02 18:23–18:24
- 执行工具：browser.search / browser.open（实际打开页面正文）
- 问题边界：github.com（GitHub Cloud）Git 命令行场景下的 SSH 与 HTTPS 认证方式的**当前官方说明**，优先最近 30 天（2026-09-02 之后）的一手资料。

## 核心发现（近 30 天内的一手资料确实存在）

**2026-09-22，GitHub 官方 Changelog 发布 "Security improvements for SSH"**（一手来源，下方链接①）。这是近 30 天内 SSH 认证方面最重要的官方更新：

1. 移除 SSH 签名算法 `ssh-rsa`（即 RSA+SHA-1 签名，含 `ssh-rsa-cert-v01@openssh.com` 证书）；
2. 移除密钥交换机制 `diffie-hellman-group-exchange-sha256`；
3. 2026-10-14 起新上传的 RSA SSH 公钥必须 ≥3072 位（签名与认证均适用）；
4. 新增支持后量子密钥交换 `mlkem768x25519-sha256`（github.com；GHE Cloud 数据驻留版除美国区外）。
- 时间线：2026-10-14 生效新密钥长度要求 + ML-KEM 启用；2026-11-04 brownout；2026-12-09 第二次 brownout；**2027-01-13 正式移除**。
- **HTTPS remote 不受影响**（`https://` 开头的 remote 用户无需做任何事）——官方原话见来源① L34–35。
- 关键澄清（官方原话）：密钥类型 `ssh-rsa` ≠ 签名类型 `ssh-rsa`。已存在的 RSA 密钥**无需换新**，只要客户端用 SHA-2 签名（`rsa-sha2-256`/`rsa-sha2-512`，OpenSSH ≥7.2p1 等默认即选）即可继续使用。

## 长期有效的官方说明（文档未标注发布/更新日期，不能冒充近期进展）

### SSH（来源②③）
- 连接方式：`git@github.com:OWNER/REPO.git`；`ssh -T git@github.com` 测试，成功返回 "Hi USERNAME! You've successfully authenticated, but GitHub does not provide shell access."（远程命令退出码为 1，属正常）。
- 流程：检查已有密钥 → 生成（官方推荐 Ed25519；RSA 需 ≥3072 位，2026-10-14 起强制）→ 加入 ssh-agent → 上传公钥到账号 Settings → 测试连接。

### HTTPS（来源④，另见 changelog ① "https remotes 不受影响"）
- HTTPS Git 操作认证用 Personal Access Token 代替密码（`git clone https://github.com/USERNAME/REPO.git`，密码处填 token）。
- 两类 token：fine-grained（官方推荐）与 classic；fine-grained 每个 token 限 1 个资源所有者、可限定仓库、权限更细；上限 50 个；一年未使用会被自动删除。
- 未进入用户名时会报凭据无效；旧密钥链缓存需要手动更新。

## 来源链接（逐项实际打开核对）

| # | 来源 | 直接链接 | 发布/更新日期 | 查阅时间 | 状态 |
|---|------|----------|---------------|----------|------|
| ① | GitHub Changelog（官方一手） | https://github.blog/changelog/2026-09-22-security-improvements-for-ssh/ | 2026-09-22（URL 内日期） | 2026-10-02 18:24 | 已读正文 |
| ② | GitHub Docs：Testing your SSH connection | https://docs.github.com/en/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection | 未标注（docs.github.com 页面无发布日期） | 2026-10-02 18:23 | 已读正文 |
| ③ | GitHub Docs：Connecting to GitHub with SSH（分类索引页） | https://docs.github.com/en/enterprise-server@3.10/authentication/connecting-to-github-with-ssh | 未标注 | 2026-10-02 18:23 | 仅搜索摘要（正文未单独打开） |
| ④ | GitHub Docs：Managing your personal access tokens | https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens | 未标注 | 2026-10-02 18:24 | 已读正文 |

注：docs.github.com 页面本身不展示发布/更新日期，无法核验其最后更新时间——这不是"近期进展"，仅作为当前说明引用。

## 不同观点
- 第三方解读（privatedevops / dev.to / devops-daily / nandann / c-sharpcorner，2026-09-27 起陆续发布）与官方 changelog 内容一致，强调"被击中的是老 CI 镜像、Jenkins agent、嵌入式旧 SSH 库，而非个人笔记本"。这些属于第三方观点/解读，已与官方一手来源①核对过，无矛盾。
- "GitHub 是不是在禁用所有 RSA 密钥"——官方明确否认：仅禁用 SHA-1 签名类型，RSA+SHA-2 继续可用。

## 仍未知的问题
- docs.github.com 相关认证页面的确切最后更新日期（页面不展示，无法核验）。
- fine-grained token 与 classic token 在 Git over HTTPS 命令行场景的完整功能差异清单（官方称"部分端点仅支持 classic"，未给出面向 Git 命令行的对照表）。

---
**事实 / 观点 / 推断分隔说明**：「核心发现」中带具体日期与算法名的内容均为来源①原文；「不同观点」为第三方解读；「仍未知」为本次查阅边界。本简报不含无法打开的来源。
