千家信息网

关于DH和RSA算法的简单比较

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,本文简单地谈下关于安全中最为常用的两个非对称加密的DH算法及RSA算法,文中无意于涉及一些数学原理,这个在网上已经有很多文章叙述了,再重复也没有太多意思(这类文章只要关注两点,**其一是密钥生成方法,
千家信息网最后更新 2025年01月19日关于DH和RSA算法的简单比较
   本文简单地谈下关于安全中最为常用的两个非对称加密的DH算法及RSA算法,文中无意于涉及一些数学原理,这个在网上已经有很多文章叙述了,再重复也没有太多意思(这类文章只要关注两点,**其一是密钥生成方法,其二就是数据的加解密公式**),此文仅仅是帮助一般用户能够明确地区别下这两种算法的异同和应用场合,故不会太长。    对于DH和RSA算法而言,其最大的相同点就在于它们的理论基础就是"初等数论",既然是初等那么就意味着如果需要看懂其原理,我们只要有中学数学基础就可以了,甚至是初中数学,而不会应用到大学数学的相关内容,你无需关注什么极限、微分、积分等等,只不过RSA算法是基于所谓的"欧拉定理"(费马定理是其特例),而DH中没有非常明显的涉及,但其中有两个内容可能需要证明,本文就不涉及了,都是关于同余问题的(初等数论中的许多问题都和同余相关,其中最著名的恐怕是"孙子定理",或可称之为"中国剩余定理",在任何一般有关数论的书中都会描述)。    那么不同点在何处呢?其中最显著的不同之处就是DH用于动态交换密钥,它其实会在服务器和客户端各生成一个密钥对,也就是两对密钥,而且注意它是动态的;而RSA只包含一组密钥对,而且是静态的,即一旦生成了私钥就不会更改,除非显示地替换,最明显的就是更换私钥文件(因为密钥太长,一般生成后会放到文件中)。    通过简单分析,我们就能看出为什么使用DH算法生成的共享密钥是无法获取的,因为它们分别在服务器和客户端的内存中(对于共享密钥,通讯双方可以通过自我计算即可,不用交换,因为客户端和服务器通过计算所得的密钥是相同的,只要它们交换了各自的公钥),所以除了暴力破解别无它法,而且由于大质数的问题,以及密钥产生的随机性(随机的私钥大小在1到这个大质数减一之间,所以肯定是互质的),故在目前的条件下无法保证破解。    另外,由于RSA运算过于消耗计算资源,所以它只被用于签名(即只对少量数据进行验证,如可对数字证书的部分内容的摘要进行签名),不会被用于真正的数据内容加密;而DH算法仅是交换密钥,生成的密钥被用于数据的加解密,所使用的对真正数据加解密的对称算法一般为AES(SSL、HTTPS通常都使用此算法,而不太用以前的3DES了);所以在OPENSSL中有所谓加密算法套件的说法,它们是用于不同用途的,而且在OPENSSL中有一整套关于大数(Big Number)的计算方法,不过用户一般不会直接调用吧。
密钥 算法 生成 数据 内容 定理 就是 数学 不同 客户 数论 服务器 问题 加密 服务 明显 相同 对称 两个 动态 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全济南 华为服务器和威联通服务器区别 油田设备技术数据库手册 网络安全设施设备登记表 网络安全法全称具体实施的时间 东川天气预报软件开发 镇魔曲灵兽数据库 手机app软件开发怎么做 集团网络安全工作总结 网络技术发展年限有多少年 任天堂商店服务器异常 网络安全对社区的建设 东软医保收费系统2.0服务器 网络安全等级保护二级要求 数据库中插入空值 数据库清空一个表可以用哪个操作 陕西会议无纸化软件开发 引发网络安全的原因 数据库行业前100 郑州哈勃网络技术有限公司 数据库信息安全性标准 青浦区工商软件开发质量保障 药学好还是计算机网络技术 来电回拨显示服务器错误 数据库01445 保密数据库需要什么硬件 霓虹灯调色软件开发 怎样通过服务器监控电脑传输文件 u盘安装服务器系统教程 互联网科技年度公关传播方案
0