比特币诞生于2009年,但是它的价格从2010年的1美分,涨到现在的10000美元以上,八年时间里实现了100万倍的增长。比特币之所以那么火,因为来自区块链技术为其赋予的自由性、安全性、公平性,但是在不远的未来,这样的虚拟货币机制可能会被完全瓦解,很多人所信仰的安全、可靠、坚如磐石基础,可能会被迅速发展的量子计算所摧毁。
就在上周,中科院量子计算机研究取得突破性进展,中科院量子信息与量子科技创新研究院在超导量子计算方向发布11量子比特的云接入超导量子计算服务。世界范围来看,提供10个量子比特以上的云计算服务,这是继IBM后的第二家,这一进展让量子计算又一次成为焦点。
量子计算的迅速发展超出众人预期,有预测认为,十年内量子计算将会给区块链(包括比特币)带来毁灭性打击。那么,量子计算机会如何对区块链造成威胁?又会造成多大的威胁?区块链有没有对策抵御呢?
这就要从量子计算机和区块链的原理说起了。
一、量子计算机和区块链
1. 量子计算机
简单来说,量子计算机的运行单位是量子比特(qubit)而非经典计算机的比特(bit)。在经典计算机中,一个比特的值是确定的,可能是1,也可能是0。但是在量子计算机中,一个量子比特的值在观察之前是不确定的,这个值有可能是1,也有可能是0,还可以是1和0的叠加状态(superposition),即同时等于0和1。
这样的差别有多大呢?拿《火影忍者》举例的话,那就是佐助是经典计算机,鸣人是量子计算机,要找一个东西,佐助只能自己一个一个地方跑去找,也许要找一年。但是鸣人可以分出5个影分身,然后5个影分身再分出5个影分身,分身的分身再分身,所有分身都去不同的地方,瞬间找到东西,然后分身收回,只剩一个鸣人,取回东西,完成。
耶鲁大学的罗伯特·舍尔科普夫教授(Robert Schoelkopf)说:“当量子计算机拥有50个或者100个量子比特,而且这些量子比特能工作得很好,可以做完全纠错,那么你就可以用这个量子计算机做更复杂的计算工作了。”
量子计算机强大的计算能力带来的改变将是翻天覆地的,甚至将可能会影响国家安全。因此,中科院的潘建伟院士曾说:“我相信量子技术在21世纪的重要性可与上个世纪的‘曼哈顿计划’相比。”
2. 区块链和比特币挖矿
目前,全世界区块链技术最著名的应用就是比特币,中本聪就是比特币的创始人,接下来,我们就从比特币的概念出发来一窥区块链虚实。
现在,我们可以把区块链想象成一个账本,每一个区块中都有这个账本的一部分,这一部分账本的完整信息保存在这个区块的所有节点,这就是区块链技术的去中心化。每个区块都只有账本的一部分,但是这一部分会记录上一个区块的信息,一个区块连一个区块,形成区块链。
区块链的优势就在于它形成了一个信任机制。打个比方,你存了100元存到银行里,如果黑客黑了银行,把你的钱取走了,并且还把数据清除了,你手上就没有任何信息可以证明你在银行有100元的资产。但如果换成是区块链,那么就意味着银行所在的这个区块,每一个节点都有完整的账本记录,也就是说你家邻居和隔壁街大婶,甚至这个区的每一个居民都有账本能证明你在银行有100元的资产。
相比传统金融领域的中心化机制,区块链的去中心化使其更加可靠牢固,即使失去一些节点信息,系统依然可以继续正常运转,因此区块链被认为是非常安全可靠的技术。
那么比特币挖矿又是什么呢?
基于区块链往下说,中本聪在2009年提出了比特币的概念,他规定比特币网络中,每过十分钟将会产生50个比特币,当总量达到1050万时(2100万的一半),每10分钟产出25个比特币,当总量达到1575万时,每10分钟产生12.5个,而当总量达到2100万时,比特币将停止增长。也就是说比特币的总量从一开始就被定死在2100万个。
而比特币“挖矿”就是新比特币生成的方式,“挖矿”的人被称为“矿工”,矿工利用计算机来解决比特币网络中的数学问题。第一个解决问题的矿工公布答案,计入账本,同步计入所有节点,这就叫挖矿成功,获得比特币。
区块链的机制在量子计算概念发展之前是十分安全和可靠的,至少这么多年了,比特币没有被黑客黑过。但是在近年,量子计算迅速发展,超过之前所预想的速度,因此有业界人士预测在十年内,区块链的安全可靠将受到来自量子计算机的巨大威胁。
二、量子计算怎么对区块链产生威胁?
要理解量子计算对于区块链的威胁,首先得从比特币系统中的安全协议说起,比特币的协议涉及两种类型的密码学,即挖掘过程中使用的散列函数(哈希函数)和用于在区块链上提供数字签名的非对称密码术。
矿工们利用其计算能力,使用SHA-256哈希函数为每个区块计算一个随机数,这个过程所得到的结果非常容易被验证,但是很难被找到。而不对称密码术则用于授权比特币区块链上的交易,整个链上的每个用户都会被分配一个公钥和一个私钥,这就是公钥密码系统(Public Key)。公钥密码系统使用一对密钥来加密信息:可以广泛共享的公钥和只有密钥所有者才知道的私钥。任何人都可以使用预期的接收者公钥加密消息,但只有接收者才能使用他的私钥解密消息。
这样的非对称密码算法,核心是利用椭圆曲线数字签名算法(ECDSA)来生成密钥,给定一个私钥,很容易推导出相应的公钥,但是反过来计算困难,这就是现在比特币安全的原因。
而量子计算机可能会对这两道安全防线产生巨大威胁,未来量子计算机能很快破解哈希函数,从而垄断整个区块链。同时,也有预测指出,在更近的未来(或许是2027年)量子计算机的舒尔算法(Shor’s algorithm)能在十分钟(600秒)内破解密钥。
在比特币的世界里,用经典计算机挖矿的成功率和算力有一定关系,但算力大也并不意味着就一定能挖到矿(在你的算力没有超过全网络的50%的情况下)。挖矿和运气也有一定程度的关系,以走迷宫为例,一个人走得快,如果一条一条试的话,他肯定能最快到达迷宫终点,但是如果一个人虽然走得慢,却只用一次尝试就找到了通往迷宫终点的路呢?因此,走得快的人不一定稳赢走得慢的人,同理而言,算力大的矿工也不一定比算力小的矿工先挖到矿。
就像上面说的一样,挖矿其实就是解决数学问题,找出哈希函数加密的随机数,但是有可能会有不同的两个矿工组同时发现两个随机数,宣布不同的区块。这种情况下,比特币的规则是优先选取处理更多的那个区块,另一个区块则作废。举个例子,这就类似于在一个小区里有51个人说你在银行存了100元钱,而49个人说你存了50元。这种情况下,少数服从多数,银行认为你存了100元是真,存了50元是假。
从这个规则来进一步解释“51%攻击”的概念,在区块链中,如果一个矿工组有着整个网络中51%的算力,那他就能垄断整个区块链。因为他永远会比其他49%算力的矿工组更快地处理区块,他将得到之后产生的所有比特币。
关于量子计算机将威胁挖矿的问题,戴夫士•阿加沃尔(Divesh Aggarwal )和新加坡国立大学(NUS)的研究人员进行了深入研究,并在2017年10月就此发表了论文。他们认为,至少在未来十年内,使用ASIC挖矿的速度会比量子计算机快,不过十年后,量子计算机的挖矿速度会飞速增长;其次,面对量子计算机,区块链采用的非对称密码算法,即公钥密码系统会受到更大的威胁。
新加坡国立大学的研究人员指出,通过使用量子计算机,可以很容易地反过来运行用公钥推定私钥的过程,每个人的私钥都会被量子计算机轻易地推断出来。
量子计算机破解加密签名所需时间预估 单位:秒,预计2027年只需十分钟/600秒
同样的,我们可以把这个解密过程比喻为走迷宫,经典计算机能做的就是一个方向一个方向地走,直到走进死胡同,然后回头选择走别的路。然而,量子计算机是给你一个上帝视角,俯瞰整个迷宫,该走哪条路一目了然。
但是量子计算机需要达到一定的量子比特才能做到这样的程度,外媒Motherboard认为,一个4000量子比特的量子计算机或许就可以瓦解区块链,也就是说,哪个人或团队先做出并应用这样的量子计算机就可以解出并验证每一笔交易。未来会产生的还未流通的所有加密货币都会被其垄断,加密货币的信任系统将被瓦解。
三、量子计算机的发展还处于初级阶段
量子计算机的发展固然很快,未来也可能会给区块链带来巨大威胁,但是现在量子计算机还处于很初级的“玩具计算机”阶段。目前,全世界各巨头仅能做出10个左右达到高保真度量子比特的量子计算机,上周中科院发布的11量子比特的超导量子计算服务,是全世界第二家10量子比特以上的云计算服务。像这样的量子计算服务,还不能被拿来解决什么实际的计算问题,不过开发者已经可以用这样的云服务来学习量子计算机相关的编程知识了。
这样看起来,4000量子比特似乎真的离我们还很遥远?不过可能也并没有我们想象中那么遥远,因为基于近几年微软、谷歌、IBM都在量子计算领域取得一系列突破进展,《财富》杂志预测第一个实用的量子计算机将在10年内被造出来。
10年以内这个时间,到底是多久,很多公司都曾预测过,比如微软曾预测实用量子计算机将在2025年被造出来,谷歌也在2017年放话说将在五年内(也就是2022年左右)做出商业化的实用型量子计算机。
结语:有影响,但也有对策
量子计算机的快速发展已经是一个大趋势,终有一天将会威胁到区块链,但似乎区块链的很多专家们还没有警惕起来。据《财富》杂志报道,在2017年11月的Crypto 2017会议(顶尖的区块链密码技术人员会议 )上,全球“没有人担心”量子计算风险。一位专家表示,这将是一个“非常昂贵的操作”,可能需要“政府级”支出。
而另一位专家,完全嘲笑这个想法,他直摆手说,等到实用量子计算机出来的时候,公钥密码系统已经发展到不需要担心量子计算机的程度了,所以这个问题根本无关紧要。
但是这些专家们都有一个相同的观点,那就是量子计算的出现将危及所有现有加密方法(包括RSA令牌)的安全性。另外,量子计算机将影响金融和银行业的安全,不仅仅是区块链。
与此同时,也有相关机构对此极为重视,比如在2015年,美国国家安全局宣布正在研究量子密码系统,即可以抵御量子计算的加密系统。在学术界,也有密码学专家正在研究量子密码学,并且已经有了实施量子密码学的区块链项目。
目前,可能谁都无法准确预测实用量子计算机诞生的具体时间点,但是积极一点看的话,商用量子计算机的诞生可能比我们预想中要快,因为如今的科技发展是加速的,而不是匀速发展的。也许在2018年,量子计算机还在非常初期的阶段,实用量子计算机的发展进度才到5%,但是可能在2019年,这个进度就到了10%,而在2020年,进度或许能达到30%,这一切都是有可能的。
科技一直在发展,区块链和加密货币等新兴技术也许都还处在幼儿期,达到技术成熟还有很长一段路要走,开发人员需要小心在这个过程中会出现的一系列阻碍,这其中也包括量子计算。