17. AESΘ (1饦)
Input
Key (K) (expanded)
Output
S S S S S S S S
MixColumns
1 AddRoundKey
2 SubBytes
ShiftRows 3 ShiftRows
4 MixColumns
17
18. AESΘ (1饦)
Input
Key (K) (expanded)
Output
S S S S S S S S
MixColumns
1 AddRoundKey
2 SubBytes
Substitution
ShiftRows 3 ShiftRows
Permutation
4 MixColumns
Permutation
Permutation
18
19. AESȫQ
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
ƽ
19
20. AESȫQ
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
ƽ
AESΤϤɤ
20
28. Subme Step2
Input
Key (K)
Output
S S S S S S S S
Permutation
1-2 S-boxQ
=Substitution
1-3 ÓQƩ`֥Q
=Permutation
1-1 IXoR
=AddRoundKey
Step2Step1ͬI
28
30. Subme ȫQ
Output
S S S S S S S S
Permutation
S S S S S S S S
Permutation
+
ƽ
30
31. [ْ] AESȫQ
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
ƽ
31
32. ^
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
Permutation
S S S S S S S S
Permutation
AES subme
32
33. ^
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
ShiftRowsPermutation
S S S S S S S S
Permutation
S S S S S S S S
Permutation
AES subme
SubmeϽ⤱ʚݤ룡
33
37. SubmevҊƤ
S S S S S S S S
Permutation
S S S S S S S S
Permutation
+
ƽ
? StepȤvҊƤ
37
38. x
Output
S S S S S S S S
Permutation
S S S S S S S S
Permutation
+
ƽ
K1
K2
K3
C11
C12
C13
C21
C22
C23
C31
C=C33
38
39. SubmevStep 1
Input
Key (K)
Output
S S S S S S S S
Permutation
1-2 S-boxQ
=Substitution
1-3 ÓQƩ`֥Q
=Permutation
1-1 IXoR
=AddRoundKey
C11
C12
C13
39
40. SubmevStep 1
Input
Output
S S S S S S S S
Permutation
Key (K)
C111byte֤뤨
Key (K)
Permutationǔ
8bitˤӰ푤ʤ
Key (K)
S-boxǷǾΉQ뤬
byteӰ푤Ϥʤ
C11
C12
C13
40
41. Submev(Step1)
S S S S S S S S
Permutation
S S S S S S S S
Permutation
Perm(S(A)) Perm(S(A+S))
diff
A
A + S
B
41
44. ԭ (Step1)
? ֨SQ
? C11ڥ(A, A+S)Q֥ѥ`Bȡ
44
S S S S S S S S
Permutation
S S S S S S S S
Permutation
C11[0] = A C11[0] = A + S
K
diff
B
45. ԭ (Step1)
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? ӛƽĤ(Ҥ{0,..,255})
K
45
P[0] = A+ P[0] = A+S+
46. ԭ (Step1)
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? K[0]ΤȤ:Ȥˤʤ
K
46
P[0] = A+ P[0] = A+S+
A + + K[0] A + S + + K[0]
47. ԭ (Step1)
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? = K[0]ΤȤ:ѥ`룡
K
47
P[0] = A+ P[0] = A+S+
A + K[0] + K[0] = A
A + S + K[0] + K[0]
= A + S
48. ԭ (Step1)
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? = K[0]ΤȤ:ѥ`룡
K
48
P[0] = A+ P[0] = A+S+
A + K[0] + K[0] = A
A + S + K[0] + K[0]
= A + S
Ĥضβ֥ѥ`BH
ƽĤβ֦ҤI1ХȤƜyܣ
49. Fgstep2ؤ
S S S S S S S S
Permutation
S S S S S S S S
Permutation
1byteĿ˲
Step1K˕r
8bit
Step2K˕r
ȫˎڤ
g֤뤨Ǥ
Step2K˕r
ȫ˔褵
Ť餤
Step1ַ
Εrγ
ä뤳Ȥǰ
49
50. Fgstep2ؤ
S S S S S S S S
Permutation
S S S S S S S S
Permutation
1byteĿ˲
Step1K˕r
8bit
Step2K˕r
ȫˎڤ
g֤뤨Ǥ
Step2K˕r
ȫ˔褵
Ť餤
Step1ַ
Εrγ
ä뤳ǰ
50
Step2،gʩ뤳Ȥ
ߜgߣ
51.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
51
S S S S S S S S
Permutation
S S S S S S S S
Permutation
Step2ؤ
byteˎڤ
Ȥ}
52.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
?
? Step1γڤʤ
? Step2γStep1ͬȤ
52
S S S S S S S S
Permutation
S S S S S S S S
Permutation
ϤΤ褤I
Step1
Step1γ
1byteˤ
ڤʤ
Step2γ
ȤStep1ͬȤ
53.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
?
? Step1γڤʤ
? Step2γStep1ͬȤ
53
S S S S S S S S
Permutation
ȫ
ڤäƤޤ
֤
1bitˤƤߤ
S S S S S S S S
Permutation
S-box
byte-to-byteQ
54.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
?
? Step1γڤʤ
? Step2γStep1ͬȤ
54
S S S S S S S S
Permutation
ȫ
ڤäƤޤ
֤
1bitˤƤߤ
S S S S S S S S
Permutation
S-box
byte-to-byteQ
ͣ
55.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
?
? Step1γڤʤ
? Step2γStep1ͬȤ
55
S S S S S S S S
Permutation
IiǤ
ѥ`
β֤
1bitǤ
S S S S S S S S
Permutation
PermutationǤ
Ӱ푹ώڤʤ
56.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
?
? Step1γڤʤ
? Step2γStep1ͬȤ
56
S S S S S S S S
Permutation
IiǤ
ѥ`
β֤
1bitǤ
S S S S S S S S
Permutation
PermutationǤ
Ӱ푹ώڤʤ
ȤԤäƤ
ֱڲ״B
ʤ
57.
? }
? 1ؤStepʤIƜy
? 2ؤStepgʩIƜyy
?
? Step1γڤʤ
? Step2γStep1ͬȤ
?
? S-box1ͨ^1bit֤
߳ƽĥڥ
? ضγ֤̽
57
S S S S S S S S
Permutation
S S S S S S S S
Permutation
S-boxͨ^1bit֤
褦ƽĥڥ
ضγ
֥ѥ`åȣ
58. ƽĤ귽
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? gH˲֤״B
K
58
C12[0] = D C12[0] = D+1
59. ƽĤ귽
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? gH˲֤״B
K
59
C12[0] = D C12[0] = D+1
C11[0] = inv_S[D] C12[0] = inv_S[D+1]
60. ƽĤ귽
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? gH˲֤״B
K
60
C12[0] = D C12[0] = D+1
C11[0] = inv_S[D] C12[0] = inv_S[D+1]
P[0] = inv_S[D]+ P[0] = inv_S[D+1]+
61. ƽĤ귽
S S S S S S S S
Permutation
S S S S S S S S
Permutation
? gH˲֤״B
K
61
C12[0] = D C12[0] = D+ 1
C11[0] = inv_S[D] C12[0] = inv_S[D+1]
P[0] = inv_S[D]+ P[0] = inv_S[D+1]+
=K[0]ΤȤĤ
ضβ֥ѥ`B
ҤI1ХȤƜyܣ
62. K1, K2Iiܣ
S S S S S S S S
Permutation
S S S S S S S S
Permutation
1) 혴ԇƤ
ȤK1i
62
2)ͬ
gʩ뤳Ȥ
K2i
63. K1, K2Iiܣ
S S S S S S S S
Permutation
S S S S S S S S
Permutation
1) 혴ԇƤ
ȤK1i
63
2)ͬ
gʩ뤳Ȥ
K2i
ʤƤʤ