两种非对称算法原理:RSA和DH

http://blog.chinaunix.net/uid-7550780-id-2611984.html

http://blog.chinaunix.net/uid-7550780-id-2611984.html




两种非对称算法原理:RSADH

虽然对称算法的效率高,但是密钥的传输需要另外的信道。非对称算法RSADH可以解决密钥的传输问题(当然,它们的作用不限于此)。这两个算法的名字都是来自于算法作者的缩写,希望有朝一日能够出现用中国人命名的加密算法。非对称算法的根本原理就是单向函数,fa=b,但是用b很难得到a

 

RSA算法

 

RSA算法是基于大数难于分解的原理。不但可以用于认证,也可以用于密钥传输。那么用户AB如何利用RSA算法来传输密钥呢?

1A产生一个密钥K,用B的公钥加密K,然后将得到的密文发送给B

2B用自己的私钥解密收到的密钥,就可以得到密钥。

 (感谢网友的提醒,已经修改了)

DH算法

 

DH算法的出现就是用来进行密钥传输的。DH算法是基于离散对数实现的。用户AB如何利用RSA算法来传输密钥?

在通信前,用户AB双方约定2个大整数ng,其中1,这两个整数可以公开

1)   A随机产生一个大整数a,然后计算Ka=ga mod n。(a需要保密)

2)   B随机产生一个大整数b,然后计算Kb=gb mod n。(b需要保密)

3)   A把Ka发送给B,B把Kb发送给A

4)   A计算K=Kba mod n

5)   B计算K=Kab mod n

由于Kba mod n= (gb mod n)a mod n= (ga mod n)b mod n,因此可以保证双方得到的K是相同的,K即是共享的密钥。

<div class="Blog_con3_1">管理员在2009年8月13日编辑了该文章文章。</div>

<img src="/image/default/tu_8.png"> JiaThis Button BEGIN







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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值