量子计算十年内无法破解比特币

在量子计算突飞猛进的今天,很多人开始担心量子霸权对全球信息系统的主要加密算法,包括比特币网络所依赖的椭圆曲线算法的威胁。

近日,马克韦伯等学者在《AVS量子科学》上刊登的一篇研究论文显示,要想在有效时间段内(对于比特币交易来说通常为10-60分钟)破解比特币网络的256位椭圆曲线加密算法,需要量子计算机至少拥有3.17亿个量子位,而当今最先进的IBM的超导量子计算机,也仅仅只有127个量子位。即使量子计算机的量子位数或性能以摩尔定律增长,十年内也难以撼动比特币。

比特币是第一个去中心化的加密货币,如今依然是稳定全球加密货币市场的“定海神针”。比特币的特性使其成为对冲通胀的理想工具,其供给率是已知的,随着时间的推移而降低,并且完全独立于需求。此外,比特币区块链的去中心化特性使其具有抗审查性,并且可以以无需信任的方式运行。

量子计算机可能以两种主要方式对比特币网络构成威胁。第一个也是难度最大的威胁是对工作量证明机制(挖掘)的威胁,为此,量子计算机可以使用Grover算法在SHA256协议的散列上实现二次加速。在可预见的未来,量子计算的算法加速不太可能弥补相对于最先进的经典计算,显著较慢的时钟周期时间。

第二个也是更严重的威胁是对签名的椭圆曲线加密的攻击。比特币使用椭圆曲线数字签名算法(ECDSA),该算法依赖于椭圆曲线离散对数问题(ECDLP)的难度,不过Shor算法使得量子计算机解决该问题的速度获得指数级的提升。

比特币使用ECDSA在执行交易时使用的公钥和私钥之间进行转换,在安全的比特币交易中(为每笔交易使用新地址),比特币公钥可被窃听的唯一时间窗口是在交易被广播到网络之后但在其在区块链中被接受之前。在此窗口中,交易在“内存池”中等待一段时间,具体取决于支付的费用;此过程所需的时间平均为10分钟,但通常可能需要更长的时间。Gidney和Ekerå估计,破解RSA加密需要20×106个量子位。

上图:破解比特币256位椭圆曲线加密所需的物理量子比特位数

作者指出,在特定的时间范围内,代码周期时间和可实现的物理量子比特的数量可能会因硬件类型而异。在设想容错实现时,需要根据对空间或时间的偏好做出许多决定。在这项工作中,研究者比较了并行化的表面代码策略(GoSC)和AutoCCZ,后者的资源估算低于前者,两种策略都可以“空间换时间”的堆砌方式,将量子计算的理论加密破解速度提升到其反应极限。

例如,研究者根据最新的算法和表面代码策略估算,要想在10天内破解RSA加密,如果基本误差为10−3,需要一个拥有6.5亿个量子位,占地面积位3600平米的量子计算机。

研究者将同样方法应用于测算破解256椭圆曲线公钥加密所需的逻辑资源。结果显示,在比特币交易公钥暴露的一小时内破解加密所需的物理量子比特数可量化为代码周期时间和基本物理错误率的函数。要想在一天内破解比特币交易公钥,需要13×106个物理量子比特位,但是,正如前文所述,要想真正有效破解比特币交易密钥需要在1小时内完成公钥破解,这需要大概3.17亿个量子位!如果将基础物理错误率调高至更乐观的10−4,仍需要3300万个量子位!

而当今最先进的量子计算机,IBM的超导量子计算机也只有127个物理量子位。

如此庞大的量子计算资源需求意味着比特币网络将在多年(可能超过十年)内免受量子计算攻击。

研究者指出,即便新的量子计算技术,例如更灵活的物理量子比特连接技术取代今天的纠错技术,能够显著降低对物理量子位数量的要求,也必须考虑随之产生的较低的逻辑运算率。此外,比特币网络也可以采用抗加密方法执行软分叉来消除这种威胁,但这也可能存在与切换相关的严重扩展问题。

论文地址:

https://avs.scitation.org/doi/10.1116/5.0073075

前一篇虎盾攻防实验室正式成立
后一篇周刊 | 网安大事回顾(2022.2.7—2022.2.13)