如何针对 4096 位 RSA 解释此语句

信息安全 蛮力 RSA
2021-09-02 19:49:54

虽然我同意双倍大小的 RSA 密钥可能会带来比安全增益可能证明的更多问题,但我在理解这里提出的论点时遇到问题:https : //gnupg.org/faq/gnupg-faq.html#please_use_ecc

他们指出 RSA2048 对应于大约 112 位的安全性,而 RSA4096 对应于大约 140 位,并且他们指出 28 位的改进是“边际的”。但我理解这一点的方式是,从“密钥位”到“安全位”的转换是(估计)破解 2048 位 RSA 密钥需要大约 2 112次操作,破解4096 需要大约 2 140次操作位 RSA 密钥。因此,在我看来,这仍然意味着,如果他们通过将所有 CPU 能力投入其中来常规地在一秒钟内解决 RSA2048 问题,那么 RSA4096 密钥仍然需要数年时间。(或者:稍微不那么偏执,用“一分钟”代替“一秒”,“几年”变成“几个世纪”)。

为什么这种差异仍然被称为“边缘”?

也许答案是 112 或 140 位仅用于一些蛮力(即使天真的蛮力类似于 1024 与 2048 之二) - 但这并不意味着这些数字不足以作为开始描述复杂性/安全性的方法?

1个回答

引用的建议中的推理很糟糕:

美国国家标准与技术研究院 (NIST) 指出 RSA-2048 提供大约 112 位的安全性,而 RSA-3072 提供大约 128 位的安全性。关于 RSA-4096 的位置没有正式建议,但普遍的共识是它将在 140 位左右——比 RSA-2048 提高 28 位。这是一个微不足道的改进,真的不值得一提。

如果您需要比 RSA‑2048 提供的更高的安全性,则可以改用椭圆曲线加密技术,而不是继续使用 RSA。

如问题所述,即使是从 2048 位 RSA 到 4096 位 RSA 的 28 位(或 2 28倍)抗蛮力改进也很大(不是边际),足以支持数十年的蛮力计算进步,并且很可能在半个世纪内区分安全和不安全。

此外,引用的 28 位数字明显低于普遍共识,这更像是 36±4 位。据我们所知,用经典(非量子)计算机分解正确绘制的 RSA 密钥n的公共模数最好由GNFS努力完成

GNFS 渐近公式

虽然o (1) 项变为零的速度未知,但对计算工作量的预测通常会忽略o (1)。以 3072 位 RSA 作为基线,这告诉 4096 位 RSA 会更难 ≈18 位(不是 12 位),7680 位 RSA ≈64 位,15360 位 ≈131 位。这与引文中隐含引用的NIST SP 800-57 Pt 1中从 128 位安全级别开始的数字非常匹配:

NIST 可比强度表

如果有共识,那就是

  • 如果 4096 位 RSA 在未来 30 年内被破解,那将是由于因式分解算法的一些突破性进展,或者(和)可用于密码分析的量子计算机的出现(目前不存在,并且仍然是高度假设的)。
  • 没有令人信服的理由相信 ECC 不太容易受到这种假设性进展的影响;甚至有令人信服的论点,在相同的安全级别(并且越来越高的级别),ECC 将在 RSA 之前落入可用于密码分析的量子计算机。

反对 4096 位 RSA 的一个正确论点是,目前2048 位 RSA 已经足够安全,因此 4096 位 RSA 方式过大。但是使用 4096 位 RSA 的合理论据是量子计算机可用于密码分析的可能性;或/和,排斥那些考虑使用此类设备的人的需要可能会在密钥的使用寿命内实现。4096 位 RSA 的速度足够快,可以在涉及 2010 年后通用计算机的大多数 PGP/GPG 应用程序中使用;密钥和密文大小是可以承受的;那为什么不呢?

我的建议是 4096 位 RSA 是 PGP/GPG 中长期安全性的合理选择。它是安全的、可互操作的、更简单的,因此比 ECC 更好地审计,并且有一些论点认为它提供了更好的安全级别来对抗可用于密码分析的假设量子计算机。


注意:我使用可用于密码分析的量子计算机而不是量子计算机,因为执行绝热量子计算的设备(如在D-Wave 的 2000Q中)越来越多地被称为量子计算机,而我没有看到任何严肃的声称他们的技术可能导致与Intel/QuTech 17-Qbit 超导芯片相反,可用于密码分析的东西
另外:现在(2019 年)在某些模拟问题上,量子计算机无疑可以与经典计算机竞争(即使他们声称在该领域的量子霸权存在争议),但对于任何精确、深度、组合问题(如密码分析)仍然无用。