高级加密标准AES.ppt
《高级加密标准AES.ppt》由会员分享,可在线阅读,更多相关《高级加密标准AES.ppt(37页珍藏版)》请在三一文库上搜索。
1、第5章 高级加密标准(AES),AES的起源 AES的设计原则 AES算法描述,1. AES的起源,1997年9月,NIST征集AES方案,以替代DES。 1999年8月,以下5个方案成为最终候选方案:MARS, RC6, Rijndael, Serpent, Twofish。 2000年10月,由比利时的Joan Daemen和Vincent Rijmen提出的算法最终胜出。( Rijndael 读成Rain Doll。) http:/www.esat.kuleuven.ac.be/rijmen/rijndael/,2. AES的设计原则,能抵抗所有已知的攻击; 在各种平台上易于实现,速度快
2、; 设计简单。,Rijndael是一个分组密码算法,其分组长度和密钥长度相互独立,都可以改变。,表 1. 分组长度和密钥长度的不同取值,3. AES 算法的一般描述,Rijndael Round的构成,ByteSubstitution,ByteRotation,MixColumn,+,Round Key,一般的轮变换,ByteSubstitution,ByteRotation,+,Round Key,最后一轮的轮变换,3. AES 算法加密部分的实现,明文分组和密钥的组织排列方式,Fig 1. 以明文分组为128bits为例组成的阵列,Fig 2. 以明文分组(或密钥)为128bits、192
3、bits 、256bits为例组成的阵列,一些相关的的术语定义和表示,状态(State):密码运算的中间结果称为状态。 State的表示:状态用以字节为基本构成元素的矩阵阵列来表示,该阵列有4行,列数记为Nb。 Nb=分组长度(bits) 32 Nb可以取的值为4,6,8,对应的分组长度为128, 192, 256 bits。 密码密钥(Cipher Key)的表示: Cipher Key类似地用一个4行的矩阵阵列来表示,列数记为Nk。 Nk=密钥长度(bits)32 Nk可以取的值为4,6,8,对应的密钥长度为128, 192, 256 bits。,Fig 3. 当Nb=6时的状态和Nk=4
4、时的密钥布局,Nb = 6 Block Length = 192 bits,Nk = 4 Key Length = 128 bits,Fig 4. 分组长度和密钥长度均为128 bits时的Rijndael加密算法框图,Data / Key Addition,Rnd 0,Rnd 1,Rnd 8,Final Rnd,Key Schedule,Cipher Text,Key,Plain Text,表 2. 轮数(Round)的不同取值,用伪代码表示的Rijndael轮变换,一般的轮变换 Round(State, RoundKey) ByteSubstitution; ByteRotation; M
5、ixColumn; AddRounKey; ,结尾轮变换 FinalRound(State, RoundKey) ByteSubstituion; ByteRotation; AddRoundKey; ,ByteSubstitution(字节替代),ByteSubstitution是一个非线性的字节替代,独立地在每个状态字节上进行运算。它包括两个变换。 1. 在有限域GF(28)上求乘法逆,00映射到它自身。 2. 在GF(2)上进行下面的仿射变换:,y0 1 1 1 1 1 0 0 0 x0 0 y1 0 1 1 1 1 1 0 0 x1 1 y2 0 0 1 1 1 1 1 0 x2 1
6、y3 0 0 0 1 1 1 1 1 x3 0 y4 1 0 0 0 1 1 1 1 x4 0 y5 1 1 0 0 0 1 1 1 x5 0 y6 1 1 1 0 0 0 1 1 x6 1 y7 1 1 1 1 0 0 0 1 x7 1,Fig 6. ByteSubstitution 该变换可以用一个256字节的表来实现,取逆 仿射变换,ByteRotation(字节移位),在ByteRotation变换中,状态阵列的后3行循环移位不同的偏移量。第1行循环移位C1字节,第2行循环移位C2字节,第3行循环移位C3字节。 偏移量C1、C2、C3与分组长度Nb有关,如下表所示:,Fig 7. By
7、teRotation,循环左移1字节,循环左移2字节,循环左移3字节,MixColumn(列混合),将状态的列看作是有限域GF(28)上的多项式a(x),与多项式c(x) = 03 x3 + 01 x2 + 01 x +02相乘(模x41)。 令b(x) = c(x) a(x),写成矩阵形式为:,b0 02 03 01 01 a0 b1 = 01 02 03 01 a1 b2 01 01 02 03 a2 b3 03 01 01 02 a3,Fig 8. MixColumn 这一运算作用在每一列上, C(X),2.4 AddRoundKey(轮密钥加),将轮密钥与状态按比特异或。轮密钥是通过K
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级 加密 标准 AES
链接地址:https://www.31doc.com/p-3165496.html