文章摘要
OpenSSH自9.0版本起默认支持抗量子计算攻击的密钥协商算法,如sntrup761x25519-sha512,并在10.0版本中将mlkem768x25519-sha256设为默认方案。为促进迁移至更强算法,OpenSSH 10.1将在选择非抗量子算法时默认发出警告。量子计算机能快速解决传统计算机难以处理的问题,可能破解现有加密算法,因此采用抗量子算法至关重要。
文章总结
OpenSSH:后量子密码学
OpenSSH支持多种被认为能够抵御量子计算机攻击的加密密钥协商算法,并建议所有SSH连接使用这些算法。
自2022年发布的OpenSSH 9.0版本起,OpenSSH默认提供了后量子密钥协商(KexAlgorithms),最初通过sntrup761x25519-sha512算法实现。最近,在OpenSSH 9.9版本中,新增了第二种后量子密钥协商算法mlkem768x25519-sha256,并在OpenSSH 10.0版本中将其设为默认方案。
为了鼓励用户迁移到这些更强的算法,OpenSSH 10.1版本将在用户选择非后量子密钥协商方案时发出警告。这些警告默认显示,但可以通过sshconfig(5)中的WarnWeakCrypto_选项禁用。
背景
量子计算机(QC)是一种能够以量子态编码信息进行计算的设备。这种设备可以快速解决现有“经典”计算机难以处理的特定问题。
量子计算机被认为能够有效解决支撑多种加密算法的数学问题。这意味着,足够强大的量子计算机(即“密码学相关”的量子计算机)将能够破解这些算法。受影响最大的是用于密钥协商和数字签名的加密技术,这两者在SSH中扮演着重要角色。
幸运的是,目前尚未发明出能够破解加密技术的量子计算机。根据该领域的进展速度,预计密码学相关的量子计算机将在5到20年内问世,许多观察者认为它们将在2030年代中期出现。
SSH连接的整个隐私性依赖于加密密钥协商。如果攻击者能够破解密钥协商,他们就能够解密并查看整个会话。攻击者无需实时进行此攻击;他们可以现在收集加密的SSH会话,然后在获得量子计算机后解密。这被称为“现在存储,稍后解密”攻击(也称为“现在收集,稍后解密”)。
OpenSSH支持后量子密码学,以保护用户流量免受此类攻击。
常见问题
我收到了来自ssh的警告,并指向此页面。我该怎么办? 如上所述,OpenSSH 10.1版本在连接使用不安全的量子计算机加密技术时会警告用户。如果您收到此类警告,意味着您连接的服务器未提供正在为SSH协议标准化的两种后量子密钥协商算法之一:mlkem768x25519-sha256和sntrup761x25519-sha512。理想解决方案是更新服务器以使用支持至少其中一种算法的SSH实现。OpenSSH 9.0及以上版本支持sntrup761x25519-sha512,9.9及以上版本支持mlkem768x25519-sha256。如果您的服务器已运行这些版本,请检查KexAlgorithms选项是否禁用了它们的使用。如果无法更新服务器且/或您愿意接受继续使用量子不安全加密技术的风险,可以通过sshconfig(5)中的WarnWeakCrypto_选项禁用警告。我们建议有选择性地执行此操作,例如:
Match host unsafe.example.com
WarnWeakCrypto no
量子计算机尚未出现,为什么要费这么大劲? 因为上述“现在存储,稍后解密”攻击。除非使用后量子密钥协商,否则今天发送的流量存在被解密的风险。
签名算法呢?您说它们也有风险。 是的,目前使用的大多数签名算法(包括RSA和ECDSA)都可以被量子计算机破解。然而,现有流量在这种情况下没有风险(即没有类似的“现在存储,稍后解密”)。签名算法的唯一紧迫性是在密码学相关的计算机成为现实之前确保所有经典签名密钥退役。OpenSSH将在未来添加对后量子签名算法的支持。
我不相信我们会有量子计算机。这是在浪费时间。 有些人认为将现有量子计算机扩展到能够解决密码学问题的程度实际上是不可能的。这是一种可能性。然而,大多数密码学相关量子计算机的障碍似乎是工程挑战,而不是基础物理问题。如果我们关于量子计算机实用性的判断是正确的,那么我们将保护大量用户数据。如果我们错了,我们所做的只是转向具有更强数学基础的加密算法。
这些后量子算法是新的,我们确定它们没有被破解吗? 我们也对此保持警惕。尽管后量子密钥协商算法在过去几年中受到了大量集中的密码学关注,但可能会发现新的攻击。为了防范这种情况,我们选择了具有良好安全裕度的后量子算法,这意味着即使它们比预期的弱,仍然可能足够强大以被认为适合用途。
此外,OpenSSH实现的所有后量子算法都是“混合”算法,将后量子算法与经典算法结合。例如,mlkem768x25519-sha256结合了后量子密钥协商方案ML-KEM和经典密钥协商算法ECDH/x25519,后者曾是OpenSSH的首选默认算法。这确保了即使后量子算法在未来被完全破解,组合的混合算法也不会比之前的最佳经典算法更差。
评论总结
评论主要围绕后量子密码学的应用和其必要性展开,观点多样且平衡。
后量子密码学的必要性
pilif 质疑当前后量子密码学采用的紧迫性,指出其密钥材料比非量子算法大得多,导致网络流量和CPU时间的巨大开销。
引用:
"the key material for any post quantum algorithm is much, much larger compared to non-quantum algorithms which leads to huge overheads in network traffic and of course CPU time."
"任何后量子算法的密钥材料都比非量子算法大得多,导致网络流量和CPU时间的巨大开销。"Havoc 则认为提前准备是合理的,尤其是当密钥交换相对简单时。
引用:
"Makes sense to get ahead of this. Especially when it’s a pretty trivial key swop."
"提前准备是合理的,尤其是当密钥交换相对简单时。"
混合算法的优势
- kibwen 强调OpenSSH采用的混合算法确保了安全性不会低于之前的经典算法,即使后量子算法在未来被破解。
引用:
"Using a hybrid scheme ensures that you're not actually losing any security compared to the pre-quantum implementation."
"使用混合方案确保你不会比之前的经典算法失去任何安全性。"
- kibwen 强调OpenSSH采用的混合算法确保了安全性不会低于之前的经典算法,即使后量子算法在未来被破解。
对未来应用的期待
deknos 表达了对后量子密钥在主机和认证中应用的期待。
引用:
"I am still asking myself when we get pq keys for host and authentication."
"我仍在思考何时能在主机和认证中使用后量子密钥。"rrrohman 则考虑将后量子密码学应用于其终端微博客/聊天应用。
引用:
"I was thinking about whether to move the Terminal-based microblogging / chat app I'm building into this direction."
"我在考虑是否将我开发的基于终端的微博客/聊天应用朝这个方向发展。"
对努力的认可
- rsatoran 对提前规划表示赞赏,认为只要未来的替代方案不使情况恶化,这种努力是有价值的。
引用:
"There no value in disparaging efforts like this as long as the alternatives that provide better security in the future don’t make things worse."
"只要未来的替代方案不使情况恶化,贬低这种努力是没有价值的。"
- rsatoran 对提前规划表示赞赏,认为只要未来的替代方案不使情况恶化,这种努力是有价值的。
总结:评论中对后量子密码学的必要性、混合算法的优势、未来应用的期待以及对提前规划的认可均有讨论,观点多样且平衡。