• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

什么是RSA公钥密码

发布: 2007-5-26 11:50 | 作者: 未知 | 来源: 中国协议分析网 | 查看: 47次 | 进入软件测试论坛讨论

领测软件测试网

    RSA公钥密码是1977年由Ron Rivest、Adi Shamirh和LenAdleman在MIT(美国麻省理工学院〉开发的,1978年首次公布[RIVE78]。它是目前最有影响的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击。目前它已被ISO推荐为公钥数据加密标准。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想分解它们的乘积却极端困难,因此可以将乘积公开作为加密密钥。

RSA的算法结构相当简单,整个算法可以描述如下:

(1)选取两个大素数p和q(保密);

(2)计算n=pq(公开),γ=(p一1〉(q-1)(保密);

(3)随机选取整数e(公开,加密密钥),使得ed(ear)=1

(4)计算d(保密,私人密钥),使得ed≡1(mod r),即d=e-1(mod r);

(5)加密:c=me mod n

(6)解密:m=cd mod n。

    利用RSA对被加密的信息m (长度小于log2n的整数)进行加密得到相应的密文c=me mod n;解密算法则是计算m=cd modn RSA的优点是不需要密钥分配,但缺点是速度慢。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/