RSA算法简介

RSA算法简介一、 RSA算法简述在RSA密码体制中,每个用户都拥有两个密钥:公钥PK={e,n}和私钥SK={d,n}。公钥PK={e,n}用于加密,也成为加密密钥,可以再网络、电话簿等媒体上进行公布。私钥SK={d,n}用于解密,也称为解密密钥,必须保密。每个用户把加密密钥PK公开,使得系统中任何其他用户都可以使用,而对解密密钥SK中的d必须严格保密。二、密钥生成1、选取两...
摘要由CSDN通过智能技术生成

RSA算法简介

一、 RSA算法简述

在RSA密码体制中,每个用户都拥有两个密钥:公钥PK={e,n}和私钥SK={d,n}。公钥PK={e,n}用于加密,也成为加密密钥,可以再网络、电话簿等媒体上进行公布。私钥SK={d,n}用于解密,也称为解密密钥,必须保密。每个用户把加密密钥PK公开,使得系统中任何其他用户都可以使用,而对解密密钥SK中的d必须严格保密。

二、密钥生成

1、选取两个保密的大素数p和q。(实际应用中,这两个质数越大,就越难破解。)
2、计算n=p*q。n称为RSA算法的模数。
3、φ(n) = (p-1)(q-1),其中φ(n)是n的欧拉函数值。
4、选取一个随机整数e(即加密密钥),使之满足1< e < φ(n),随机选择一个整数e,且e与φ(n) 互质。
5、计算解密密钥d,满足e*d ≡ 1 (mod φ(n))。
即e对于φ(n)的模反元素d。
所谓”模反元素”就是指有一个整数d,可以使得ed被φ(n)除的余数为1。
这个式子等价于
  e*d - 1 = kφ(n)
于是,找到模反元素d,实质上就是对下面这个二元一次方程求解。
  ex + φ(n)y = 1
这个方程可以用”扩展欧几里得算法”求解,因为e与φ(n)互素,由模运算可知他的乘法逆元一定存在。

三、可靠性

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

  p

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值