当地时间2018年12月7日,美国佛罗里达州,一位名叫PatrickLaroche的志愿者发现了我们目前能找到的最大素数——2 82589933-1,有24862048人。2017年,日本出版了一本畅销书,2017年最大素数。整本书里,只写了数字2的74,207,281减1的次方。

素数的应用有哪些

素数或者说质数,是指只能被1和自身整除的大于1的自然数。对于其他比1大的自然数,它们就都是合数,能够被除了1和自身之外的其他数整数。显然,质数和质数相乘所得到的数必然是合数。一直以来,质数的研究被认为只有纯数学上的意义,实际并没有什么价值。直到上个世纪70年代,麻省理工学院MIT的三位数学家李维斯特萨莫尔和阿德曼共同提出了一种公开密钥加密算法,也就是后来被广泛应用于银行加密的RSA算法,人们才认识到了质数的巨大作用。

质数为什么能用于加密算法?这就要涉及到大数的质因数分解。如果把一个由较小的两个质数相乘得到一个合数,将其分解成两个质数除了1和自身的组合之外很容易,例如,51的两个质因数为3和17。然而,如果两个很大的质数相乘之后得到一个非常大的合数,想要逆过来把该数分解成两个质数非常困难。例如,511883,分解成两个质因数之后为557和9192538952327超过25亿,分解成两个质因数之后为29179和87013,这个难度明显要比上一个数大得多。

截至今年一月份,目前已知最大的质数是2^825899331,这个数拥有超过2486万位。即便是超级计算机,也很难有效对两个质数相乘得到的合数进行质因数分解,所以这样的原理可以用于加密算法。什么是RSA加密算法?RSA算法是一种非对称加密算法,加密和解密所用的密钥是不一样的,解密所用的密钥对应于加密所用的密钥。

假设甲向乙发送信息a,那么,a是需要进行加密的信息再假设b是一个由两个质数相乘得到的合数c是一个与欧拉函数有关的数,这是公钥d是c关于欧拉函数值的模倒数,d就是私钥。信息加密乙在产生合数b和公钥c私钥d之后,乙会把b和c传给甲,d则保密不被传输。甲利用公钥c对信息a进行加密,即计算a^c除以b的余数e,即a^c mod b=e,所得到的e就是密文。

于是,甲把密文e传送给乙。信息解密乙在得到密文之后,利用私钥d对密文e进行解密。可以证明,e^d除以b的余数正是信息a,即e^d mod b=a,这样就完成了信息的解密。由于合数b公钥c密文e都会被传送,这些信息就有可能被窃取。如果窃取者想要破解信息,需要知道私钥d。想要通过公钥c来算出密钥d,就需要对合数b进行质因数分解。

最大的质数真的存在吗?

素数一直是数学家们关心和探索的问题。2000多年前,人们想知道是否存在最大的质数。有多少个素数?什么是质数?质数也叫质数。大于1的自然数,除了1和它本身,不能被其他自然数整除,否则称为合数。双质数搜索算法灯泡由1000以内的质数组成!1000以内有168个质数,分别是2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83。173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 355公元前2世纪,希腊数学家厄拉多塞·厄拉多塞就已经提出了一种非常简单有效的素数筛选方法,我们称之为厄拉多塞筛选法厄拉多塞筛。


文章TAG:已知的质数有哪些  质数  已知  
下一篇