写点什么

GitHub 新增后量子 SSH 密钥交换算法,保障 Git 数据传输安全

作者:Craig Risi

  • 2025-10-12
    北京
  • 本文字数:1572 字

    阅读完需:约 5 分钟

大小:853.60K时长:04:51
GitHub新增后量子SSH密钥交换算法,保障Git数据传输安全

GitHub推出了一种后量子安全密钥交换混合算法,用于通过 SSH 访问 Git。新算法名为 sntrup761x25519-sha512(又名 sntrup761x25519-sha512@openssh.com),融合了精简版NTRU Prime(一种后量子加密方案)和经典曲线算法X25519。这一调整旨在防范未来量子计算机破译当前记录的 SSH 会话,从而保障 Git 数据安全。

 

本次更新会影响通过 SSH 端点连接的 Git 数据(不包括 HTTPS),并于 2025 年 9 月 17 日起在GitHub.com及非美国地区的 GitHub Enterprise Cloud 区域逐步推送。美国区域初期暂不包含在内,因该区域适用更严格的FIPS加密标准,而新算法尚未获得 FIPS 认证。GitHub Enterprise Server 3.19 版本也将包含新的后量子加密选项。

 

后量子加密(PQC)指的是一类旨在抵御量子计算机攻击的新加密算法。如今广泛使用的公钥算法,如RSA椭圆曲线加密(ECC),依赖于整数分解和离散对数等数学问题。足够强大的量子计算机使用像Shor’s这样的算法能很高效地解决它们。如果量子计算机达到实用规模,这些方案可能在几秒钟内被破解,安全通信的机密性和完整性受到威胁。

 

为应对这一风险,以美国国家标准与技术研究院(NIST)后量子密码标准化项目为代表的研究机构正致力于开发基于不同数学基础(如格问题基于代码的密码学多变量方程)的量子抗性算法。其中许多算法正被集成到实际的系统中,通常采用结合经典算法与后量子算法的混合模式,既能保障当前的互操作性,又能确保未来的安全性。包括 GitHub SSH 新方案在内的后量子加密技术的采用,标志着基础设施在抵御未来量子威胁方面迈出了关键的一步,同时保持了向后兼容性。

 

从用户的角度来看,大多数工作流都几乎没有什么变化。如果你的 SSH 客户端支持新算法,例如OpenSSH 9.0或更新的版本,而且你的配置没有覆盖默认设置,那么它将自动协商并默认优先选择新算法。不支持新算法的客户端将继续使用经典密钥交换算法而不受影响。GitHub 还提供了像 ssh -Q kex 这样的命令来列出支持的密钥交换算法,以及 ssh -v git@github.com exit | grep 'kex: algorithm:'命令用于查看连接期间选择的算法。

 

这一举措的动机是为了应对“现在存储、以后解密”的威胁——攻击者可能会收集当前加密的 SSH 流量,并在未来量子计算机变得足够强大后再解密。通过使用结合经典安全算法和后量子加密算法的混合方案,GitHub 希望可以确保,当量子计算使得当前算法变得脆弱时仍然能够保护 SSH 流量的安全。

 

GitHub 同时指出,尽管新算法比较新颖,实际应用场景还比较少,但其设计可以确保其安全性绝不逊于现有的经典密钥交换方法。展望未来,GitHub 计划密切关注后量子加密算法的发展,并扩大对其他量子安全密钥交换算法的支持,特别是那些符合 FIPS 要求的算法。

 

OpenSSH已经在向量子加密(PQC)算法迈进。自 9.0 版本(2022 年 4 月发布)以来,OpenSSH 就包含了 sntrup761x25519-sha512 算法用于密钥协商(混合了经典算法和 PQC)。最近,OpenSSH 9.9 增加了 mlkem768x25519-sha256,到 10.0 版本时,这已经成为密钥交换的默认方案。此举与 GitHub 提供后量子 SSH 密钥交换混合算法的举措如出一辙。

 

