RSA公钥加密算法

本文深入探讨了RSA公钥加密算法,介绍了算法的产生背景、预备知识,详细阐述了算法过程,包括加密和解密的步骤。文章还讨论了算法的性能、安全性及其在云计算环境中的应用。通过对数论和群论的分析,解释了算法的正确性和效率。
摘要由CSDN通过智能技术生成

  本系列将会介绍RSA、离散对数、椭圆曲线三大公钥加密算法,RSA算法将会作为该系列的第一篇。

1. 算法产生背景

公钥加密或说非对称加密其作用已经不言而喻,在实际中已经得到大量应用,比如HTTPS证书,其中便包含了网站的公钥信息。非对称加密与对称加密最大的区别是,加密与解密使用不同的密钥,通过公钥加密的内容只有通过私钥才能解密,反之亦然。因此,发布者完全可以把公钥公布于众,使发送者便于查询。与此相反,对称加密需要参与双方妥善保管密钥。

非对称加密非常类似数学里面没有反函数的一类函数,RSA选取的函数便是数论里面的同余理论,依赖的是大整数因数分解的困难性,下面我们不仅希望给出RSA算法的构造过程,更希望能证明该过程的正确性。

RSA算法可以通过数论和群论来描述,算法导论中使用群论来描述,而我们着重使用数论。

2. 预备知识

  • 整除
    符号m|a,表示m整除a,或a是m的倍数,等价于a= k*m
  • 同余
    记a≡b(mod m),表示a、b除以m之后的余数相等,即同余。这等价于m|(a-b)
    同余性质1:
    若a1≡b1(mod m),a2≡b2(mod m),则(a1+a2)≡(b1+b2)(mod m)
    同余性质2:
    若a1≡b1(mod m),a2≡b2(mod m),则a1*a2≡b1*b2(mod m)
    同余性质3:
    若a≡b(mod m1),a≡b(mod m2),则a≡b(mod [m1,m2]),[m1,m2]为m1,m2的最小公倍数
  • 最大公因数
    记d=(a,m)为正整数a、m的最大公因数为d。当d=1时称a、m互质
  • 欧几里德公式(证明请参考初等数论)
    对任意的d=(a,m),存在整数x、y使得下式成立:
    ax+my
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值