AES Simplified algorithm in English .pdf

MuhammedNabil19 72 views 17 slides May 17, 2024
Slide 1
Slide 1 of 17
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17

About This Presentation

خوارزمية aes


Slide Content

AESExample-Input(128bitkeyandmessage)
KeyinEnglish:
ThatsmyKungFu
(16ASCIIcharacters,1byteeach)
TranslationintoHex:
T
h
a
t
s
m
y
K
u
n
g
F
u
54
68
61
74
73
20
6D
79
20
4B
75
6E
67
20
46
75
KeyinHex(128bits):
5468617473206D79204B756E67204675
PlaintextinEnglish:
TwoOneNineTwo
(16ASCIIcharacters,1byteeach)
TranslationintoHex:
T
w
o
O
n
e
N
i
n
e
T
w
o
54
77
6F
20
4F
6E
65
20
4E
69
6E
65
20
54
77
6F
PlaintextinHex(128bits):
54776F204F6E65204E696E652054776F
1

AESExample-TherstRoundkey

KeyinHex(128bits):
5468617473206D79204B756E67204675

w[0]=(54;68;61;74);w[1]=(73;20;6D;79);w[2]=(20;4B;75;6E);w[3]=(67;20;46;75)

g(w[3]):

circularbyteleftshiftofw[3]:(20;46;75;67)

ByteSubstitution(S-Box):(B7;5A;9D;85)

Addingroundconstant(01;00;00;00)gives:g(w[3])=(B6;5A;9D;85)

w[4]=w[0]g(w[3])=(E2;32;FC;F1):
01010100
01101000
01100001
01110100
10110110
01011010
10011101
10000101
11100010
00110010
11111100
11110001
E2
32
FC
F1

w[5]=w[4]w[1]=(91;12;91;88),w[6]=w[5]w[2]=(B1;59;E4;E6),
w[7]=w[6]w[3]=(D6;79;A2;93)

rstroundkey:
E232FCF191129188B159E4E6D679A293
2

AESExample-AllRoundKeys

Round0:5468617473206D79204B756E67204675

Round1:E232FCF191129188B159E4E6D679A293

Round2:56082007C71AB18F76435569A03AF7FA

Round3:D2600DE7157ABC686339E901C3031EFB

Round4:A11202C9B468BEA1D75157A01452495B

Round5:B1293B3305418592D210D232C6429B69

Round6:BD3DC2B7B87C47156A6C9527AC2E0E4E

Round7:CC96ED1674EAAA031E863F24B2A8316A

Round8:8E51EF21FABB4522E43D7A0656954B6C

Round9:BFE2BF904559FAB2A16480B4F7F1CBD8

Round10:28FDDEF86DA4244ACCC0A4FE3B316F26
3

AESExample-AddRoundkey,Round0

StateMatrixandRoundkeyNo.0Matrix:
0
B
B
@
544F4E20
776E6954
6F656E77
2020656F
1
C
C
A
0
B
B
@
54732067
68204B20
616D7546
74796E75
1
C
C
A

XORthecorrespondingentries,e.g.,694B=22
01101001
01001011
00100010

thenewStateMatrixis
0
B
B
@
003C6E47
1F4E2274
0E081B31
54590B1A
1
C
C
A
4

AESExample-Round1,SubstitutionBytes

currentStateMatrixis
0
B
B
@
003C6E47
1F4E2274
0E081B31
54590B1A
1
C
C
A

substituteeachentry(byte)ofcurrentstatematrixbycorrespondingentryinAES
S-Box

forinstance:byte6EissubstitutedbyentryofS-Boxinrow6andcolumnE,i.e.,
by9F

thisleadstonewStateMatrix
0
B
B
@
63EB9FA0
C02F9392
AB30AFC7
20CB2BA2
1
C
C
A

thisnon-linearlayerisforresistancetodierentialandlinearcryptanalysisattacks
5

AESExample-Round1,ShiftRow

thecurrentStateMatrixis
0
B
B
@
63EB9FA0
C02F9392
AB30AFC7
20CB2BA2
1
C
C
A

fourrowsareshiftedcyclicallytotheleftbyosetsof0,1,2,and3

thenewStateMatrixis
0
B
B
@
63EB9FA0
2F9392C0
AFC7AB30
A220CB2B
1
C
C
A

thislinearmixingstepcausesdiusionofthebitsovermultiplerounds
6

AESExample-Round1,MixColumn

MixColumnmultipliesxedmatrixagainstcurrentStateMatrix:
0
B
B
@
02030101
01020301
01010203
03010102
1
C
C
A
0
B
B
@
63EB9FA0
2F9392C0
AFC7AB30
A220CB2B
1
C
C
A
=
0
B
B
@
BA84E81B
75A48D40
F48D067D
7A320E5D
1
C
C
A

entryBAisresultof(0263)(032F)(01AF)(01A2):

0263=0000001001100011=11000110

032F=(022F)2F=(0000001000101111)00101111=01110001