类似地,SSH.com 的Tectia Quantum-Safe Edition通过结合经典加密和Crystals/KyberFrodoKemNTRU等后量子算法,提供混合的、量子安全的 SSH 实现。它还兼容 FIPS 模式和经典 SSH 客户端/服务器模式。在提供前瞻性的后量子加密保护与兼容现有系统方面,他们的方法是类似的。

 

TinySSH(一款精简版 SSH 服务器)也已率先向混合 PQC 密钥交换领域迈开了步伐。它支持将 NTRU Prime 与ED25519曲线运算相结合的配置方案,在 SSH 密钥协商过程中增加了量子前向保密特性。尽管 TinySSH 的实现方案仍处于实验阶段,但作为一个例子,它可以说明专注的小型 SSH 工具同样有采用混合后量子密钥交换模型的趋势。

 

声明:本文为 InfoQ 翻译,未经许可禁止转载。

 

原文链接:https://www.infoq.com/news/2025/10/github-post-quantun-ssh-key/

2025-10-12 13:005940

评论

发布
暂无评论

Qt | 控件之QComboBox

YOLO.

qt 7月月更

读书笔记之《深入理解Java虚拟机:JVM高级特性与最佳实践》(下)

蔡农曰

Java 后端 JVM 后端技术 Java 开发

函数初认识-下

芒果酱

C语言 7月月更

【萌新解题】四数之和

面试官问

LeetCode

分布式事务的性能设计

穿过生命散发芬芳

分布式事务 7月月更

Mysql 温故知新系列「触发器详解」

安逸的咸鱼

MySQL 7月月更

uni-app进阶之自定义【day13】

恒山其若陋兮

7月月更

模块7(王者荣耀商城异地多活架构设计)

Geek_701557

Flutter 使用 AnimatedSwitcher 做场景切换

岛上码农

flutter ios 前端 安卓开发 7月月更

C++ Workflow 异步编程框架 - 性能优化上篇

1412

c++ GitHub 开源 异步编程 workflow

C++ Workflow异步调度框架 - 性能优化网络篇

1412

c++ 开源 workflow 异步调度 网络框架

长安链学习研究-存储分析wal机制

长安链

你学会如何将项目部署到Linux系统上了吗?要不我带你耍耍。

Java学术趴

7月月更

Zabbix 6.0 源码安装以及 HA 配置

耳东@Erdong

zabbix ha 7月月更 zabbix 6.0

如何在Linux中比较多个文件?这12个优秀工具了解一下!

wljslmz

Linux 7月月更 文件比较

ArkUI开发框架组件的生命周期详解

坚果

HarmonyOS OpenHarmony Open Harmony 7月月更

C#入门系列(二十二) -- 面向对象之多态

陈言必行

7月月更

实习是步入社会的一道坎

KEY.L

7月月更

群里的初级工程师求助说,要采集采招数据,必须给他安排上

梦想橡皮擦

Python 爬虫 7月月更

Setup的使用技巧

bo

Vue 前端 7月月更

模块1 作业

排序子序列与倒置字符串

未见花闻

7月月更

Linux tar打包

工程师日月

Linux tar 7月月更

Istio XDS配置生成实现

阿泽🧸

envoy 7月月更

Vue3 状态管理 Pinia 快速入门指南

程序员海军

Vue 状态管理 7月月更

现场可程式化逻辑闸阵列 FPGA

贾献华

7月月更

Okaleido或杀出NFT重围,你看好它吗?

BlockChain先知

Vscode 搭建 C / C++ 开发环境

攻城狮杰森

c c++ vscode 开发环境 7月月更

王者荣耀商城异地多活架构设计

地下地上

架构实战营

zookeeper-watcher的javaApi相关使用

zarmnosaj

7月月更

GitHub新增后量子SSH密钥交换算法,保障Git数据传输安全_安全_InfoQ精选文章