AES加密的工作模式详解

时间:2024-03-27 19:09:49

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

 

1.电码本模式(Electronic Codebook Book (ECB)

    原理:将整个明文分成若干段相同的小段,然后对每一小段进行加密。

 

 AES加密的工作模式详解

2.密码分组链接模式(Cipher Block Chaining (CBC))

    原理:将明文切分成若干小段,然后每一小段与初始块或者上一段的密文段进行异或运算后,再与**进行加密。

 

 AES加密的工作模式详解

3.计算器模式(Counter (CTR))

        此模式不常见, 使用一个自增的算子,这个算子用**加密之后的输出和明文异或的结果得到密文,相当于一次一密。这种加密方式简单快速,安全可靠,而且可以并行加密,但是在计算器不能维持很长的情况下,**只能使用一次。

 

 AES加密的工作模式详解

                                                                        CTR的示意图

4.密码反馈模式(Cipher FeedBack (CFB))

    这种模式较复杂。

IV(initialization vector:初始化向量

将加密后的密文length-n位再次加密,每次能加密n位;

 

 AES加密的工作模式详解

 

5.输出反馈模式(Output FeedBack (OFB))

    这种模式较复杂。

OFB模式又称输出反馈模式(Output feedback):是在初始化向量加密后再加密,与明文异或产生密文;AES加密的工作模式详解

GCM( Galois/Counter Mode ) 

Ek 使用秘钥k对输入做对称加密运算
XOR 异或运算
Mh 将输入与秘钥h在有限域GF(2^128)上做乘法

GCM中的G就是指GMAC,C就是指CTR。

GCM可以提供对消息的加密和完整性校验,另外,它还可以提供附加消息的完整性校验。在实际应用场景中,有些信息是我们不需要保密,但信息的接收者需要确认它的真实性的,例如源IP,源端口,目的IP,IV,等等。因此,我们可以将这一部分作为附加消息加入到MAC值的计算当中。下图的Ek表示用对称秘钥k对输入做AES运算。最后,密文接收者会收到密文、IV(计数器CTR的初始值)、MAC值。

AES加密的工作模式详解

 

参考:

http://www.360doc.com/content/19/0217/23/34445812_815649396.shtml

https://www.jianshu.com/p/79a225c2650e