题解:
1.分析:
第一轮使用的轮密钥是W[4]、W[5]、W[6]、W[7]
w[i](4≤i≤43)求法:
(1)i不为4的倍数
w[i] = w[i-1] ⊕w[i-4]
(2)为4的倍数
w[i]=SubWord(RotWord(w[i-1]))⊕w[i-4]⊕Rcon[i/4]
解释:
①RotWord:将w[i-1]的4个字节循环上移一个字节
②SubWord:基于S盒对输入字的每个字节进行代换
③将步骤②的结果与w[i-4]异或
④将步骤③的结果再与轮常量Rcon[i/4]异或
2.按顺序每四个一列,作为初始轮密钥(W[0]、W[1]、W[2]、W[3])
W[0] |
W[1] |
W[2] |
W[3] |
2B |
28 |
AB |
09 |
7E |
AE |
F7 |
CF |
15 |
D2 |
15 |
4F |
16 |
A6 |
88 |
3C |
3.求W[4]
由于4是4的倍数故:
w[4]=SubWord(RotWord(w[3]))⊕w[0]⊕Rcon[1]
(1)将w[3]的4个字节循环上移一个字节
09 |
→ |
CF |
CF |
4F |
|
4F |
3C |
|
3C |
09 |
(2)基于S盒对输入字的每个字节进行代换
S盒:
用法:
如9A,对应S盒就是9行A列,即B8
代换结果:
CF |
→ |
8A |
4F |
84 |
|
3C |