77百科网
当前位置: 首页 文学教育

rsa加密算法常见应用(每天一个算法RSA加密算法)

时间:2023-05-08 作者: 小编 阅读量: 1 栏目名: 文学教育

每天一个算法RSA加密算法昨天,心血来潮给大家分享了一个《每天一个算法——霍夫曼编码压缩算法》,大家的反应很好,挺感谢大家的支持今天,准备继续分享一个算法,我个人认为比较有意思,也比较重要RSA算法是一种

昨天,心血来潮给大家分享了一个《每天一个算法——霍夫曼编码压缩算法》,大家的反应很好,挺感谢大家的支持。今天,准备继续分享一个算法,我个人认为比较有意思,也比较重要。


RSA算法是一种"公钥加密算法"。早期的加密模式,就是加密和解密都是用同一种规则(密钥)。这种加密模式,就要求加密规则需要在双方进行传递,信息是很不安全的。在这种加密模式下的算法,也叫"对称加密算法"。而我们今天要讲的RSA算法,是一种"非对称加密算法",加密和解密使用不同的规则,只要这两种规则之间存在某种对应关系即可,这样就避免了直接传递密钥。

这种“非对称加密算法”的模式,信息交互方式如下:

在这种加密模式下,只要私钥不公开,通信就是安全的。


