资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1 AES算法算法Rijndael 主讲人:裴士辉主讲人:裴士辉 e_mail: shihui_pei 电话:电话:13694302598 明文分组和密钥的组织排列方式明文分组和密钥的组织排列方式 1514131211109876543210 151173 141062 13951 12840 以明文分组为以明文分组为128bits为例组成的阵列为例组成的阵列 2 状态和密钥组织状态和密钥组织 k3,7 k3,6 k3,5 k3,4 k3,3 k3,2 k3,1 k3,0 k2,7 k2,6 k2,5 k2,4 k2,3 k2,2 k2,1 k2,0 k1,7 k1,6 k1,5 k1,4 k1,3 k1,2 k1,1 k1,0 k0,7 k0,6 k0,5 k0,4 k0,3 k0,2 k0,1 k0,0 a3,7 a3,6 a3,5 a3,4 a3,3 a3,2 a3,1 a3,0 a2,7 a2,6 a2,5 a2,4 a2,3 a2,2 a2,1 a2,0 a1,7 a1,6 a1,5 a1,4 a1,3 a1,2 a1,1 a1,0 a0,7 a0,6 a0,5 a0,4 a0,3 a0,2 a0,1 a0,0 密钥和状态组织成矩阵阵列的形式密钥和状态组织成矩阵阵列的形式 密钥的长度范围:密钥的长度范围: 16,24,32字节 密钥矩阵的列数 字节 密钥矩阵的列数Nk: 4, 6, 8 分组的长度范围:分组的长度范围: 16,24,32字节 状态矩阵的列数 字节 状态矩阵的列数Nb: 4, 6, 8 a3, 3a3, 2a3, 1a3, 0 a2, 3a2, 2a2, 1a2, 0 a1, 3a1, 2a1, 1 a1, 0 a0, 3a0, 2a0, 1a0, 0 Nb = 4Nb = 4Nb = 4Nb = 4 k3, 3 k2, 3 k1, 3 k0, 3 k3, 4 k2, 4 k1, 4 k0, 4 k3, 5k3, 2k3, 1k3, 0 k2, 5k2, 2k2, 1k2, 0 k1, 5k1, 2k1, 1k1, 0 k0, 5k0, 2k0, 1k0, 0 NkNkNkNk = 6= 6= 6= 6 4 bytes4 bytes4 bytes4 bytes 决决决决定出定出定出定出轮数轮数轮数轮数 如下表如下表如下表如下表 Nr: Nr: Nr: Nr: 轮数轮数轮数轮数,由,由,由,由NbNbNbNb及及及及NkNkNkNk决定决定决定决定 AES迭代的轮数迭代的轮数 3 141414Nk = 8 141212Nk = 6 141210Nk = 4 Nb = 8Nb = 6Nb = 4Nr AES迭代的轮数迭代的轮数 轮函数轮函数 ByteSubstitution ShiftRows MixColumn + Round Key 一般的轮变换一般的轮变换 ByteSubstitution ShiftRows + Round Key 最后一轮的轮变换最后一轮的轮变换 4 字节代换字节代换 ByteSub(State) = 0 1 1 0 0 0 1 1 11111000 01111100 00111110 00011111 10001111 11000111 11100011 11110001 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 x x x x x x x x y y y y y y y y 1. 1. 求字节的乘法逆元;求字节的乘法逆元;求字节的乘法逆元;求字节的乘法逆元; 2. 2. 对字节进行如下的仿射变换:对字节进行如下的仿射变换:对字节进行如下的仿射变换:对字节进行如下的仿射变换: Byte Sub 例子例子 16 7 6 5 4 3 2 1 0 )2( 0 1 1 1 0 1 0 1 0 1 1 0 0 0 1 1 1 0 0 0 1 0 1 0 11111000 01111100 00111110 00011111 10001111 11000111 11100011 11110001 A y y y y y y y y = = = 216 1 0,0 16 1 0,00,0 160,0 )10001010()8( )01( )95( = = = Aa aa a 01234567 ,xxxxxxxx 5 S-box 字节代换字节代换 ByteSub(State) 6 行移位行移位 ShiftRow(State) 4 4行分别循环左移行分别循环左移行分别循环左移行分别循环左移0 0位、位、位、位、C1C1、C2C2、C3C3位位位位 = 0, 3 0 , 2 0 , 1 0 , 0 0 , 3 0, 2 0 , 1 0, 0 02010103 03020101 01030201 01010302 a a a a b b b b 32 ( )03010102c xxxx=+ 列混合列混合MixColumn 7 列混合列混合 Plain TextPlain Text Initial RoundInitial Round Add Round KeyAdd Round Key Standard RoundStandard Round Byte SubByte Sub Shift RowShift Row Mix ColumnMix Column Add Round KeyAdd Round Key Final RoundFinal Round Byte SubByte Sub Shift RowShift Row Add Round KeyAdd Round Key Cipher TextCipher Text NrNr- -1 Rounds1 Rounds Cipher KeyCipher Key ExpansionExpansion Expanded KeyExpanded Key SelectionSelection RoundRound Key 1Key 1 RoundRound Key 2Key 2 RoundRound Key 3Key 3 RoundRound Key NrKey Nr- -1 1 RoundRound Key NrKey Nr RoundRound Key 0Key 0 AES 的加密算法的加密算法 8 AES的解密算法的解密算法 Cipher Text Initial Round Add Round Key Inv Standard Round Inv Byte Sub Inv Shift Row Inv Mix Column Add Round Key Final Round Inv Byte Sub Inv Shift Row Add Round Key Plain Text Nr-1 Rounds Cipher Key Expansion Expanded Key Selection Round Key Nr-1 Round Key 2 Round Key 1 Round Key 0 Round Key Nr InvMixColumn 字节代换字节代换 ByteSub(State) = 0 1 1 0 0 0 1 1 11111000 01111100 00111110 00011111 10001111 11000111 11100011 11110001 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 x x x x x x x x y y y y y y y y 1. 1. 求字节的乘法逆元;求字节的乘法逆元;求字节的乘法逆元;求字节的乘法逆元; 2. 2. 对字节进行如下的仿射变换:对字节进行如下的仿射变换:对字节进行如下的仿射变换:对字节进行如下的仿射变换: 9 字节代换的逆变换字节代换的逆变换invByteSub(State) 1. 1. 对字节进行如下的仿射变换:对字节进行如下的仿射变换:对字节进行如下的仿射变换:对字节进行如下的仿射变换: 2. 2.求字节的乘法逆元求字节的乘法逆元求字节的乘法逆元求字节的乘法逆元 逆字节变换逆字节变换invByteSub(State)的例子的例子 16 7 6 5 4 3 2 1 0 )75( 0 0 0 0 0 1 0 1 1 1 0 1 0 1 0 1 01010010 00101001 10010100 01001010 00100101 10010010 01001001 10100100 = = y y y y y y y y 01234567 ,yyyyyyyy 2160, 0 )11010101()5(= Db 16 )75(的乘法逆元为 0,016 )5(aB= 10 Inverse S-box = 0, 3 0 , 2 0 , 1 0 , 0 0 , 3 0, 2 0 , 1 0, 0 02010103 03020101 01030201 01010302 a a a a b b b b 32 ( )03010102c xxxx=+ 列混合列混合MixColumn 11 d(x) a3, 5a3, 4a3, 3a3, 2 a3, 1a3, 0 a2, 5a2, 4a2, 3a2, 2a2, 1 a2, 0 a1, 5a1, 4a1, 3
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号