一
前 言
对于所有非物理专业的毕业生而言,量子这个概念多半是模糊而又熟悉的,因为没有系统学习过量子力学,因此对什么是量子往往难以理解并说不清楚,但近年来量子这个词又不断高频出现在大众视野面前,从量子通信、量子卫星到量子计算···。
但真正第一次打动我并让我产生无限好奇,想静下来花功夫好好搞懂什么是量子、什么是量子计算机的是一段TED演讲,里面明确告知了我们量子计算机不是传统的计算机的升级加强版,而是像电灯与蜡烛那样,同样是发光,但具有本质的不同,不是同一个时代的产物!
量子计算机和传统计算机到底有多大的区别呢?用一个游戏演示:
假如我们和一台计算机一起玩翻硬币的游戏,游戏规则是计算机翻动一次,我们人翻动一次,然后计算机再翻动一次,如果最终正面朝上则我们赢,反之则是计算机赢,由于互相都看不到翻动情况,是翻动还是不翻动都由各自决定,因此结果最终是50%正朝上,双方胜率是各一半。如果计算机不是传统计算机,换成一台量子计算机,你能猜到结果是什么样吗?计算机几乎全胜(胜率超过97%,那3%的失败均是因为量子计算机的故障导致)!
那么,让我们仔细看看这个神奇的量子计算吧。
二
量子计算发展历史
谈到量子计算总会感觉神秘而陌生,2015谷歌宣布实现了9 个超导量子比特的高精度操纵,2017年IBM推出了20量子比特量子计算云服“IBM Q系统”,以及2018英特尔的49量子比特超导量子计算测试芯片“Tangle Lake”,中科院也将大量的研究资源投入到量子计算中…,可见量子计算是一个当前很重要的一个前沿科技领域。
1、为什么会诞生量子计算?
a)晶体管进入原子级尺寸极限
当前,我们熟悉的电子计算机性能已经十分强大了,为什么还需要量子计算机呢?过去传统计算机运算能力的飞速发展,离不开“摩尔定律”的作用,而随着计算机中的晶体管已经小到极限(原子级别)并且当前对电磁规律的掌控也已经几乎到了极限,这也代表了基于晶体管的电子计算机的能力遭遇了瓶颈。如果说电子计算机的算力是“汽油”级别的话,那么量子计算机的算力就是“核能”级别的。这两种算力根本不是一个级别,解决问题的能力也不再是简单地在原来的基础上画一条延长线。
量子计算与经典计算
b)对海量计算的加速需求
一直以来,我们对复杂大规模海量计算的需求从未停止过,半导体工业摩尔定律延续了40年,计算机性能一直保持指数级增长,但对算力的追求我们从未满足过,更不会停步!具体而言主要在以下几个方面:
1)、基因定位和太空探索
基因定位到太空探索,人类活动带来了越来越多的数据。比如探索未知太空时,通过卫星收集大量的图像和视频资料,产生海量数据。要精细搜索和分析如此多的数据,经过数以万计的统计,我们发现经典计算机并不擅长从海量图片中迅速完成识别任务。迫切需要可以比经典计算机更快地筛选海量数据的计算能力,协助我们分析并指出哪些图像和视频我们应该做进一步分析,哪些可以忽略。
比如,2019年4月人类拍摄到的第一张黑洞照片,拍摄的数据用现在最好的电子计算机也要算两年,才能把照片“冲洗”出来,当前计算机的计算能力限制了人类探索更大的宇宙。
2)、生物分子运动
下面是来自IBM Research的一幅精彩插图,该图展示了世界上最强大的超级计算机所能模拟出的最复杂的分子F团簇(F cluster)。由图可见(在图片左下方),该分子其实根本不复杂,如果我们想模拟更为复杂的分子的方法来寻找更好的药物疗法、研究生物,我们必须另辟蹊径,采取具有革命性的运算方法,提供足够的算力。
分子模拟问题(Chemistry:化学Nitrogenase enzyme…:参与氮气(N2)转化为铵根(NH4)过程的固氮酶Simulating this cluster…:模拟该簇已经是传统计算机运算能力的上限)。
3)、密码分析破译
现有密码算法安全性均是基于数学,比如RSA公钥密码算法基于大数质因数分解,破译它即使是使用未来速度最快的传统计算机也无法完成这样的复杂计算任务,原因是计算一个数的质因数的复杂度呈指数式增长。因此,破译现有密码算法迫切需要超强的大数分解、复杂路径搜索等计算能力,这背后的价值无以衡量。
量子计算基础原理
计算本质是--所有的计算系统其实都是在操控一个物理系统去完成计算。而计算,并不一定是特指去计算数字,凡是按照需求完成输入、运算和输出的都是计算。我们常常容易错误地认为电子计算机是在控制着一个一个的电子进行计算,相应的量子计算机就是控制更小的量子来进行计算。其实真实情况是,电子计算是利用的是经典电磁规律操控物理系统,而量子计算是利用量子力学规律操控物理系统。
1)经典比特和量子比特的区别
经典比特可以表示0和1两种不同的状态,就像是一个硬币的两面要么是0要么是1,并且经过逻辑门运算之后得出的结果是0或1的某一种情况,绝对不会出现既是了0又是1的情况。
经典比特
量子比特却不同。大学物理上谈到过薛定谔的猫,简单地可以认为是有一只量子猫,它可以同时既处于生又处于死的状态。也就是说其实薛定谔的这只猫就可以被看做一个量子比特。这个量子比特可以既是0 又是1,两种状态同时存在,这种状态在量子力学中称作“量子叠加态”。而且不只是能让0 和1 同时存在,还可以在初始化时控制量子比特叠加态中0,1之间的占比,可以是20%的0 和80% 的1,也可以是70% 的0 和30%的1。量子计算中就是在操控量子比特,量子计算过程就是量子比特叠加态的演化过程。
量子比特
2)量子比特提升信息容量
从计算的本质可见,提升计算能力的关键在于信息容量--即它代表了一个计算机的信息存储能力。经典比特提升信息容量空间的方法有两种,第一种方法是追加物理资源,利用资源交换计算能力。第二种方法是把元器件越做越小,用更小的芯片存放更多的比特数。但是到了今天,摩尔定律已经到达极限而且线性增长计算能力的方法无法应付按指数规模增长的问题。
量子比特增加信息容量的方法是采用了全新的编码方式。我们通过利用量子叠加态的特性,能够实现更加高级的编码方式,可以把这种编码方式叫做“量子二进制编码”。由于量子叠加性,每一个量子比特同一时刻可以处在两个不同的状态上,这个“同时”带来的好处十分明显。
举个浅显的例子,假如有两个人,一个人的10根手指是普通手指,另一个人的10根手指是量子手指。如果在他们面前只有一份苹果的话,那么不论是普通手指还是量子手指都没有差别,很容易表达出这份苹果的分量或数量来。但是如果面前是两份苹果呢?那就完全不同了,普通手指只能表示其中一份,如果还想表示另外一份,那么就必须增加资源。他就需要再叫一个人过来,用那个人的手指表示第二份苹果。这个时候量子手指就能显出它的优势来了,因为量子手指有叠加状态,所以通过编码后,它就可以同时既表示第一份苹果的个数,又同时表示第二份苹果的个数。最厉害的是,就算是有1024份苹果摆在面前,10根量子手指也能同时表示出来。经典手指的话就必须找1024个人一起来才能完整表示。n个量子比特的信息容量比n个经典比特大了2的n次方倍。目前探知整个宇宙原子的数量是2的300次方这么多,如果用量子比特表示的话,只需要300个就能数清宇宙所有的原子。
2、量子计算发展历程
1)量子力学发展史
1900年,德国物理学家普朗克提出量子概念,他假定光辐射与物质相互作用时其能量不是连续的,而是一份一份的,一份“能量”就是所谓量子。从此“量子论”就宣告诞生。
1905年,爱因斯坦引进光量子(光子)的概念,成功地解释了光电效应。其后,他又提出固体的振动能量也是量子化的,从而解释了低温下固体比热问题。
1925年,量子力学创始人之一的海森堡给出了量子力学的矩阵形式(矩阵力学),提出了“不确定性原理”(又称“海森堡不确定性原理”),其后还发布了一部量子力学领域的经典著作《量子论的物理学基础》。
1926年薛定谔提出薛定谔方程,为量子力学奠定了坚实的基础。薛定谔方程是量子力学中描述微观粒子运动状态的基本定律,它在量子力学中的地位大致相似于牛顿运动定律在经典力学中的地位。
除了以上这些科学家之外,还有很多科学家都为量子科学的研究发展做出了杰出的贡献,各种量子力学定律、特性都逐步展示在了人类面前,下一步如何将这项技术转化为社会生产力成为了后来者需要思考并解决的问题。
2)量子计算的发展史
虽然量子力学从20世纪初就逐步得到确立,但不同于经典力学的漫长应用过程,量子力学转化为真正的社会技术进程明显较快。
一)20世纪80年代
1981年,20世纪成果最具丰富多彩的科学家、诺贝尔奖获得者Richard Feynman在量子计算领域提出了两个问题,大大推动了量子计算的发展。
第一个问题:经典计算机是否能够有效的模拟量子系统?虽然在量子理论中,仍用微分方程来描述量子系统的演化,但变量的数目却远远多于经典物理系统。所以费曼针对这个问题的结论是:不可能。因为目前没有任何可行的方法,可以求解出这么多变量的微分方程。
第二个问题:如果我们放弃经典的图灵机模型,是否可以做得更好?他说如果我们拓展一下计算机的工作方式,不是使用逻辑门来建造计算机,而是一些其他的东西,比如分子和原子,如果我们使用这些量子材料,它们具有非常奇异的性质,尤其是波粒二象性。是否能建造出模拟量子系统的计算机?于是他提出了这个问题,并做了一些验证性实验。然后他推测,这个想法也许可以实现。由此,基于量子力学的新型计算机的研究被提上了科学发展的历程。此后,计算机科学家们一直在努力攻克这一艰巨挑战。
1985年,David Deutsch描述了通用量子计算机,使得量子计算机的构建更加清晰。
二)20世纪90年代
时间来到20世纪90年代,在这个年代里,量子计算机的算法发展有了巨大的进步。
1992年,Deutsch–Jozsa提出了D-J量子算法。
1994年,Peter Shor 提出了的Shor算法,这一算法在大数分解方面比目前已知的最有效的经典质因数分解算法快得多,因此对RSA加密构成极大威胁性,该算法带来的巨大影响力同时也进一步坚定了科学家们发展量子计算机的决心。
1996年,Lov Grover提出了Grover量子搜索算法,该算法被公认为继shor算法后的第二大算法。
1998年,Bernhard Omer提出量子计算编程语言,拉开了量子计算机可编程的序章。
三)21世纪
2009年,MIT三位科学家联合开发了一种求解线性系统的量子算法HHL。众所周知,线性系统是很多科学和工程领域的核心,由于HHL算法在特定条件下实现了相较于经典算法有指数级加速效果,从而未来能够在机器学习、数值计算等场景有优势体现。配合Grover算法在数据方面的加速,业界认为这将是未来量子机器学习、人工智等科技得以突破的关键性技术。
2013年,加拿大D-Wave系统公司发布了512Q的量子计算设备。
2016年,IBM发布了6量子比特的可编程的量子计算机。
2017年,本源量子发布了32位量子计算虚拟系统,同时还建立了以32位量子计算虚拟系统为基础的本源量子云计算平台。
2018年初,Intel和Google分别测试了49位和72位量子芯片。
随着时间的前进,人类在量子计算应用发展的道路上行进的速度也越来越快,量子计算全面爆发的时代或许很快就要到来。
2019年,我国中科大实现24位超导量子比特处理器,并进行了多体量子系统模拟。
2019年,清华大学利用单量子比特实现了精度为98.8%的量子生成对抗网络。
2019年1月,IBM展示了具有20位量子比特的超导量子计算机,并在9月将量子比特数量更新为53位。
2019年10月,Google公司在《自然》杂志报道实现了基于53位量子比特的超导处理器,在解决随机量子线路采样特定计算问题时,具有远超过现有超级计算机的处理能力。
2020年9月1日,IBM发布了65个量子比特的量子计算机,并计划于2023年发布1121量子比特的量子计算机…
三
量子计算机工作原理及实现模式
作为一个热门概念,我们经常听到量子计算又有新突破的消息。但很少人清楚,今天的量子计算技术究竟走到了哪一步?到底有多少种实现量子计算的方式?
国外科技巨头英特尔、微软、IBM、谷歌,国内巨头阿里巴巴、腾讯、百度、华为等都认为:量子计算的黄金时代即将到来!利用量子力学,为电脑运算带来指数级的巨幅加速即将实现!为此,大家都在向量子计算投入千万美元的研发资金。其实,他们是在对不同的量子计算技术下赌注--没有人知道采用哪种量子比特(qubit)能造出有实用价值的量子计算机。
1、Qbit的实现方法
量子计算的基础和核心是量子比特的实现,量子比特相比传统计算机比特更强大,是因为它利用了两个独特的量子现象:叠加(superposition)和纠缠(entanglement)。量子叠加使量子比特能够同时具有 0 和 1 的数值,可进行“同步计算”(simultaneous computation)。量子纠缠使分处两地的两个量子比特能共享量子态,创造出超叠加效应:每增加一个量子比特,运算性能就翻一倍。
任何两级量子力学系统都可以用作量子比特。如果多级系统具有可以有效地与其余状态解耦的两个状态(例如,非线性振荡器的基态和第一激发态),则也可以使用多级系统。
当前实现量子比特的几个典型物理方法有:
2、量子计算的实现方法
当前已知的量子计算主流实现方式方法有:超导、离子囚禁、量子退火、硅量子点、量子光学、拓扑量子计算等等几种。
主流量子计算实现方式与厂家
1)超导
超导量子计算是利用超低温“冻结”粒子的运动进而实现粒子状态的控制,量子比特有超导相位、超导磁通和超导电荷三种形式。超导量子计算的核心单元是约瑟夫森结,约瑟夫森结是一种“超导体—绝缘体—超导体”的三层结构。利用超导约瑟夫森结来观测宏观量子现象最早由 Leggett 于1985 年提出,随后研究人员在超导约瑟夫森结器件中陆续观测并实现了能级量子化、量子隧穿、量子态叠加、量子相干振荡等现象。
超导量子计算是目前进展最快最好的一种固体量子计算实现方法。由于超导量子电路的能级结构可通过外加电磁信号进行调控,电路的设计定制的可控性强。同时,得益于基于现有的成熟集成电路工艺, 超导量子电路具有多数量子物理体系难以比拟的可扩展性。但是在实现超导量子比特体系过程中,由于量子体系的不可封闭性,环境噪声、磁通型偏置噪声等大量不易操控的自由度导致耗散和退相干。此外,超导量子系统工作对物理环境要求极为苛刻(超低温)均是超导量子计算实现过程中不可避免的问题。
超导路线是谷歌的主选,也是目前业界最热的量子计算实现方向。谷歌超导量子计算开始于雇佣了加州大学圣芭芭拉分校(University of California, Santa Barbara)的超导量子比特专家 John Martinis,他研究过 D-Wave 的量子退火运行方式和缺陷。在 2014 年,谷歌把整个加州大学圣芭芭拉分校研究团队的全部十几个人都给招募了。这之后,John Martinis 团队宣布,他们已经建成了 9 量子比特的机器,是当时世界上可编程的量子计算机中最大的之一,而且他们一直试图扩大规模。为了避免大堆缠绕的电线,他们在 2D 平面结构上重建系统,系统铺设在一块晶圆上,所有控制电路都蚀刻在上面。
John Martinis 团队工程师开始是用三个超导量子比特来模拟氢分子的基态(ground state)能量,这展示在模拟简单的量子系统上量子计算机可以做到和传统计算机一样好。Martinis团队一年后造出 49 量子比特计算机,并于2019年造出了拥有53量子比特的“量子霸权”计算设备,并带动整个业界研究热点向超导量子计算方向聚焦。
2)离子囚禁
离子阱的技术原理是利用电荷与电磁场间的交互作用力牵制带电粒子体运动,并利用受限离子的基态和激发态组成的两个能级作为量子比特。尽管离子阱技术本身的发展可以追溯到 1980 年,但是利用离子阱技术实现量子计算是由奥地利奥地利因斯布鲁克大学(Innsbruck) Blatt 实验室的 Circa 和 Zoller 于 1995 年首次提出的。2003年,该实验室实现利用失谐激光束照射和激光冷却控制非门,同年该实验室第一次成功地利用离子阱技术实现了Deutsch-Jozsa 算法。离子阱量子计算具有量子比特品质高、相干时间较长以及量子比特的制备和读出效率较高三大特点。
然而,离子阱技术目前仍面临四大难点:一是离子阱暂时难以储存多条离子链;二是由于外加激光强度、频率及相位的不稳定,且离子对电场噪声敏感导致的消相干问题;三是可扩展性差;四是体积庞大,小型化尚需时日。目前开展离子阱量子计算技术研究的有 IonQ、NIST、Sandia National Lab、ETH。IonQ于2018年12月11日公布了两个新型离子阱量子计算机,具有 160 个存储量子比特,可实现 79 个量子比特长度上的单比特门操纵,11比特长度双比特操纵。保真度方面,单比特平均保真度 99%,双比特平均保真度 98%。
3)量子退火
2007年,加拿大初创公司 D-Wave Systems 宣布,他们使用16个超导量子比特成功制成量子计算机,一举震惊了世界。但是 D-Wave 的机器并没有使所有的量子比特发生纠缠,并且不能一个量子比特接着一个量子比特地编程(be programmed qubit by qubit),而是另辟蹊径,使用了一项名为“量子退火”(quantum annealing)的技术。该技术下,每个量子比特只和临近的量子比特纠缠并交互,这并没有建立起一组并行计算,而是一个整体上的、单一的量子状态。D-Wave 开发者希望把复杂的数学问题映射到该状态,然后使用量子效应寻找最小值。对于优化问题(比如提高空中交通效率的)来说,这是一项很有潜力的技术。
但批评者们指出:D-Wave 并没有攻克许多公认的量子计算难题,比如错误修正(error correction)。包括谷歌和洛克希德马丁在内的几家公司,购买并测试了 D-Wave 的设备,他们初步的共识是--D-Wave 做到了一些能称之为量子计算的东西,而且,在处理一些特定任务时,他们的设备确实比传统计算机要快。
4)半导体量子点
半导体量子点也是基于现有半导体工艺的一种量子计算物理实现方法。在平面半导体电子器件上制备出单电子晶体管,其电子服从量子力学运动规律,电子自旋的向上和向下组成的系统可作为一个量子比特。根据电子的泡利不相容原理,通过自旋和电荷之间的关联,可以通过普通的电子开关(门)对电子自旋进行控制,完成包括单量子比特操作、两量子比特操作及结果的读出等在内的对电子自旋编码的量子比特的各种操作。
半导体量子点体系具有良好的可扩展性,量子点的原子性质可以通过纳米加工技术和晶体生长技术来人为调控,比一般的量子体系更容易集成。此外,半导体量子点的制备可与现有半导体芯片工艺完全兼容,因而成熟的传统半导体工艺可为半导体量子点的技术实现与后续部署带来极大便利。但是半导体量子点体系受周围核自旋影响严重,面临退相干以及保真度不足两大挑战。
技术进展方面,荷兰代尔夫特大学的 Kouwenhoven 团队于2004年在半导体器件上首次实现了自旋量子比特的制备。3年后,代尔夫特大学的Vanderspyen团队在同一块半导体量子点器件上实现了量子比特制备、量子逻辑门操作、量子相干与测量等自旋量子计算的全部基本要素。2014年新南威尔士大学获得了退相干时间120微秒、保真度99.6%的自旋量子比特。2015年,英特尔宣布将向荷兰代尔夫特理工大学的量子技术研究项目QuTech 投资 5000 万美元。2017年,日本理化研究所在硅锗系统上获得了退相干时间达到20微秒、保真度超过 99.9%的量子比特。2018年中国科技大学郭光灿院士团队制备了半导体6量子点芯片,并实现了3量子比特的Toffoli 门操控,成为国际上首个在半导体量子点体系中实现的3量子比特逻辑门。
不同于离子或原子,量子点不需要激光来困住它。但是基于硅的量子比特研究大大落后于囚禁离子和超导量子技术。
5)量子光学
光学量子计算(OQC)是基于测量的量子计算方案,利用光子的偏振或其他自由度作为量子比特。光子是一种十分理想的量子比特的载体,以常用的量子光学手段就可实现量子操作。光学量子计算根据其物理架构分为两种:KLM 光学量子计算以及团簇态光学量子计算。KLM 光学量子计算仅使用单光子、线性光学和测量,允许通过和可扩展光学量子计算,目前已经实现了光子-光子之间的两量子位的逻辑操作。团簇态光学量子计算由一个高度纠缠的成为团簇态的多粒子态组成,与单量子测量和前馈相结合,实现可扩展的通用量子计算,具有降低整体复杂性、放宽测量过程的物理要求,以及更有效利用物理资源等技术优势。
由于光子与环境相互作用很小,光学量子计算具有相干时间长、操控手段简单、与光纤和集成光学技术相兼容,以及简单的资源可扩展性等优点。但也正是由于光子之间相互作用微乎其微,导致两量子比特之间的逻辑门操作难以实现。技术进展方面,目前中国研究团队已经在实验室产生了同时具备高系统效率(33%)、高纯度(97%)和高全同性(90%)的高品质单光子源和基于参量下转换的10光子纠缠。在此基础上,光学量子计算的基本操作(如概率性的控制逻辑门)和各种算法(大数分解算法、数据库搜索、线性方程组求解算法、机器学习、波色取样)的简单演示验证也已经实现。在光学量子计算可集成研究方面,麻省理工学院、牛津大学、布里斯托大学、维也纳大学、昆士兰大学等小组基于硅光子学、铌酸锂波导、二氧化硅波导等平台,通过刻蚀或激光直写等方式产生10个通道左右的量子线路用于少数光子数的原理性研究。单光子探测方面,美国国家技术标准局、荷兰代尔夫特大学等机构已经可以生产同时具备高探测效率(93%)、高重复频率(150MHz)的超导纳米线单光子探测器。
6)拓扑量子
拓扑量子计算建立在全新的计算思路之上,应用任意子的交换相位、交换过程的“编辫”程序实现量子计算的信息处理。拓扑学研究几何形象在几何元素的连续变形下保持不变的性质。如果构成量子比特的元素是拓扑不变的,基于这些量子比特的运算结果也具有拓扑不变性。由此构造的量子计算对环境干扰、噪音、杂质有很大的抵抗能力。但拓扑量子计算尚停留在理论层面,实际上还未把这些理论付诸成器件化的现实。
拓扑量子是微软的选择路线,它基于非阿贝尔任意子(nonabelian anyons)的拓扑量子比特(topological qubits)。这些根本就不是物体,它们是沿着不同物质边缘游动的准粒子(quasiparticles)。量子态由不同交叉路线(braiding Paths)来表现。因为交叉路线的形状导致了量子叠加,它们会受到拓扑保护(topologically protected)而不至于崩溃,这类似于打结的鞋带不会散开一样。.
理论上拓扑量子计算机不需要在错误修正上花费那么多量子比特。早在2005年,微软带领的一支研究团队就提出了一种在半导体-超导体混合结构中建造拓扑保护量子比特的方法。微软已经投资了数个团队进行尝试,他们近期的论文还有贝尔实验室的一项独立研究都展示了关键的任意子以电路中电流的模式进行移动的“征兆“,这已经很接近展示真正的量子比特了。科学家Preskill 说:“我认为在一两年内,我们就可以看到结果--拓扑量子比特确实存在”。
3、量子计算实现中面临的主要问题
量子计算理论已经相对成熟,但实现中面临着众多棘手难题,甚至许多难题眼下还处于无解的状态,最突出的问题主要有以下几个方面:
1)量子比特本身不能抑制噪声
传统计算机和量子计算机之间的主要区别之一是它如何处理系统中很小的、不需要的变化或噪声。由于传统比特位是1或0,因此即使该值略有偏离(系统中存在一些噪声),对该信号进行的运算也很容易消除该噪声。实际上,当今的构建计算机的传统逻辑门只能在比特位上操作,具有很大的噪声余量--它们可以抑制输入中的大变化并仍然产生无噪声的输出,但是量子比特容错率却极低。
因为量子位可以是一和零的任何组合,这当中涉及到相位。所以量子位和量子门不能轻易地抑制物理电路中出现的小错误(噪声)。这就使得在创建所需的量子运算时一旦出现小错误,或者耦合到物理系统中存在任何杂散信号,最终都会导致在计算中出现错误的输出。因此,对于在物理量子位上运行的系统来说,最重要的设计参数之一就是错误率。低错误率目前很难实现,即使在2018年底,具有5个或更多量子比特的系统上,量子比特操作的错误率也超过百分之几。虽然在比特位较小的系统中已经证明了可以实现更低的错误率,但是这种改进的操作保真度需要转移到较大的量子比特系统上,量子计算才能成功。
2)无误差量子计算需要量子错误校正
既然降噪难度这么大,那可不可以发展一个纠错方式呢?尽管量子位操作对噪声敏感,但是我们可以在物理量子计算机上运行量子错误校正(QEC)算法,以模拟无噪声或“完全错误校正”的量子计算机。如果没有QEC,复杂的量子程序(例如实现Shor算法的程序)不太可能在量子计算机上正确运行。但是,目前发现QEC在模拟和执行方面都会产生大量损耗。尽管QEC对于将来创建无误差的量子计算机至关重要,但它们需要的资源过于庞大,无法在短期内使用。这就是说,在短期内量子计算机的计算还是会出错。
3)大数据输入不能被高效载入至量子计算机
虽然量子计算机可以使用少量的量子位来表示大量的数据,但目前尚没有一种将大量经典数据快速转换为量子状态的方法(除非可以生成数据)。对于需要大量输入的问题,创建输入量子状态所需的时间通常要占据计算时间,并大大降低量子优势。
4)量子算法设计难度较大
测量量子计算机的状态会将大的量子状态“坍缩”成单个经典结果。这意味着一个人只能从一台量子计算机中提取与从相同大小的经典计算机中可以提取的数据数量一样。为了获得量子计算机的好处,量子算法必须独特地利用诸如干扰和纠缠之类的量子特征才能获得最终的经典结果。因此,要实现量子加速,就需要全新的算法设计原理和非常聪明的算法设计,量子算法的开发成为关键。
5)量子计算机将需要一个全新的软件栈
与所有计算机一样,构建有用的设备比仅创建硬件要复杂得多,需要工具来创建和调试特定于量子计算机的软件。由于量子程序与传统计算机程序不同,因此需要进行研究和开发以进一步开发软件工具堆栈。由于这些软件工具驱动硬件,因此硬件和软件工具链的同时开发才能缩短量子计算机的开发时间。目前量子计算机软件设计的思路依然是参考了经典计算机设计中使用的方法,这可能与量子计算机硬件并不匹配。
6)量子计算机的中间态无法被直接测量
调试量子硬件和软件的方法至关重要。当前用于经典计算机的调试方法依赖于内存和中间计算机状态的读取。在量子计算机中,这都是不可能的。按照不可克隆(no-cloning)定理,量子状态不可以像传统逻辑门扇出(fanout)那样简单复制以供以后检查,并且对量子状态的任何测量都会将其坍缩为一组经典比特,从而使计算停止。新的调试方法对于大规模量子计算机的开发至关重要。
7)从理论到工程跨域实现困难
通常来讲,通用量子计算做到更多比特主要是硬件上的困难,理论上像大家常说的那样,并没有特别基础的难题需要解决(当然理论方面也有很多开放性的问题存在)。
工程实现上问题存在两部分,一个是量子纠缠到更多比特级别,另一个是量子计算到更多级别。
就前者来说,量子纠缠现在最多的比如像超导比特有谷歌的53比特,数量越往上难度指数级增加,毕竟如果一个比特坍塌是e^-gamma那在没有校正的情况下N个就是e^-NGamma,针对不同的硬件有不同的噪声模型。
对于后者来说,量子计算做到更多比特,这里指的是通用的甚至容错的量子计算,而不是特指像退火那种。问题或许可以拆成几部分,一个是怎么做到这么多比特,一个是怎么保证比特性质,不同系统有不同的答案,总体来说像超导比特/离子阱在这方面现在是走在前列的,其他的如原子阵列(很多方面跟离子阱蛮像的……)、光学平台、量子点、半导体缺陷等也各有千秋。
以超导比特为例,如何做到这么多比特?去年谷歌公司用53个比特实现了所谓的量子霸权,即在采样问题上对经典的超越。很多人会说从50+到更高没有什么基础性的困难,更多的是工程上的问题,但这“工程上的问题”已经足够艰巨了: 比特数目多了用什么来布局?稀释制冷机空间够不够?比特之间的相互干扰怎么解决?由远至近的交互怎么控制?还有单独控制需要的任意波形发生器、合成器、放大器、交换机之类的东西就够放满一屋子了…,这些还只是谈到怎么造出这么多比特而没有谈论比特的性质如何。
而说到比特的性质,最值得关心的就是退相干。T1(Relaxation)/T2(Dephasing)这些关系到电路深度、关系到可以增加多少运算。T1/T2目前最高的大概是几百us,而尺寸增加几十个的话一般T1/T2也就几十us。像目前IBM Quantum Experience online的单比特性能最好是T1/T2大约150us。超导系统相干性质更好的其实是空穴模型,把逻辑比特给编码到空穴的玻色子态上,然后利用一些对称性来做量级纠错(QEC),进而实现其相干时间的延长(比如从~150us到300+us),到达所谓的临界点。但问题是做几个逻辑比特还好,但是3D腔这种东西太大了怎么增加尺寸?不大的话噪音又大且性质又不好。
IBM
即使有了尺寸增大且控制还好,要实现容错计算的话,对保真度要求很高,毕竟不想在纠错的过程中又出错。目前别说容错量子计算机了,事实上连一个容错的逻辑比特都还很难实现。超导方面单比特的控制做到99.9%没问题,两比特门的话可以做到99%,但是再往上实在太困难了(多比特的装置)。
还有一个挑战是理论和实践双方怎么更好地合作的问题,双方隔阂比较大,关注的问题不同,也许某个方向上理论上的进展并不适合实践方的工程实现,双方目标不同、努力的方向也存在一定分歧。
综上,挑战和困难太多以至于很多人不看好,但是如果真能有一天做到很多比特,那意义极大。这种诱惑就像要你一个人穿越一片沙漠,穿过去是几辈子花不完的财富,穿不过去也能积累经验探索未知,因此激励着大家疯狂投入参与其中。
四
量子计算机给密码算法带来的威胁
量子计算这种超大规模的并行计算能力,对于处理日常任务其实没什么用。没有人认为量子计算机会颠覆文字处理和 email等日常应用,但对于需要同时探索无数条路径的算法,还有对海量数据库的搜索,量子计算能极大地提高速度。它能被用来寻找新的化学催化剂、对加密数据的海量数字作因子分解(factoring),或许还能模拟黑洞和其他物理现象。
虽然量子计算的理论在 1980 年代就开始出现,直到 1995 年才有了第一次实验。贝尔实验室的数学家 Peter Shor,向人们展示量子计算机可以对大量数字快速因子分解—一旦实现,这会使现代密码学的公钥过时。Peter Shor 和其他人还展示了使用临近量子比特修正错误,让脆弱的量子比特永远保持稳定状态在理论上是可能的。
1、Shor算法
1994年,美国麻省理工学院的彼得•肖尔(Peter Shor)发表了一篇论文,题为《量子计算机上的质因数分解和离散对数的多项式时间算法》(Polynomial Time Algorithms for Prime Factorisation and Discrete Logarithms on a Quantum Computer)。这篇论文被认为是一剂催化剂,催生了一场延续至今的建造量子计算机的竞赛。本质上说,通过使用量子并行处理,肖尔算法(Shor’s Algorithm)使量子计算机上的大整数的因式分解比在经典计算中使用已知最快的算法还要快出很多。更精确地说,肖尔算法差不多可以在多项式时间内因式分解N比特整数,与此相比,在经典计算中最有效的算法(称作广义数域筛法,缩写为GNFS)则差不多需要指数级的更长时间。
Shor算法的效率归因于量子傅立叶变换的效率,以及通过重复平方的模幂运算。如果具有足够数量的量子位的量子计算机可以在解决了量子噪声和其他量子退相干现象的情况下运行,那么Shor的算法可以用于打破公钥加密方案,例如广泛使用的RSA。
在肖尔算法使用量子计算的性质之前,来自经典数论的一些结果已经被用来恰当地处理这个问题。肖尔算法的特别之处在于,它使用模运算中的周期性的概念--对我们要因式分解的数N进行模运算,一个数x必须被自身乘多少次a才能得出答案是(也就是xamod N =1),找到这个周期就使我们能对N进行分解。
确定这个函数的周期正是量子计算的性质发挥作用的地方,特别是准确地引入量子并行处理这一概念。我们使用两个量子存储寄存器--第一个被放置在所有a(a的范围是从0到q,其中q是2的指数倍,并且满足N2< q < 2N2)的可能值的叠加态上。注意,这个寄存器必须有足够的量子比特来表示这个大小的整数,比如说,如果N是一个2048比特数(RSA模数的典型大小),那我们就需要大约4000个量子比特。在第一个寄存器中,会用到以N为模的函数xa,而结果会被存储在第二个寄存器中(在这一步中,我们利用了量子并行处理的性质)。
接下来,第二个寄存器会被测量,这意味着第二个寄存器从叠加态塌缩到某个值k。第一个寄存器也随之塌缩,和第二个寄存器保持一致--但是对a的每个值,进行相等的叠加使得xamod N = k。最终,一个叫作离散傅里叶变换的运算被应用到第一个寄存器上,得到的m就有很大可能性是这个周期的倍数。一旦得到m,在经典计算机上使用一些相关的简单数论就可以先找到这个周期,然后是N的因式分解。
简而言之,Shor算法由两步组成,该算法的第一步是将大数分解问题转化为寻找函数周期的问题,并且可以经典地实现。第二步是使用量子傅立叶变换找到周期,并负责量子加速。
2、Grover算法
1996 年,同在麻省理工贝尔实验室的格罗弗提出了格罗弗搜索算法(Grover’s Algorithm),格罗弗算法的实现基于概率幅度放大。与其他的量子算法相同,格罗弗算法亦是概率性的。该算法为数据库搜索算法,数据库相当于是一张存有未知函数的所有输出值的表,以对应的输入值为索引。
量子计算的格罗弗搜索算法远超出了经典计算机的数据搜索速度,但不像其他的量子算法可能会比相应的经典算法有指数级的加快,格罗弗算法对许多计算问题的传统算法呈现平方加速。即便如此,加速程度也相当可观!对格罗弗算法举一个例子来理解如下:假如我们有10000个盒子,并且随机地把一个物品藏在其中一个盒子里。如果我们让某个人去找到这个物品,那么他们将最多不得不打开所有10000个盒子才能确定找到这个物品(这个物品也许正好被藏在他们决定最后一个打开的盒子里)。平均来说,我们可能不得不打开盒子数量的一半才能找到被藏起来的物品,也就是找5000次。然而,使用格罗弗算法,我们实际上可以在0.758次运算中就找到结果。在这个例子中,这意味着我们找75.8次(0.758 * )就可以找到这个物品!
这种算法的力量与穷举搜索攻击有关。正如我们可以回想起来的,穷举搜索攻击就是检查每一个密钥的单值来看看那个密钥是否解码了一条信息。使用格罗弗算法,我们可以极大地加速穷举搜索攻击的过程——例如对于一个长度为128比特的密钥来说,使用格罗弗算法的话,一次穷举搜索攻击可以在 = 264次内完成。同样,一台可以运行格罗弗算法的量子计算机将意味着某些标准的密钥长度需要增加,特别是AES 128比特不再被认为是安全的,而是需要AES 256比特的密钥。
一个很自然的问题是,我们距离一台有能力大规模运行肖尔算法或者格罗弗算法的量子计算机有多远呢?目前,在建最强大的通用量子计算机的数量级在100量子比特以内。而正如我们在讨论肖尔算法时看到的那样,一台量子计算机大概需要4000个逻辑量子比特才能因式分解一个2048比特的RSA数。
五
密码界面对威胁的应对
面对量子计算突飞猛进的威胁,密码学界以美国国家标准与技术研究院(NIST)为首,早早就开始了应对布局,全面开展了一种公开的程序挑选一个或多个公钥密码算法的进程。这些新的公钥密码标准将为数字签名、公钥密码以及密钥建立算法规定一个或多个另外的算法。新标准将对FIPS 186-4(数字签名标准(DSS))以及特别出版物800-56A版本3(使用离散对数密码的双序密钥建立方案建议)和SP 800-56B(使用整数因子分解的双序密钥建立方案建议)进行扩充。NIST的意图是,在可以预见的未来,包括量子计算机出现之后,这些算法将能够保护美国政府的敏感信息,这个竞赛过程称为NIST PQC(后量子密码)标准化进程。
PQC标准化进程是NIST对量子计算机技术发展的响应。量子计算机利用了量子力学现象来求解困难的或传统计算机难以处理的难题。如果大容量规模的量子计算机被建造出来了,它们将能够破解NIST目前标准化的这些公钥密码系统,包括数字签名和密钥建立方案。量子计算机对对称密码系统也有一定的影响,但其影响并不强烈。后量子密码的目标,是发展对量子计算机和经典计算机都安全的密码系统,并且能够与现有协议和网络互操作。
在启动PQC标准化进程之前,NIST于2015年4月就成立了一个工作组,讨论与后量子密码以及未来可能的标准化相关的问题。一年之后,NIST发布了后量子密码报告NISTIR,共享了NIST对量子计算和后量子密码的状态的理解,概括了NIST推进该领域的初始计划。NIST于PQCrypto 2016会议上以报告形式宣布了PQC标准化进程的初步细节。
2016年8月,NIST以一个联邦注册公告的方式,公布了对后量子密码的公开注释建议的要求和评估判断准则。此后,又基于公开的反馈意见,对这些要求和评估判断准则进行了更新,并且稍后将它们包含在2016年12月20日的第二次联邦注册公告(FRN-Dec16)内。该公告正式征集关于后量子密码算法的公开提案,标志着NIST开始了PQC标准化的进程。
候选提案的最后期限预定在2017年11月30日,在那个时日,NIST接收到了82个提案包。这是世界范围内密码社区(在1998年为高级加密标准竞赛提出过21个候选算法,在2008年为安全哈希算法3(SHA-3)竞赛提交过64个文件包)作出的强烈反应,NIST于2017年12月20日宣布接受了满足提交要求和最小接受判断准则的69个第一轮候选算法。这69个提案包含了20个数字签名方案和49个公钥密码(PKE)或密钥封装机制(KEM)。第一轮候选算法的提交包都被在线张贴在https://www.nist.gov/pqcrypto网页上,征求公开的评论和注释。
NIST于2018年4月11-13日在佛罗里达Lauderdale组织了第一次PQC标准化会议,其研究成果收录在PQCrypto 2018中。获得接受的第一轮候选算法的提交者被邀请到会上介绍他们的算法。NIST还讨论了其缩小候选算法池、聚焦整个社区的关注点以及启动第二轮标准化进程的计划。在第一轮竞赛中,NIST接收到密码社区的大量反馈。基于对第一轮候选算法的公开反馈和内部评估,NIST于2019年1月30日宣布挑选出26个算法作为第二轮候选算法,进入该标准化进程的第二阶段。2019年7月20日宣布挑选出其中的7个算法作为第三轮最终候选算法PK,另外8个算法作为后补。
最终入选7算法如下:
1)CRYSTALS-KYBER
Kyber为一簇密钥封装机制,它基于模误差学习(MLWE)问题的后量子困难问题假设,提供选择性的密文安全性(即IND-CCA)。Kyber包含了一个标准的带误差学习(LWE)风格的CPA安全的公钥密码方案,其基础的代数目标是在2的幂次的圆分割环上的一个模。通过对这个参数的精选,使其能够采用数论变换(NTT)进行效率非常高的计算。其噪声按照一个有中心的二项式分布来进行采样。CCA安全性是通过Fujisaki-Okamoto变换的一种著名的变体来达到,其中会话密钥是基于一种加密的方法来传送的。
对Kyber的安全性强度水平的调整十分简单。一种调整是仅仅改变底层模的秩(在{2,3,4}的范围内),并且调整其噪声分布参数(分别在{5,4,3}的范围内)。对于密钥交换而言,Kyber的性能为最具竞争力的密钥交换设计之一。
Kyber的安全性依赖于一个已深入研究问题的变体。其提交文档提供了一种基于随机预言模型(ROM)的严密安全性证明,以及一种基于量子随机预言机模型(QROM)的非严密安全性证明,二者都是基于MLWE假设。我们注意到一个潜在的问题是,这个安全性证明并不直接应用于Kyber自身,而是应用于该方案的一个不压缩公钥的改进版本。如果没有这种改进,Kyber实际上是依赖于一个不同的(或附加的)类似取整的假设。如果是这样的话,将带来密码分析上的担忧,因为在MLWE和模取整学习(MLWR)之间进行的那些已知的缩减设计,可能并不要求Kyber选取的那些参数。
2)NTRU(NTRUEncrypt与NTRU-HRSS-KEM的合并)
NTRU密码为一种基于格的单向CPA安全(OW-CPA)的公钥密码方案,它大约发明于1996年。经过了数十年的研究,NTRU密码的安全性已经得到了相当好的理解和深入的研究审查。已经发展出该方案的许多变体及其派生出的密钥封装机制,包括NTRUEncrypt和NTRU-HRSS-KEM提案。这两个提案已经宣布合并为一种方案,称之为NTRU。
NTRU的安全性基础是比LWE或RLWE稍微强一点的一种假设,有时称之为“NTRU假设” 。在这个合并中,KEM为一种严密的IND-CCA2安全性转换,源自于量子随机预言模型的一种确定性OW-CPA安全的公钥密码方案。该提案对于KEM中的确定性PKE具有两个选项。其派生的KEM没有解密失败问题,同时避免了密钥产生期间的“对1值的评估”和可逆校验这两个问题。
该方案以三个环结构实例详细说明了三个参数集。KEM产生的密钥和密文都具有良好的尺寸,其封装和解封效率看起来都很高。虽然它没有形成已知的安全薄弱点,在具有相似效率的RLWE和MLWE密码系统中,NTRU的构造产生的结构稍多一些(由于其矢量比期望的矢量更短)。这个方面需要进一步研究。
3)SABER
SABER是一个基于格的PKE和KEM簇,它基于取整的模学习量子困难问题来达到CPA和CCA安全性。该方案使用在一个2的幂次的分圆环上具有固定维度和模数的不同秩的多个模块,其安全级别分别为1、3以及5。其MLWR秘密分布为有中心的二项式分布,其会话密钥哈希值再由公钥进行哈希运算,以实现多目标防护。其多项式相乘按照Toom-Cook和Karatsuba的详细描述进行。该方案通过Fujisaki-Okamoto变换的一个变量来达到CCA安全性。其会话密钥使用一种基于带噪声的密钥一致性协调的密码方法来传送。
在所有后量子密钥交换中,SABER的性能优势具有非常强的竞争力。在每个安全级别中,它的带宽代价都是比较低的。
关于SABER安全性的最明显担忧,是它是否过分扩展了(模)取整学习的实际难度。虽然尚未有已知的利用所选参数的与(M)LWR相关的攻击,在取整样本MLWE和MLWR之间仍然存在很宽泛的缩减空间,并且还没有应用到SABER中。NIST将SABER当作一个机遇,以突出对具有较小参数和取整样本的(M)LWR进行深入分析的需求,有利于推进该方面的研究工作,继续全面增强对该假设的信心。
4)Classic McEliece
Classic McEliece是一种IND-CCA2安全级别的密钥封装机制(KEM)。该提案以有名的McEliece密码系统为基础,McEliece密码系统为1978年公布的第一个基于编码的公钥密码系统。该KEM的公钥机制确定一个随机二元Goppa码,通过在码字上加入误差来产生密文,通过解码来实现解封。其安全性基于解码一个常规线性码的难度,并且假设一个随机二元Goppa码不能通过一个随机线性码来辨别。
其安全问题已经具有很长的分析研究历史,但并没有显著改变其攻击复杂度。Classic McEliece也具有产生的密文非常短的特点,大概200个字节左右,看起来具有良好的封装和解封性能。
McEliece类型的密码系统的主要缺点是具有很大的公钥尺寸,超过了一百万个字节。该提案仅仅包含了第5类安全性的参数集,因而希望提交者生成其它安全类别的参数集。
5)CRYSTALS-DILITHIUM
Dilithium为一种格基签名方案,采用了Fiat-Shamir启发方法来构造,其安全性是依赖于MLWE的困难问题。Dilithium与密钥交换机制Kyber都是CRYSTALS的组成部分。Dilithium的主要新颖性在于通过忽略一些低阶bit来减小其公钥尺寸;为了进行补偿,每个签名都包含了一个额外的“线索”,允许验证者对签名进行核对。Dilithium提供了相当良好的性能,其实现也相对简单。
对Dilithium的最知名的攻击是基于格的偏移缩减,这种攻击没有有效利用MLWE问题的代数结构。Dilithium的参数选择以对这些攻击代价的保守估计为基础。Dilithium具有一个基于经典随机预言机模型的形式化的安全性证明。这个证明是极不平凡的,它突破了量子随机预言机模型;但是还没有任何已知攻击的实例。NIST鼓励对这个方案的所有方面都进行的深入分析研究。
6)FALCON
FAlCON为一种格基签名方案,它基于GPV(Gentry-Peikert-Vaikuntanathan)高斯取样,应用了NTRU格。其主要的创新性在于,它应用了一种树形的数据结构(即“FAlCON树”),使其成为对高斯采样的一种非常快的递归算法。
对FAlCON方案的最知名的攻击是基于格的偏移缩减,这种攻击没有有效利用NTRU格的特殊结构。FAlCON具有一个基于经典随机预言机模型的形式化的安全性证明。
FAlCON提供了非常优良的性能,但是其实现相当复杂,因为它严重依赖于数域的“多域塔”结构,并且需要双精度浮点算法。该方案还需要进行更多的研究工作,确保其签名算法面对边信道攻击时是安全的。
7)Rainbow
Rainbow是一种多变量数字签名方案,它是UOV结构的一种推广,允许进行参数优化,使其以增加代数结构的代价获得更高的效率。Rainbow签名方案所提交的格式已经具有长达15年的针对各种参数的研究历程。Rainbow方案声称,由于使用了随机加盐的一种哈希构造,因而具备EUF-CMA安全性。
Rainbow参数谱允许在各种各样的大量应用场景中进行优化。Rainbow的另一优势是它已经在其它包括轻量级应用在内的场景中得到了研究。
Rainbow提案针对NIST号召建议中的所有安全级别,提供了若干个参数集。作为一种入选第二轮的候选算法,期望能够将研究重点聚焦于一组更窄的细节规格上面。此外,还希望能激发针对Rainbow密钥以文献中已有的、而Rainbow提案中并未考虑的那些优化技术开展更多的研究,最终使研究社区在方案的可行性上面取得一致。此外,Rainbow的实现也可能得到很大的改进。
实际上我们并不处在建造一台有能力破译目前公钥密码(学)的量子计算机的中期阶段(例如5年)内。执行肖尔算法所需的量子比特的数量,远远超过今天我们制造的最强大的量子计算机的能力,而且肖尔算法大规模的可靠的应用还没有被展示出来。今天,我们并不清楚诸如量子比特的退相干和管理噪声以减少量子系统中的差错等面临的挑战能否被解决。正因为如此,在短期或者中期内建造这样一台可规模化的扩展的量子计算机似乎不太现实。
然而,放眼较长的时间(20年),忽视量子计算机对于目前的现代密码学标准的威胁将会是错误的。正如美国国家标准与技术研究院的描述:“一些人预测在接下来的20年左右,足够规模的量子计算机会被制造出来,基本上可以打破目前使用中的所有公钥方案。在历史上,我们花了差不多20年时间去配置现代公钥密码基础架构。因此,不论我们能否准确估计量子计算时代到来的时间,我们都必须现在开始准备我们的信息安全系统,使之能够对抗量子计算”。
六
结 语
对量子计算的研究如火如荼,以美国为首的国家已经将量子计算作为其未来科技发展战略的核心和重点之一,总体说来,当前量子计算研究状况是:
1、物理平台探索发展迅速,但技术路线仍未收敛
量子计算研究始于上世纪八十年代,目前已进入工程实验验证和原理样机攻关阶段。量子计算包含量子处理器、量子编码、量子算法、量子软件等关键技术,量子处理器的物理实现是当前阶段的核心瓶颈,包含超导、离子阱、硅量子点、中性原子、光量子和拓扑等多种技术路线,近期均取得一定进展。超导路线方面,Google 在2018年推出72位量子比特处理器,Rigetti正在构建更强大的128量子比特处理器。我国中科大在2019年已实现24位超导量子比特处理器,并进行多体量子系统模拟;同时,清华大学利用单量子比特实现了精度为98.8%的量子生成对抗网络,未来可应用于图像生成等领域。离子阱路线方面,IonQ已实现79位处理量子比特和160位存储量子比特。光量子路线方面,中科大已实现18位光量子的纠缠操控,处于国际领先地位。硅量子点路线方面,新南威尔士大学报道了保真度为99.96%的单比特逻辑门,以及保真度为98%的双比特逻辑门。目前,量子计算物理平台中的超导和离子阱路线相对领先,但尚无任何一种路线能够完全满足量子计算技术实用化条件实现技术收敛。为充分利用每种技术的优势,未来的量子计算机也可能是多种路线并存的混合体系。
2、“量子霸权”突破里程碑,但实用化尚有距离
量子霸权(Quantum Supremacy)的概念由MIT的John Preskill教授首先提出,指量子计算在某一个计算问题上,相比于经典计算机可实现指数量级运算能力的加速,从而真正体现量子计算技术的原理性优势。2019年10月,Google公司在《自然》杂志报道了实现量子霸权的研究成果,基于53位量子比特的超导处理器,在解决随机量子线路采样特定计算问题时,具有远超过现有超级计算机的处理能力。Google的此项研究成果是证明量子计算原理优势和技术潜力的首个实际案例,具有重要的里程碑意义,这一热点事件所引发的震动和关注,将进一步推动全球各国在量子计算领域的研发投入、工程实践和应用探索,为加快量子计算机的研制和实用化注入新动力。
现阶段量子计算的发展水平距离实用化仍有较大距离。量子计算系统非常脆弱,极易受到材料杂质、环境温度和噪声等外界因素影响而引发退相干效应,使计算准确性受到影响,甚至计算能力遭到破坏。同时,可编程通用量子计算机需要大量满足容错阈值的物理量子比特进行纠错处理,克服退相干效应影响,获得可用的逻辑量子比特。现有研究报道中的物理量子比特数量和容错能力与实际需求尚有很大差距,逻辑量子比特仍未实现。通用量子计算机的实用化,业界普遍预计将需十年以上时间。
3、生态链不断壮大、应用探索全面展开
在量子计算领域,美国近年来持续大力投入,已形成政府、科研机构、产业和投资力量多方协同的良好局面,并建立了在技术研究、样机研制和应用探索等方面的全面领先优势。欧(含英国)、日、澳等国紧密跟随,且领先国家之间通过联合攻关和成果共享,形成并不断强化联盟优势。我国近年来取得系列先进成果,但与美欧仍有一定差距。此外,印度、韩国、俄罗斯、以色列等国也开始将量子计算技术列入国家技术计划加大投入。
科技巨头间的激烈竞争,推动量子计算技术加速发展。Google、IBM、英特尔、微软在量子计算领域布局多年,霍尼韦尔随后加入,产业巨头基于雄厚的资金投入、工程实现和软件控制能力积极开发原型产品、展开激烈竞争,对量子计算成果转化和加速发展助力明显。Google在2018年实现72位超导量子比特,在2019年证明量子优越性。IBM在2019年1月展示具有20位量子比特的超导量子计算机,并在9月将量子比特数量更新为53位。微软在2019年推出量子计算云服务,可以与多种类型的硬件配合使用。霍尼韦尔的离子阱量子比特装置已进入测试阶段。我国阿里巴巴、腾讯、百度和华为近年来通过与科研机构合作或聘请具有国际知名度的科学家成立量子实验室,在量子计算云平台、量子软件及应用开发等领域进行布局。阿里与中科大联合发布量子计算云平台并在2018年推出量子模拟器“太章”。腾讯在量子AI、药物研发和科学计算平台等应用领域展开研发。百度在2018年成立量子计算研究所,开展量子计算软件和信息技术应用等业务研究。华为在2018年发布HiQ量子云平台,并在2019年推出昆仑量子计算模拟一体原型机。我国科技企业进入量子计算领域相对较晚,在样机研制及应用推动方面与美国存在差距。
初创企业是量子计算技术产业发展的另一主要推动力量。初创企业大多脱胎于科研机构或科技公司,近年来,来自政府、产业巨头和投资机构的创业资本大幅增加,初创企业快速发展。目前,全球有超过百余家初创企业,涵盖软硬件、基础配套及上层应用各环节。
尽管量子计算目前仍处于产业发展的初期阶段,但军工、气象、金融、石油化工、材料科学、生物医学、航空航天、汽车交通、图像识别和咨询等众多行业已注意到其巨大的发展潜力,开始与科技公司合作探索潜在用途,生态链不断壮大。Google联合多家研究机构将量子退火技术应用于图像处理、蛋白质折叠、交通流量优化、空中交通管制、海啸疏散等领域。JSR和三星尝试使用量子计算研发新材料特性。埃森哲、Biogen和1Qbit联合开发量子化分子比较应用,改善分子设计加速药物研究。德国HQS开发的算法可以在量子计算机和经典计算机上有效地模拟化学过程。摩根大通、巴克莱希望通过蒙特卡洛模拟加速来优化投资组合。硅谷量子计算软件开发商QCware编写量子算法,以提高量化交易和基金管理策略的调整能力,优化资产定价及风险对冲。在达到通用量子计算所需的量子比特数量、量子容错能力和工程化条件等要求之前,专用量子计算机或量子模拟器将成为量子计算发展的下一个重要里程碑,在量子体系模拟、分子结构解析、大数据集优化和机器学习算法加速等领域开发出能够有效发挥量子计算处理优势的典型应用,打开量子计算实用化之门。
4、密码界未雨绸缪,网络空间安全基石必将发生根本性改变
在量子计算被引入后,尽管还不能确切得知实用化的破译用量子计算机何时诞生,但密码界早早就开展了深入研究,毕竟量子计算诞生的基础和前提中十分重要的一点就是冲着密码破译而来,密码学界提前启动了后量子密码学的实用化进程。
后量子密码学以数学方法为基础定义了一系列新的密码学标准,其中主要是针对公钥密码学。这些方法很强大,足以抵挡来自量子计算机的攻击。美国国家标准与技术研究院带头着手实施一项计划来发展这些新的标准。他们通过阶段性的招标流程,收集学术界和工业界对新的密码算法的建议,当前学术界抗量子计算热点集中于:
基于格的密码(Lattice Based Cryptography)--格是N维空间中带有周期性结构的点集,它和N维的有斑点图案的壁纸有些相似。某些数学上的格点问题被认为解决起来非常困难,比如最短向量问题(Shortest Vector Problem),就是给定一个特定的基矢,然后找出一些最短的非零向量。这样的格点问题已经被用来作为构建一些密码学方法的基础。
基于编码的密码(Code Based Cryptography)--这类方法是以纠错码为基础的加密系统。这些算法以解码线性代码的困难为基础,算法中的私钥与一个纠错码相联系,公钥与加扰版本相联系。
多变量多项式(Multivariant Polynomials)--在有限域上包含多变量多项式的数学问题已经被建议用来作为新的加密方法的基础。
基于哈希的签名(Hash-Based Signatures)--这是一种提供数字签名的方法,其中的数字签名来自一种叫作哈希函数的数学函数的复用。
目前对公钥界威胁最大的Shor算法的运行瓶颈在于量子模幂,它远比量子傅立叶变换和经典的预处理/后处理慢很多。有几种方法可以构造和优化用于模幂的电路,最简单(当前)的最实用方法是模仿具有可逆门的常规算术电路,该方法从带纹波的加法器开始,知道指数的基数和模数有助于进一步优化。可逆电路使用量子比特门来实现,替代技术通过使用量子傅立叶变换来渐进地提高门数,但由于常数较高,不足600量子位不具有实际破译能力。
目前,抗量子密码算法已经进入最终遴选阶段,未来1-2年内一旦最终选定就能快速得到全面应用,随着抗量子计算的算法普及,网络空间安全的基石即将发生变革。
5、基础研究是重点,多样混合也许是出路
毫无疑问量子计算是当前一项十分重要和热门的基础性的研究领域,基础研究的极端重要性是一个老生常谈的话题,在涉及基础性、全局性、颠覆性和长久性的科学研究领域,不存在什么弯道超车的侥幸,而只能是实实在在的进行布局。四十年前第一代公钥密码算法引发的现代密码学革命并不是来自于极少数国家级科研机构,而是得益于美国大学自由的科研氛围,这足以说明问题。
最近佐治亚理工学院的博士生Swamit Tannu和Moinuddin Qureshi教授开发了一种新技术--多样映射集合,它依赖于使用不同的量子比特来创建错误的多样化。
与传统计算机不同,基于量子的计算机中的处理过程是有噪声的,因此产生的错误率大大高于基于硅的计算机。为此,量子运算要重复数千次,以使正确的答案在统计上从所有错误的答案中脱颖而出。
但是,在相同的量子比特集上一次又一次地运行相同的操作可能会生成相同的错误答案,从统计学上看,这些错误答案似乎是正确的答案。佐治亚理工学院的研究人员认为,解决方案是对具有不同错误特征的不同量子比特集重复操作,因此不会产生相同的相关错误。
未来的量子计算机很可能是一个混合体,也许会出现这样一种量子计算机:由超快的超导体量子比特对算法进行运算,然后把结果扔给更稳定的离子存储;与此同时,光子在机器的不同部件之间传递信息,或者在量子网络的节点之间传递信息。微软研究员 Krysta Svore 说:“能够想象,将来不同类型的量子比特会同时存在,并在不同任务中扮演不同的角色”。
联系电话:13391516229(微信同号)
《通信技术》杂志投稿
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...