加密算法优缺点及适用场景整理

加密算法优缺点及适用场景整理

对称加密算法(DES和AES)

DES 算法:一种典型的块加密方法,将固定长度的明文通过一系列复杂的操作变成同样长度的密文,块的长度为64位。同时,DES 使用的密钥来自定义变换过程,因此算法认为只有持有加密所用的密钥的用户才能解密密文。 DES 的密钥表面上是64位的,实际有效密钥长度为56位,其余8位可以用于奇偶校验。

DES 现在已经不被视为一种安全的加密算法,主要原因是它使用的56位密钥过短。为了提供实用所需的安全性,可以使用 DES 的派生算法 3DES 来进行加密(3-DES)

DES优缺点:

优点:

相对于AES来说,它的优点不突出

缺点:

1、分组比较短。

2、密钥太短。(实际上56位密钥)

3、密码生命周期短。

4、运算速度较慢。(因为每个分组仅含8个字符,而且其中某些位还要用于奇偶校验或其他通讯开销。处理速度慢、加密耗时)

AES优缺点:

AES 算法:在密码学中又称 Rijndael 加密法,用来替代原先的 DES,已经被多方分析且广泛使用。

优点:

1、运算速度快。

2、对内存的需求非常低,适合于受限环境。

3、分组长度和密钥长度设计灵活。

4、AES的密钥长度比DES大,它也可设定为32比特的任意倍数,最小值为128比特,最大值为256比特,所以用穷举法是不可能破解的。

5、很好的抵抗差分密码分析及线性密码分析的能力。

缺点:

暂时没找到,因为AES的出现目的就是要代替DES算法的。

散列算法(MD5)

MD5算法:经常用于确保信息传输的完整性和一致性 。MD5 输入不定长度信息,经过程序流程,生成四个32位数据,最后联合起来输出固定128bit长度的信息摘要。计算的基本过程为:求余、取余、调整长度、与链接变量进行循环运算、得出结果

MD5特点:

  1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。

  2、容易计算:从原数据计算出MD5值很容易。

  3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。

  4、弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

  5、强抗碰撞:想找到两个不同的数据,使它们具有相同的MD5值,是非常困难的。

应用场景

DES/AES加密速度快,适合大量数据,处理数据后可复原。

 

MD5用于完整性,确保信息在传输过程保持一致性;用于密码加密,数据库中不存储密码明文,而是存储其散列值,校验时比较散列值是否相同。

MD5在论坛上、软bai件发布时经常用,是为了保证文件du的正确性,防止一些zhi人盗用程序,dao加些木马或者篡改版权,设计的一套验证系统。每个文件都可以用MD5验证程序算出一个固定的MD5码来。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小诺大人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值