RSA算法和DH算法的区别
来源:互联网 发布:数据结构的算法有哪些 编辑:程序博客网 时间:2024/05/04 03:31
同是非对称算法,非对称算法的根本原理就是单向函数,f(a)=b,但是用b很难得到a。
RSA算法
RSA算法是基于大数难于分解的原理。不但可以用于认证,也可以用于密钥传输。那么用户A和B如何利用RSA算法来传输密钥呢?
1:A产生一个密钥K,用B的公钥加密K,然后将得到的密文发送给B。
2:B用自己的私钥解密收到的密钥,就可以得到密钥。
DH算法
DH算法的出现就是用来进行密钥传输的。DH算法是基于离散对数实现的。用户A和B如何利用RSA算法来传输密钥?
在通信前,用户A和B双方约定2个大整数n和g,其中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即是共享的密钥。
0 0
- RSA算法和DH算法的区别
- 两种非对称算法原理:RSA和DH
- 非对称加密RSA算法原理和DH密钥交换的简单理解
- DH算法
- 非对称加密(RSA、DH密钥交换算法、数字签名)
- 非对称加密(RSA、DH密钥交换算法、数字签名)
- 非对称加密(RSA、DH密钥交换算法、数字签名)
- 非对称加密(RSA、DH密钥交换算法、数字签名)
- RSA算法和RSA数字签名算法的实现
- DH算法证明及相应的理论知识
- DH算法外传
- DH密钥交换算法
- DH密钥交换算法
- DH算法原理
- DH密钥交换算法
- DH 算法原理
- C++ 验证DH算法
- DH算法实现_关于Imooc上moocer老师的DH算法的补充
- 纯C++编写Win32/X64通用Shellcode注入csrss进程
- 优化 Ext4 分区格式化后占用空间(通过降低inode数来节省磁盘空间)
- 解耦解的早,改需求没烦恼
- javacv开发详解之1:调用本机摄像头视频(建议使用javaCV1.3版本)
- 利用递归方法求5!。
- RSA算法和DH算法的区别
- UVA 11426 GCD - Extreme (II)(欧拉函数)
- Spring缓存注解@Cacheable、@CacheEvict、@CachePut使用
- POJ 1061 青蛙的约会(扩展欧几里得)
- QT5提示can not find -lGL的解决方法
- hdu2159
- 利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来
- POJ 1308 Is It A Tree?(判断单棵树)
- 【典型例题】购物车模型