Synth Daily

将 IBM Quantum 后端替换为 /dev/urandom

一项关于使用 IBM 量子硬件破解17位椭圆曲线加密密钥的声明受到了检验。通过将实验中的量子计算后端替换为标准的随机数生成器(/dev/urandom),研究人员发现密钥破解的成功率与使用真实量子硬件时没有统计学差异。这表明,所谓的“量子攻击”实际上依赖于经典的随机猜测和验证,并没有展现出任何量子计算的优势,从而对该项目声称的量子破解成果的真实性提出了严重质疑。

实验:用随机数替代量子计算机

为了验证原始声明的真实性,研究人员对原项目代码进行了一个微小的修改:将负责与 IBM 量子后端交互的部分,替换为直接从操作系统获取随机数的代码(os.urandom)。

  • 保留了原始逻辑:除了数据来源被替换,其余所有部分——包括电路构建、验证器等——都保持原样。
  • 核心假设:如果量子计算机真的在破解过程中贡献了有意义的“信号”,那么用纯粹的随机噪声替换它,应该会导致破解失败。

然而,替换后破解并未失败。使用随机数生成器,在普通笔记本电脑上运行的破解程序,其成功率与原始报告中在 IBM 量子硬件上运行的结果在统计上无法区分。

结果:随机数与量子硬件的成功率无异

测试分为小规模挑战和旗舰挑战,结果显示随机数生成器完全可以复现量子硬件的成果。

  • 小规模挑战 (4-10位密钥):

    • 随机数生成器在每一次尝试中都成功恢复了密钥,结果与作者报告的量子硬件结果完全相同。
  • 旗舰挑战 (16-17位密钥):

    • 16位密钥:在5次尝试中,随机数生成器成功了4次。
    • 17位密钥 (获奖成果):在5次尝试中,随机数生成器成功了2次。这个17位的破解结果正是原项目获得1比特币奖励的成果。

没有量子计算机在恢复这个私钥的过程中受到伤害。

原理:为何随机猜测就能成功?

这种方法之所以有效,是因为原项目的破解流程本质上是一个“猜测与验证”模型。它产生大量随机候选密钥,然后逐一验证哪个是正确的。

当尝试次数(shots)远大于密钥可能性(n)时,成功的概率会变得非常高。原作者的破解流程恰好满足这一条件。

  • 概率公式:在 S 次随机猜测中,找到正确密钥的概率为 1 − (1 − 1/n)^S
  • 理论与实际相符:根据这个公式计算出的理论成功率,与使用 /dev/urandom 的实际测试结果高度吻合。
    • 16位密钥:理论成功率约为 46% (实际测试中 4/5 成功)。
    • 17位密钥:理论成功率约为 26% (实际测试中 2/5 成功)。

原作者甚至在自己的文档中也提到了这一点:

“当尝试次数远大于密钥空间时,仅凭随机噪声本身就有很高的概率恢复密钥。”

所有的小规模挑战都属于作者自己定义的“经典可破解”范畴。

结论:对“量子破解”声明的质疑

尽管原项目在量子计算工程方面(如电路设计和映射)的努力是真实且有价值的,但其核心的密码分析声明——即“通过量子计算机实现了密钥恢复”——是站不住脚的。

实验表明,这些所谓的量子破解成果,本质上是经典验证方法应用于均匀随机候选值的结果。这个过程完全不需要任何量子硬件,一台普通笔记本电脑就能复现。