测量、展示量子计算机能力的方法之一,是看其有无办法用量子计算中的萧尔演算法(Shor’s algorithm)来分解一个数目中内含的质因数(prime factors)。
传统上质因数分解是个困难的问题,特别是被分解的数目是个大数。但是量子计算的萧尔演算法对于质因数此一问题相对于传统计算有指数性加速(exponential speedup),亦即在有足够量子算力的条件下,质因数分解的计算时间得以指数式地缩短。
量子计算在其它问题上也拥有不等的优势,譬如在一个无秩序的數據库中查找一笔特定數據的问题,量子计算用葛罗佛演算法(Grover’s algorithm)可以取得平方加速(quadratic speedup),也就是计算时间可以开根号的缩短。
传统的加密手段可以简述如下。Alice要安全地传送一段文本(text)给Bob(这是加密学的标准敍述方式),Alice首先会用一支二进位256位元的数字当成金钥来加密,现在通用的标准方法是AES-256,然后将这段加密文本送给Bob,Bob用同一支金钥反向操作即可解密。
问题是Alice如何递送这支金钥给Bob才安全?这就要用RSA-2048的公钥—私钥架构(public key-private key infrastructure)。
RSA-2048的公钥是一个二进位2,048位元的大数目,它是2个大质数的乘积。每个人的公钥都是公诸于世、众所周知的。Alice用Bob的公钥来加密文本使用的密钥,送给Bob。与AES不同的是,解密必须用Bob的私钥,而这私钥就是公钥的2个质因数之一。
这公钥—私钥的架构可以用电子邮件来打比方。在此例中,Bob的公钥是他的电子邮件住址,是公诸于世的。要送给Bob的信息写在信中是受到保密的,只有Bob收到信件登入、输入自己信箱的口令(也就是私钥)后,才可以取出信息。
RSA-2048的安全性依赖于用传统计算难以分解大数的质因数此一事实,而AES-256的安全性来自于对金钥查找的困难。不幸地,量子计算的出现摧毁现存的加密体制,量子计算的萧尔演算法—只要有足够的量子算力—可以有效解决大数质因数分解的问题;葛罗夫演算法可以有效地解决查找的问题。这也许是量子计算机未来问世对世界的少数负面冲击之一。
幸好量子计算不是万能,不是所有的数学难题都可以解决的。量子计算能解决数学问题的范畴为有界误差量子多项式时间(Bounded-error Quantum Polynomial Time;BQP)。
由于现存通讯安全体制在量子计算出现后可能会崩溃,业界早已开始筹划后量子时代的安全通讯机制,其中的安全机制之一是于量子通讯(quantum communication)網絡上的量子金钥分发(quantum key distribution)。量子通讯網絡具体例子为中国连接北京、济南、合肥、上海及从这些节点衍生出的網絡与墨子卫星所构成的量子通讯干线。量子通讯的安全机制依靠的是物理,即量子信息是无法被复制(non-cloning)的,任何窃取其上信息的企图势必将破坏信息,因此窃取信息的企图是枉然的,加密用的金钥于其上传送也是安全的。
另一个机制是后量子加密(Post-Quantum Cryptography;PQC)。此方法沿用目前通讯架构,但是改善加密的措施,借以对抗量子计算破解加密,这是目前业界关注的焦点。