我自己今天看了挺久的加密原理,里面设计到一点数学,具体为什么就要这样做,我也不懂更深层次的原因,这里就讲点比较浅的东西。

  • 质数(素数)

  • 在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数,也叫素数。

    如果两个数除了1以外,没有其他公因子,我们就称这两个数存在互质关系。比如,15和32没有公因子,所以它们之间有互质关系(不是质数也可以构成互质关系)。

    在数论中,对于正整数N,小于或等于N ([1,N]),且与N互质的正整数(包括1)的个数,记作φ(n)。

    任意两个数p、q,如果p、q存在互质关系,我们有φ(p*q) = (p-1)*(q-1)。这里就不证明了,举个例子就好。互质关系2、5,则φ(10)=1*4。结论,在1到10中,和10互质的正整数有4个(1,3,7,9)。

    如果两个互质数p,q,那么一定可以找到整数x,使得 qx-1被p整除,或者说qx被p除的余数是1。这时,x就叫做q的模反元素。(上面公式,可以变换求xqyp = 1,求x,这里y为负数)

    例子:互质数3、5,这里求5的模反元素,即5x3y = 1。可以口算一下,这里x=2,y=-3(或者x=5,y=-8)。可以看出模反元素不唯一,但一旦x确定,y也是确定的。


    上面提到的几个概念,大家反复推敲一下,RSA算法的密钥就是从这几个公式中推断出来。了解了上面的几个公式,下面我们来讲解RSA算法,获取到加密的公钥和私钥。

    1.随机选择两个不相等的质数p和q。

    这里我们选择p = 3 , q = 11。(实际应用中,这两个质数越大,就越难破解。)

    2.计算p和q的乘积n。

    n = p * q = 3 * 11 = 33

    3.计算n的欧拉函数φ(n)。

    φ(n) = (p - 1) * (q - 1) = 2 * 10 = 20

    4.随机选择一个整数e,条件是1< e < φ(n),且e与φ(n) 互质。

    我们选择与20互质的数,e=7(随机选择)。

    5.计算e对于φ(n)的模反元素d。

    这里要求7对于20的模反元素,可以有多个,我们计算出一个即可。

    公式7*d20*m = 1,求d。

    这里我们选择d=3,m=-1。(m这里没用)

    6.将n和e封装成公钥,n和d封装成私钥。

    这个例子中n=33,e=7,d=3,所以公钥就是 (33,7),私钥就是(33, 3)。


    有了公钥和私钥,我们就可以进行安全通信,公钥进行加密,私钥解密。但是RSA的算法可靠吗?下面我们来讨论一下。

    回顾一下上面密钥的生成步骤,总共出现了六个数字:

    在这六个数字中,公钥(33,7)用到了两个(n和e),其他四个数都是不公开的。其中最关键的数是d,因为n和d组成了私钥(33,3),假如d泄漏,就等于知道了n、d、e,密钥就泄露了。

    那么,有没有可能在知道n和e的情况下,推导出d?

    结论:假如n可以被因数分解,那么d就可以算出,也就意味着私钥被破解。

    对大整数进行因式分解,是一件很困难的事情,目前只有用暴力破解,就是一个一个去试。目前已知,被破解最长RSA密钥是768个二进制位。就是说,长度超过768位的密钥,还没有被人破解(至少没公开宣布)。因此可以认为,1024位的RSA密钥基本安全,2048位的密钥极其安全。

    举个例子,我们可以对33进行分解成11和3,但下面这个数你没办法分解:

    它等于下面两个质数的乘积:


    上面获取到了公钥和私钥,还没用他们加过密。这里来举例一下就好:

    公式上大家一一对照就好,具体数学原理这里不做解释了。大家感兴趣可以继续深入研究其背后的数学,我想着才是真正的数学之美。

      推荐阅读
    • 一般的车的胎压多少合适(不知道自己的车正常胎压是多少)

      不知道自己的车正常胎压是多少从经济性上说,轮胎胎压过低会让轮胎的接地面积增大,从而增大摩擦力导致油耗的提升;从安全上说,轮胎胎压过低可能会碾压轮胎造成轮胎损伤;从舒适性上说,胎压过低和过高对乘坐的舒适性都有很大的影响也正是因为以。

    • 海洋里的植物种类(海洋里那些巨大的植物)

      海洋里那些巨大的植物本文由黄老讲海洋原创首发,严禁转载!大家好,我是黄老讲海洋,上期我讲了海洋里的一些古老生物,今天就来讲一讲海洋里的一些有趣的植物吧!海底“森林”:巨藻海底与陆地相似,也有高山平原、沙漠和森林藻类是单细。

    • 七匹狼男装夹克官方旗舰店(男士夹克品牌都有哪些)

      七匹狼携手国际知名设计师TuomasMerikoski,一位是国际知名设计师,一个是中国服装行业的领先品牌,双方在动物保护理念的公益表达上不谋而合。聚焦动物保护内核传递美好向往可持续发展是一个世界性的议题,亦是大势所趋。作为以狼为品牌标识的企业,一直以来,七匹狼以“狼文化”为精神内核,早就将与动物和谐相处深植品牌基因中,坚持致力于动物保护和环保事业。在七匹狼公益精神的感召下,多名时尚达人亲身诠释联名新品的风采。

    • 甘肃兰州以后的发展(曾归属于兰州市)

      那么如今仅仅只是五线城市的白银市怎么会“名字”无人不知呢?白银市如今城市高楼大厦已经建立起来,城市GDP也早在已经2018年就突破500亿,如今虽然仍然是五线城市,但相信白银市未来一定会发展得越来越好。我们向全世界发出邀请,2021,欢迎您来到白银!

    • 爱到卑微如尘埃的句子(卑微到尘埃里的生命中那束纯净的光)

      卑微到尘埃里的生命中那束纯净的光卑微到尘埃里的生命中那束纯净的光,请慢一点《隐入尘烟》文/姜诗华从社会结构的城乡二元化角度分析,2010年前后大抵是一个转折点,根据当年人口普查的数据统计,城乡常住人口基本持平,到了十年后的第七次人口。

    • ps图片怎么保存(ps图片如何保存)

      ps图片怎么保存首先打开PS软件,拖入需要制作的图片,进行图片编辑。编辑完成后点击左上角“文件”,点击“存储为”。选择图片保存位置,点击“保存”,再点击“确定”即可。AdobePhotoshop,简称“PS”,是由AdobeSystems开发和发行的图像处理软件。Photoshop主要处理以像素所构成的数字图像。使用其众多的编修与绘图工具,可以有效地进行图片编辑工作。ps有很多功能,在图像、图形、文字、视频、出版等各方面都有涉及。

    • 古风祝福语(唯美简短(古风唯美祝福语句)

      下面内容希望能帮助到你,我们来一起看看吧!古风祝福语用我三生烟火,换你一世迷离。我自是年少,韶华倾负。终是谁使弦断,花落肩头,恍惚迷离多少红颜悴,多少相思碎,唯留血染墨香哭乱冢。苍茫大地一剑尽挽破,何处繁华笙歌落。斜倚云端千壶掩寂寞,纵使他人空笑我。任他凡事清浊,为你一笑间轮回甘堕。寄君一曲,不问曲终人聚散。谁将烟焚散,散了纵横的牵绊。

    • 把常熟发展成为皮草产业基地(强技改重创意桐乡崇福皮草转型升级谋求新发展)

      强技改重创意桐乡崇福皮草转型升级谋求新发展2018-06-1106:05|桐乡新闻网微信号从一条小小的“硝皮弄”走出来的桐乡崇福皮草,一直是该镇的支柱产业,也是富民产业这里不仅拥有从原皮到硝皮、印染再到成衣的皮草产业最完整的产业链,而且经过多。

    • 湖北省各县市人口状况(以小见大湖北县级市)

      以小见大湖北县级市➤这一篇文章,杂货君就各城市官方公开的数据情况,探析一下湖北部分县级市、地级市的全面核酸数据与真实常住人口之间的关系,如有错误和遗漏之处,请多指正!一、地级市篇孝感:孝南区新型冠状病毒感染的肺炎防控指。

    • 乱世佳人的演员有哪些(乱世佳人的演员分别有哪些)

      乱世佳人的演员分别有哪些白瑞德(克拉克·盖博饰演)白瑞德,瑞特第一次见到斯佳丽是在十二像树园的烧烤会上他注视斯佳丽并洞悉他与阿希礼的感情纠葛斯佳丽因查尔斯病亡到亚特兰大散心,瑞特看出了正在服丧的她,内心里对无拘无束、自由生活。