Shor 量子算法原理浅析
学习这个算法时候网上介绍不多,只能硬啃论文; 本片文章是对Shor算法原理的一个简单描述,以及它用于解决什么样的问题,其实最关键的部分(关于QFT 量子傅里叶变换的内容)我并不理解,但这并不影响我们以数论的现有知识来学习理解这个算法。 背景 众所周知,RSA体制的安全性是建立在大数分解这一难题基础上的,严格说来,也只是涉及到两个大质数相乘所得到的合数。自RSA 诞生伊始,人们对其安全性的理论论证就 一直未停止过。由于 RSA 中指数运算保持了输入的乘积结构,这一点令人甚为担忧。 1994年,AT&T公司研究人员Shor发现了分解两个大质因数相乘合数的量子算法(质数就是素数),对RSA公钥密码体制产生强烈冲击;它不仅给量子计算机研究注入了活力,引发了量子计算和量子计算机研究的热潮。 原理 设n 1 、n 2 为两个奇质数(大于2的素数),而N = n 1 ·n 2 ,Shor算法概述如下: (1)随机取正整数y,要求y<N且与N互素,用量子计算机和相关算法求r = ord N (y),即y是关于N的阶数,r是使得y r Ξ 1 mod N成立的最小正整数( 也就是说,函数f(t) = y t mod N的最小正周期为r)。 (2)若r为奇数,则返回(1)重新取y。并重新求r,直到r为偶数为止。 (3) r为偶数,取 x Ξ y r/2 mod N。 故 x 2 Ξ 1