01AF=AF=10101111and01A2=A2=10100010

hence
11000110
01110001
10101111
10100010
10111010
7

AESExample-AddRoundkey,Round1

StateMatrixandRoundkeyNo.1Matrix:
0
B
B
@
BA84E81B
75A48D40
F48D067D
7A320E5D
1
C
C
A
0
B
B
@
E291B1D6
32125979
FC91E4A2
F188E693
1
C
C
A

XORyieldsnewStateMatrix
0
B
B
@
581559CD
47B6D439
081CE2DF
8BBAE8CE
1
C
C
A

AESoutputafterRound1:
5847088B15B61CBA59D4E2E8CD39DFCE
8

AESExample-Round2

afterSubstituteByteandafterShiftRows:
0
B
B
@
6A59CBBD
A04E4812
309C989E
3DF49B8B
1
C
C
A
0
B
B
@
6A59CBBD
4E4812A0
989E309B
8B3DF49B
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
15C97F9D
CE4D4BC2
8971BE88
654797CD
1
C
C
A
0
B
B
@
430E093D
C65708F8
A9C0EB7F
62C8FE37
1
C
C
A
9

AESExample-Round3

afterSubstituteByteandafterShiftRows:
0
B
B
@
1AAB0127
B45B3041
D3BAE9D2
AAE8BB9A
1
C
C
A
0
B
B
@
1AAB0127
5B3041B4
E9D2D3BA
A9AAE8BB
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
AA65FA88
160C053A
3DC1DE2A
B34B5A0A
1
C
C
A
0
B
B
@
7870994B
76763C39
307D3734
54235BF1
1
C
C
A
10

AESExample-Round4

afterSubstituteByteandafterShiftRows:
0
B
B
@
BC51EEB3
3838EB12
04FF9A18
202639A1
1
C
C
A
0
B
B
@
BC51EEB3
38EB1238
9A1804FF
A1202639
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
10BCD3F3
D894E0E0
53EA9E25
2440737B
1
C
C
A
0
B
B
@
B10804E7
CAFCB1B2
5154C96C
EDE1D320
1
C
C
A
11

AESExample-Round5

afterSubstituteByteandafterShiftRows:
0
B
B
@
C830F294
74B0C837
D120DD50
55F866B7
1
C
C
A
0
B
B
@
C830F294
B0C83774
DD50D120
B755F866
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
2A268FE9
781E0C7A
1BA76F0A
5B62003F
1
C
C
A
0
B
B
@
9B235D2F
515F1C38
2022BD91
68F03256
1
C
C
A
12

AESExample-Round6

afterSubstituteByteandafterShiftRows:
0
B
B
@
14264C15
D1CF9C07
B7937A81
458C23B1
1
C
C
A
0
B
B
@
14264C15
CF9C07D1
7A81B793
B1458C23
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
A937AAF2
AED80C21
E76CB19C
F0FD673B
1
C
C
A
0
B
B
@
148FC05E
93A4600F
252B2492
77E84075
1
C
C
A
13

AESExample-Round7

afterSubstituteByteandafterShiftRows:
0
B
B
@
FA73BA58
DC49D076
3FF1364F
F59B099D
1
C
C
A
0
B
B
@
FA73BA58
49D076DC
364F3FF1
9DF59B09
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
9F375137
AFEC8CFA
63390466
4BFBB1D7
1
C
C
A
0
B
B
@
53434F85
39060A52
8E933B57
5DF895BD
1
C
C
A
14

AESExample-Round8

afterSubstituteByteandafterShiftRows:
0
B
B
@
ED1A8497
126F6700
19DCE25B
4C412A7A
1
C
C
A
0
B
B
@
ED1A8497
6F670012
E25B19DC
7A4C412A
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
E88A4BF5
7475EEE6
D31F7558
558A0C38
1
C
C
A
0
B
B
@
6670AFA3
25CED373
3C5A0F13
74A80A54
1
C
C
A
15

AESExample-Round9

afterSubstituteByteandafterShiftRows:
0
B
B
@
3351790A
3F8B668F
EBBE767D
92C26720
1
C
C
A
0
B
B
@
3351790A
8B668F3F
767DEBBE
2092C267
1
C
C
A

afterMixcolumnsandafterRoundkey:
0
B
B
@
B6E7518C
848898CA
346066FB
E8D77051
1
C
C
A
0
B
B
@
09A2F07B
66D1FC3B
8B9AE630
7865C489
1
C
C
A
16

AESExample-Round10

afterSubstituteByteandafterShiftRows:
0
B
B
@
013A8C21
333EB0E2
3DB88E04
BC4D1CA7
1
C
C
A
0
B
B
@
013A8C21
3EB0E233
8E043DB8
A7BC4D1C
1
C
C
A

afterRoundkey(Attention:noMixcolumnsinlastround):
0
B
B
@
2957401A
C3142202
502099D7
5FF6B33A
1
C
C
A

ciphertext:
29C3505F571420F6402299B31A02D73A
17