AES对称加密

AES五种加密模式

对称/分组密码一般分为流加密(如OFB、CFB等)和块加密(如ECB、CBC等)。

对于流加密,需要将分组密码转化为流模式工作。

对于块加密(或称分组加密),如果要加密超过块大小的数据,就需要涉及填充和链加密模式。

五种加密模式:

  1. 电码本模式(Electronic Codebook Book (ECB));
  2. 密码分组链接模式(Cipher Block Chaining (CBC));
  3. 计算器模式(Counter (CTR));
  4. 密码反馈模式(Cipher FeedBack (CFB));
  5. 输出反馈模式(Output FeedBack (OFB))。

ECB模式

最早采用和最简单的模式,它将加密的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。

优点:

  1. 简单;
  2. 有利于并行计算;
  3. 误差不会被传送;

缺点:

  1. 不能隐藏明文的模式;
  2. 可能对明文进行主动攻击;

因此,此模式适于加密小消息。

CBC模式

优点:

  1. 不容易主动攻击,安全性好于ECB,适合传输长度长的报文,是SSL、IPSec的标准。

缺点:

  1. 不利于并行计算;
  2. 误差传递;
  3. 需要初始化向量IV;

参考文章: