Synth Daily

NSA与IETF:弱加密标准能被“买”下来吗?

这篇文章探讨了美国国家安全局(NSA)如何通过影响互联网工程任务组(IETF)这样的标准组织,来推行仅包含后量子密码学(PQ)的“纯”加密方案,而非更安全的“混合”方案(ECC+PQ)。作者认为这是一种蓄意削弱加密标准的行为,并通过其巨大的采购影响力来“购买”弱化的标准。文章进一步质疑 IETF 在面对大量反对意见时宣布达成“共识”的程序,认为其可能违反了美国法律对标准制定组织要求的“普遍同意”和正当程序。

双重加密:为什么需要“安全带”

在实践中,将后量子密码学(PQ)作为传统密码学之上的一个额外安全层来部署,是一种常规做法。这被称为“混合”或“双重”加密

  • 现实世界的应用: Google 和 Cloudflare 的实验(如 CECPQ1 和 CECPQ2)、SSH 实现以及 Cloudflare 观察到的大部分后量子连接,都采用了 ECC+PQ 的混合模式。
  • 核心原因: 就像开车时系安全带一样,混合加密提供了一道额外的保障。如果新的后量子算法被证明存在漏洞(即使是用今天的计算机也能破解),那么传统的椭圆曲线加密(ECC)层仍然能提供保护。

Google 在 2016 年就解释过:“后量子算法最终可能被证明是不安全的,在这种情况下,椭圆曲线算法仍将提供当今技术能提供的最佳安全性。”

这个担忧并非杞人忧天。我们已经见证了许多后量子提案被攻破,最著名的例子是 SIKE 算法的崩溃。当年数千万用户连接使用了包含 SIKE 的混合加密方案,正是因为同时使用了 ECC,才避免了用户数据在 SIKE 被破解后被立即泄露的灾难。

部署 ECC+PQ 是一个简单且符合常识的选择。ECC 软件已经无处不在,并没有哪个应用场景能负担得起 PQ 却负担不起增加 ECC 的微小成本。

NSA 的目标:推动更弱的“纯”加密标准

问题在于,NSA 及其合作伙伴 GCHQ 正在试图让标准组织认可一种更弱的方案:放弃 ECC,只使用 PQ

NSA 不断重复一些站不住脚的论点,声称这种削弱是件好事,这与他们当年推广留有后门的 Dual EC 算法时所用的说辞如出一辙。

从攻击者的角度思考:

  • NSA 的目标是“秘密地影响和/或公开地利用”商业系统,使其“变得可被利用”,同时让普通用户和其他对手觉得系统是安全的。
  • 其行动纲领之一就是“影响商业公钥技术的政策、标准和规范”。
  • 另一个目标是“塑造全球商业密码学市场,使其更容易被 NSA/CSS 正在开发的先进密码分析能力所攻破”。

对 NSA 而言,推动业界放弃双重加密的“安全带”,转向“纯”PQ 加密,是为其攻击行动创造又一个潜在的突破口。

购买标准:NSA 如何利用预算影响 IETF

NSA 可以利用其对美国庞大军事预算的控制权来“塑造市场”。具体到互联网标准组织 IETF,这一影响体现在两个关于 TLS 加密协议的草案上:

  • 混合草案(双重加密): 提议在 TLS 中使用 ECC+PQ 的混合密钥交换。该草案获得了共识并通过采纳,没有遇到反对。
  • 非混合草案(单一加密): 提议在 TLS 中只使用“纯”的 ML-KEM 算法,不带 ECC“安全带”。

当被问及动机时,该草案作者直言不讳地回应:

“FIPS / CNSA 2.0 合规指南……目前对‘混合解决方案’最多只是个‘可能’,而合规浏览器、服务器和服务的时间表是到 2033 年专门使用 FIPS 203 的 V 级(ML-KEM-1024)。我认为市场将需要纯 ML-KEM 密钥协商,而不是混合方案(以及随之而来的它是否被允许的疑问)。”

这里的“CNSA 2.0”是 NSA 的一份公开文件,规定了美国“国家安全系统”(NSS)必须使用的加密算法。NSA 官员和思科员工的言论都证实了这一点:市场需求来自一个愿意为此付费的巨大买家,而这个买家明确要求“纯”的、非混合的加密产品

一位思科员工写道:“有些我无法怀疑其密码学专业知识的人说,纯 ML-KEM 对他们来说是正确的权衡,更重要的是,对我的雇主来说,那是他们愿意购买的东西。因此,思科将实现它。”

弱标准存在的危害

有人可能会问:既然已经有了更强的混合加密标准,为什么还要担心一个更弱的标准存在?

想想 Dual EC 的例子。它不是唯一的随机数生成标准,但 NSA 通过贿赂 RSA 公司,使其在流行的加密库中将 Dual EC 设为默认选项。

一个被标准组织认可的弱标准,即使是可选的,也会带来巨大风险:

  • 为采购提供借口: 采购经理看到一个“标准”,就会认为它是安全的,并可能为了节省微不足道的成本(比如“50 皮秒”)而选择它。
  • 劣币驱逐良币: 公司为了不错失政府或大企业的订单,会争相实现这个被“购买”的弱标准。
  • 埋下安全隐患: 最终导致不安全的实践被广泛采用,直到多年后出现像 SIKE 那样的灾难性失败时,人们才追悔莫及。

IETF 的“共识”程序是否合法?

根据美国的反垄断法,标准制定组织必须遵循特定的程序 safeguards,以防止其过程被有经济利益的成员操纵。法律要求标准制定必须基于“共识”

美国政府的规定将“共识”定义为:

“普遍同意,但不一定是全体一致,并包括一个试图解决相关方反对意见的程序,只要所有评论都得到公平考虑,每个反对者都被告知其反对意见的处理结果及原因,并且共识机构成员在审查评论后有机会改变他们的投票。”

然而,在 IETF 对非混合草案的采纳过程中:

  • 缺乏普遍同意: 尽管有 22 人支持,但有 7 位专家明确表示反对。近四分之一的反对票显然不构成“普遍同意”。
  • 反对意见被无视: 反对者提出了多项有力的反对理由,包括安全风险、违反 IETF 自身政策、动机不纯以及增加软件复杂性等。
  • 支持者拒绝讨论: 大多数支持者只是简单地表示“我支持”,并未回应反对意见。当反对者试图展开讨论时,却遭到沉默。

尽管如此,工作组主席仍然宣布“达成共识”,其理由仅仅是“有足够的人愿意审查该草案”。

挑战与威胁

当作者质疑这一“共识”的合法性时,一位 IETF 的“安全领域主管”介入了讨论。他不仅错误地声称“绝大多数”人都支持,还威胁作者,称其行为是“滥用”和“操纵”,并暗示将采取措施阻止其“玩这些游戏”。

“你现在有这个权利……但到某个时候,你将被阻止继续玩这些游戏。”

这引发了一个严峻的问题:NSA 的代理人是否可以仅仅通过召集足够多的投票者,就能在 IETF 强行通过一个没有共识、充满争议的弱化标准,甚至不允许反对者发声?作者已就此“共识”声明提出了正式申诉。