分组加密中的四种模式(ECB、CBC、CFB、OFB)
ECB
优点 | 缺点 |
---|---|
1.具有操作简单,易于实现的特点 | 1.不能隐藏明文的模式; |
2.分组独立性,有利于并行计算; | 2.可能对明文进行主动攻击; |
3. 误差不会被传送; | 3. 明文中的重复内容会在密文中有所体现,因此难以抵抗统计分析攻击 |
ECB模式一般只适用于小数据量的字符信息的安全性保护,例如**保护。
CBC
(Cipher-block chaining)模式
若第一个块的下标为1,则CBC模式的加密过程为:
Ci = Ek (P ⊕ Ci-1), C0 = IV.
而其解密过程则为:
Pi = Dk (Ci) ⊕Ci-1, C0 = IV.
优点 | 缺点 |
---|---|
1.不容易主动攻击,安全性好于ECB, | 1.加密是串行的,不利于并行计算; |
2.加密时,明文中的微小改变会导致其后的全部密文块发生改变 | 2.误差传递; |
3.解密时,从两个邻接的密文块中即可得到一个明文块 | 3.需要初始化向量IV |
4.解密时,密文中一位的改变只会导致其对应的明文块完全改变和下一个明文块中对应位发生改变,不会影响到其它明文的内容。 | 4. 消息必须被填充到块大小的整数倍,一般用密文窃取解决 |
适合传输长度长的报文,是SSL、IPSec的标准。
CFB
优点 | 缺点 |
---|---|
1.隐藏了明文模式 | 1.加密是串行的,不利于并行计算; |
2.分组密码转化为流模式 | 2.误差传送:一个明文单元损坏影响多个单元 |
3.可以及时加密传送小于分组的数据 | 3.唯一的IV |
OFB
优点 | 缺点 |
---|---|
1.隐藏了明文模式 | 1.加密是串行的,不利于并行计算; |
2.分组密码转化为流模式 | 2.对明文的主动攻击是可能的; |
3.可以及时加密传送小于分组的数据 | 3.误差传送:一个明文单元损坏影响多个单元; |