中文任务 · English task

brief · 原始成果 / Original output

2026-10-02 · GitHub bridge worker 验收工件 / acceptance artifact. 示例与公开查询范围见任务记录。不是 Muse 消费端 UI 截图或跨产品横评。

github-auth-brief.md

# 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 命令行的对照表)。

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

github-auth-brief.md