来源: https://arstechnica.com/security/2026/09/theres-a-new-way-to-break-rsa-thats-faster-than-anything-weve-seen-before/
此前,密码学家一直认为因式分解是破解RSA算法的唯一方法。现在情况不同了。
几十年来,世人皆知RSA密码系统的末日已至。一旦量子计算变得实用(据估计,这可能需要3到20年甚至更久),它所提供的基础安全性将不堪一击。一项新的研究揭示了一种利用经典计算将RSA当前安全级别降低到令人无法接受的低水平的新方法。
实际风险虽然有限,但仍然不容忽视。在学术级CPU集群上,针对已弃用的1024位密钥发起的攻击仅耗时数月,远低于目前对1024位密钥分解的预估耗时——后者所需的资源只有拥有庞大资源的国家或公司才能负担得起。广泛使用的RSA实现也是安全的。
然而,这项研究令密码学家们感到意外,因为它引入了签名伪造技术,这是一种无需因式分解即可破解RSA密钥的新方法。同样重要的是,这种新方法将所需的计算资源减少了几个数量级。
不再遥不可及
“如果这一结果经得起同行评审,那确实是一项概念上的突破,”密码学专家、Allurity创新主管卡斯滕·诺尔在接受采访时表示。“RSA的破解难度与分解大整数的难度相当,至少我们之前是这么认为的。但这位研究人员指出,实际上无需破解密钥就能破解RSA。”
加州大学圣地亚哥分校教授兼合著者纳迪亚·亨宁格进一步阐述道:
密码学家认为,计算有效RSA数字签名的唯一方法是先通过因式分解计算私钥,然后再用私钥计算签名。对于1024位RSA,这种方法被认为非常昂贵,但如果你拥有大型科技公司或美国国家安全局(NSA)的计算资源,或许可以做到——计算一个密钥就需要数千万美元的计算时间。而对于2048位RSA,这种方法则被认为完全无法实现。
Heninger 和其他研究人员设计的密钥伪造攻击现在对 1024 位 RSA 算法来说已经完全可行。即使对于 2048 位和 4096 位密钥,该方法也会将 RSA 的安全性降低到不可接受的水平。美国国家安全局、国家标准与技术研究院以及欧盟网络与信息安全局都要求任何密码系统至少提供 128 位或更高的安全级别,这意味着所需的运算次数必须超过2^ 128次。
伪造攻击将1024位、2048位和4096位密钥的安全级别分别降至2^65 2^90 20^119。 由于Heninger的团队完全手工编写代码,未使用人工智能或GPU进行伪造,因此这些安全级别可能还会进一步降低。该研究人员表示,这些工具“几乎肯定”会进一步降低安全级别。
这种攻击仅对采用盲签名实现的RSA有效。目前绝大多数RSA都采用PKCS或PSS填充,这种格式会在加密前向明文添加数据。它能防止密文具有确定性,并降低其遭受侧信道攻击和类似攻击的风险。然而,一些实际系统仍然使用盲签名,也就是所谓的教科书式RSA。Heninger指出,最著名的例子是Privacy Pass,这是一种允许用户在不泄露身份的情况下进行身份验证的协议。包括苹果和Cloudflare在内的许多公司都在使用Privacy Pass。
对 Privacy Pass 的攻击需要攻击者向 Cloudflare、Apple 或其他组织请求243个令牌。
亨宁格表示,这项要求“听起来很多,但实际上与Cloudflare公开宣称的每日网络流量量级相当。”大多数隐私通行证方案都会定期轮换密钥,这一措施可以大大降低攻击者成功的几率,但并不能完全消除这种可能性。
该技术实现了一种2007年发明的数字域筛算法的变体。这种“特殊”的数字域筛算法与“预言机”配合使用,预言机是某些加密协议的一种特性,能够对查询的输入给出答案。攻击者通过执行大量运算,可以收集到足够的信息来解密密文。(该技术似乎对采用PKCS或PSS填充的RSA算法构不成实际威胁,因为它们提供的是不同类型的预言机。)虽然分解一个1024位密钥估计需要2^ 80次运算和50万到100万个CPU核心年,但使用该筛算法伪造签名仅需(如前所述)2^ 65次运算和1380个CPU核心年。
论文作者和其他研究人员强调,至少目前来看,这种新的攻击对现实世界的威胁很小。然而,它确实大幅降低了RSA的安全性,而且这种降低方式是前所未见的。
近年来,密码学家们一直在努力设计不易受量子计算攻击的替代密码系统。这种新的攻击将进一步凸显彻底摒弃现有密码系统的紧迫性。论文作者在此处提供了一个更易于理解的解释。