ecb模式:
优点:
1. 简单;
2. 有利于并行计算;
3. 误差不会被传递;
缺点:
1. 不能隐藏明文的模式;
2. 可能对明文进行主动攻击;
des ecb(电子密本方式)其实非常简单,就是将数据按照8个字节一段进行des加密或解密得到一段段的8个字节的密文或者明文,最后一段不足8个字节(一般补0或者f),按照需求补足8个字节进行计算(并行计算),之后按照顺序将计算所得的数据连在一起即可,各段数据之间互不影响。
cbc模式:
优点:
1. 不容易主动攻击,安全性好于ecb,是ssl、ipsec的标准;
缺点:
1. 不利于并行计算;
2. 误差传递;
3. 需要初始化向量iv;
des cbc模式
(密文分组链接方式)有点麻烦,它的实现机制使加密的各段数据之间有了联系。其实现的机理如下:
加密步骤如下:
1. 首先将数据按照8个字节一组进行分组得到d1d2......dn(若数据不是8的整数倍,用指定的padding数据补位)
2. 第一组数据d1与初始化向量i异或后的结果进行des加密得到第一组密文c1(初始化向量i为全零)
3. 第二组数据d2与第一组的加密结果c1异或以后的结果进行des加密,得到第二组密文c2
4. 之后的数据以此类推,得到cn
5. 按顺序连为c1c2c3......cn即为加密结果。
这是分组密码的工作模式 cbc是密码分组链接模式ecb是电码本模式
推荐学习:php视频教程
以上就是des、ecb和cbc三种加密方式的区别是啥的详细内容。
