国学经典,永久流传《诗经朗诵全集》
《诗经朗诵全集》带你领略国学经典,永久咏传。...
2023-07-31
素数或者说质数,是指只能被1和自身整除的大于1的自然数。对于其他比1大的自然数,它们就都是合数,能够被除了1和自身之外的其他数整数。显然,质数和质数相乘所得到的数必然是合数。
一直以来,质数的研究被认为只有纯数学上的意义,实际并没有什么价值。直到上个世纪70年代,麻省理工学院(MIT)的三位数学家李维斯特、萨莫尔和阿德曼共同提出了一种公开密钥加密算法,也就是后来被广泛应用于银行加密的RSA算法,人们才认识到了质数的巨大作用。
质数为什么能用于加密算法?
这个问题就要涉及到大数的质因数分解。如果把一个由较小的两个质数相乘得到一个合数,将其分解成两个质数(除了1和自身的组合之外)很容易,例如,51的两个质因数为3和17。然而,如果两个很大的质数相乘之后得到一个非常大的合数,想要逆过来把该数分解成两个质数非常困难。例如,511883,分解成两个质因数之后为557和919;2538952327(超过25亿),分解成两个质因数之后为29179和87013,这个难度明显要比上一个数大得多。
截至今年一月份,目前已知最大的质数是2^82589933−1,这个数拥有超过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进行质因数分解。但合数b是由两个质数相乘得到的大数,想要成功分解该数极其困难。
目前,RSA加密算法用到的大数已经有数百位,它们一般都是分解成两个上百位的质数。如果继续增加大数的位数,还能进一步降低被破解的风险。因此,RSA加密算法的安全性能十分有保障,这就是为什么它会被广泛应用的原因。
以上内容就是为大家推荐的素数是什么(质数有什么用)最佳回答,如果还想搜索其他问题,请收藏本网站或点击搜索更多问题
内容来源于网络仅供参考版权声明:所有来源标注为小樱知识网www.xiaoyin02.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可。
本文标题:素数是什么(质数有什么用)
本文地址:https://www.xiaoyin02.com/shcs/809402.html
相关文章
热点文章
2021年独生子女补贴新政策是真的吗(独生子女证有有效期吗)
2021年国庆节阅兵仪式几点开始几点结束(2021年国庆节还有阅兵吗)
鼠目寸光一点红是什么生肖动物(鼠目寸光一点红)指什么生肖,紧密
k0到k9的玩法大全(强制gc的玩法和注意事项)
入土为安是什么生肖《入土为安》打一个生肖动物,词语解释
浙江12月底全面停工是真的吗(浙江什么时候放假停工)
如何做t(t怎么把p做哭)
北京口碑最差的三甲医院(北京301医院最擅长什么)