量子计算机时代,比特币一文不值!?

简介:
630

量子计算和比特币

量子计算机是利用量子力学来进行某些计算的计算机,比传统的计算机要快得多。 一个足够大的量子计算机会给比特币带来一些麻烦,尽管它肯定不会是不可逾越的。

请注意,缩写QC可以代表量子计算机或量子密码学。

量子计算机攻击

量子计算机最危险的攻击是针对公钥密码学的。在传统的计算机上,大约需要2128个基本操作才能获得与比特币公钥相关的比特币私钥。这个数字如此之大,以至于任何使用传统计算机的攻击都是不切实际的。然而,众所周知,只需要1283个基本量子操作,量级计算机就能够使用Shor算法来打破比特币密钥。这可能需要一些时间,特别是因为第一台量子计算机可能非常慢,但它仍然是非常实用的。

对于对称密码学,量子攻击存在,但危险性较小。使用Grover算法,攻击对称算法所需的操作数量是平方根的。例如,查找散列到特定SHA-256散列的某些数据需要在传统计算机上执行2256个基本操作,但是需要2128个基本量子操作。这两个都是不切实际的大。另外,由于量子计算机在发明数十年之后会比传统计算机慢得多而且昂贵,所以针对对称密码的量子攻击似乎不太常见。比如说,比特币挖掘通常“攻击”(也就是挖掘)的是对称密码(SHA),挖掘可能永远不会被量子矿工控制,因为传统的矿工总是会更快,更便宜。

时间表/合理性

创建量子计算机是一项巨大的科学和工程挑战。 截至2016年,最大的通用量子计算机的量子比特不足10个(目前IBM已经发布了50个量子bit的芯片)。 攻击比特币密钥需要大约1500个量子比特。 人类目前没有必要的技术来创建足够大的量子计算机来攻击比特币密钥。 目前还不知道这项技术能够多快地推进; 然而,像ECRYPT II这样的密码学标准倾向于说比特币的256位ECDSA密钥是安全的,直到2030-2040年。

有一家名为D-Wave的公司,声称可以生产超过1000个量子位的量子计算机。 但是这个说法还没有被普遍接受,即使是真的,这也是一种不能攻击密码的专用量子计算机。

缓解措施

比特币已经有一些内置的量子抵抗能力。如果您只使用比特币地址一次(这一直是推荐的做法),那么您的ECDSA公钥只有在您花费比特币发送到每个地址时才会显示。量子计算机将需要能够在您的交易首次发送和进入一个块之间的短时间内破解您的密钥。在量子计算机变得如此之快之前,量子计算机首次打破比特币的关键之后,这可能会持续数十载。

所有常用的公钥算法都被量子计算机破解了。这包括RSA,DSA,DH和所有形式的椭圆曲线密码术。事实上,能够对抗量子攻击的公钥加密体系就不存在。目前,比特币专家倾向于支持基于Lamport签名的密码系统。 Lamport签名的计算速度非常快,但是它们有两个主要缺点:

签名会相当大,大约11 kB(比现在大169倍)。这对于比特币的整体可扩展性将会非常糟糕,因为带宽是比特币扩大的主要限制因素之一。在可扩展性方面的进展,例如隔离见证(11kB是证人的一部分)和闪电会有所帮助。

在创建每个密钥对时,您需要设置一些有限的最大次数,您可以用这个密钥进行签名。超过这个次数的签名是不安全的。增加签名限制将每个签名的大小增加到甚至超过11kB。使用比特币,你只能使用每个接收地址一次,所以我们也许可以用一个非常小的最大数量的签名(也许只有一个)规避破解。

目前还有一些正在进行的关于创建具有许多与当今公钥算法相同的属性的量子安全公钥算法的学术研究,但这是非常实验性的。目前还不知道它是否会最终成为可能。

一个新的公开密钥算法可以被添加到比特币作为softfork。从最终用户的角度来看,这将表现为创建新的地址类型,每个人都需要将他们的比特币发送到这个新的地址类型来实现量子安全。


原文发布时间为:2017.12.21
本文作者:岭南雲昊
本文来源:简书,如需转载请联系原作者。

目录
相关文章
|
存储 NoSQL 关系型数据库
什么是比特币和区块链
什么是比特币和区块链
247 0
|
分布式数据库 区块链 数据库
区块链and比特币
区块链and比特币
123 0
|
算法 安全 区块链
|
存储 算法 区块链
|
安全 算法 量子技术