15812_5 advanced encryption standards
TRANSCRIPT
-
7/31/2019 15812_5 Advanced Encryption Standards
1/98
14-10-2012 1
Advanced Encryption Standard
5.1. Evaluation Criteria For AES
The Origins of AES
AES Evaluation
5.2. The AES Cipher
-
7/31/2019 15812_5 Advanced Encryption Standards
2/98
14-10-2012 2
Origins
Replacement for DES was needed
Theoretical attacks that can break it
Demonstrated exhaustive key search attacks
Can use Triple DES but slow, small block size
-
7/31/2019 15812_5 Advanced Encryption Standards
3/98
14-10-2012 3
NIST issued a call for a new AES in 1997
15 candidates accepted in Jun 1998
5 candidates were short-listed in Aug 1999
Rijndael was selected as the AES in Oct 2000
Published as FIPS PUB 197 standard in Dec 2001
-
7/31/2019 15812_5 Advanced Encryption Standards
4/98
14-10-2012 4
-
7/31/2019 15812_5 Advanced Encryption Standards
5/98
14-10-2012 5
AES Evaluation Criteria
-
7/31/2019 15812_5 Advanced Encryption Standards
6/98
14-10-2012 6
Final criteria:
General security
Ease of software & hardware implementation
Flexibility (in en/decrypt, keying, other factors)
-
7/31/2019 15812_5 Advanced Encryption Standards
7/98
14-10-2012 7
Advanced Encryption Standard
5.1. Evaluation Criteria For AES
The Origins of AES
AES Evaluation
5.2. The AES Cipher
-
7/31/2019 15812_5 Advanced Encryption Standards
8/98
14-10-2012 8
The AES Cipher - Rijndael
-
7/31/2019 15812_5 Advanced Encryption Standards
9/98
14-10-2012 9
-
7/31/2019 15812_5 Advanced Encryption Standards
10/98
14-10-2012 10
Rijndael was designed to have thefollowing characteristics:
-
7/31/2019 15812_5 Advanced Encryption Standards
11/98
14-10-2012 11
AES Structure
Key Scheduling
Message Encoding
-
7/31/2019 15812_5 Advanced Encryption Standards
12/98
14-10-2012 12
Example:
-
7/31/2019 15812_5 Advanced Encryption Standards
13/98
14-10-2012 13
Add Round Key : Initial Round Key
Transformation (For 9 Rounds)
1. Sub Bytes
2. Shift Rows
3. Mix Columns
4. Add Round Keys
Transformation (10th
Round Key)1. Sub Bytes
2. Shift Rows
3. Add Round Keys
AES Structure
-
7/31/2019 15812_5 Advanced Encryption Standards
14/98
14-10-2012 14
AES Structure
-
7/31/2019 15812_5 Advanced Encryption Standards
15/98
14-10-2012 15
-
7/31/2019 15812_5 Advanced Encryption Standards
16/98
14-10-2012 16
-
7/31/2019 15812_5 Advanced Encryption Standards
17/98
14-10-2012 17
-
7/31/2019 15812_5 Advanced Encryption Standards
18/98
14-10-2012 18
Example:
-
7/31/2019 15812_5 Advanced Encryption Standards
19/98
14-10-2012 19
-
7/31/2019 15812_5 Advanced Encryption Standards
20/98
14-10-2012 20
-
7/31/2019 15812_5 Advanced Encryption Standards
21/98
14-10-2012 21
-
7/31/2019 15812_5 Advanced Encryption Standards
22/98
14-10-2012 22
Sub Bytes Table
-
7/31/2019 15812_5 Advanced Encryption Standards
23/98
14-10-2012 23
Inverse Sub Bytes Table
-
7/31/2019 15812_5 Advanced Encryption Standards
24/98
14-10-2012 24
Example:
-
7/31/2019 15812_5 Advanced Encryption Standards
25/98
14-10-2012 25
-
7/31/2019 15812_5 Advanced Encryption Standards
26/98
14-10-2012 26
Example:
-
7/31/2019 15812_5 Advanced Encryption Standards
27/98
14-10-2012 27
-
7/31/2019 15812_5 Advanced Encryption Standards
28/98
14-10-2012 28
-
7/31/2019 15812_5 Advanced Encryption Standards
29/98
14-10-2012 29
-
7/31/2019 15812_5 Advanced Encryption Standards
30/98
14-10-2012 30
Example:
-
7/31/2019 15812_5 Advanced Encryption Standards
31/98
14-10-2012 31
-
7/31/2019 15812_5 Advanced Encryption Standards
32/98
14-10-2012 32
Key Expansion
-
7/31/2019 15812_5 Advanced Encryption Standards
33/98
Firstly, the original 16-byte key is copied into the first 4 words of the expanded
key (i.e, the first 4x4 array of our diagram) as shown below:
14-10-2012 33
-
7/31/2019 15812_5 Advanced Encryption Standards
34/98
14-10-2012 34
-
7/31/2019 15812_5 Advanced Encryption Standards
35/98
14-10-2012 35
-
7/31/2019 15812_5 Advanced Encryption Standards
36/98
14-10-2012 36
-
7/31/2019 15812_5 Advanced Encryption Standards
37/98
14-10-2012 37
-
7/31/2019 15812_5 Advanced Encryption Standards
38/98
14-10-2012 38
-
7/31/2019 15812_5 Advanced Encryption Standards
39/98
14-10-2012 39
Given:
-
7/31/2019 15812_5 Advanced Encryption Standards
40/98
14-10-2012 40
-
7/31/2019 15812_5 Advanced Encryption Standards
41/98
14-10-2012 41
-
7/31/2019 15812_5 Advanced Encryption Standards
42/98
14-10-2012 42
-
7/31/2019 15812_5 Advanced Encryption Standards
43/98
14-10-2012 43
=
Circular Shift column 1
-
7/31/2019 15812_5 Advanced Encryption Standards
44/98
14-10-2012 44
S b B t T bl
-
7/31/2019 15812_5 Advanced Encryption Standards
45/98
14-10-2012 45
Sub Bytes Table
-
7/31/2019 15812_5 Advanced Encryption Standards
46/98
14-10-2012 46
-
7/31/2019 15812_5 Advanced Encryption Standards
47/98
14-10-2012 47
Fill rest of the column
-
7/31/2019 15812_5 Advanced Encryption Standards
48/98
14-10-2012 48
-
7/31/2019 15812_5 Advanced Encryption Standards
49/98
14-10-2012 49
-
7/31/2019 15812_5 Advanced Encryption Standards
50/98
14-10-2012 50
-
7/31/2019 15812_5 Advanced Encryption Standards
51/98
14-10-2012 51
-
7/31/2019 15812_5 Advanced Encryption Standards
52/98
14-10-2012 52
-
7/31/2019 15812_5 Advanced Encryption Standards
53/98
14-10-2012 53
-
7/31/2019 15812_5 Advanced Encryption Standards
54/98
14-10-2012 54
-
7/31/2019 15812_5 Advanced Encryption Standards
55/98
14-10-2012 55
-
7/31/2019 15812_5 Advanced Encryption Standards
56/98
14-10-2012 56
-
7/31/2019 15812_5 Advanced Encryption Standards
57/98
14-10-2012 57
-
7/31/2019 15812_5 Advanced Encryption Standards
58/98
14-10-2012 58
-
7/31/2019 15812_5 Advanced Encryption Standards
59/98
14-10-2012 59
-
7/31/2019 15812_5 Advanced Encryption Standards
60/98
14-10-2012 60
-
7/31/2019 15812_5 Advanced Encryption Standards
61/98
14-10-2012 61
-
7/31/2019 15812_5 Advanced Encryption Standards
62/98
14-10-2012 62
-
7/31/2019 15812_5 Advanced Encryption Standards
63/98
14-10-2012 63
-
7/31/2019 15812_5 Advanced Encryption Standards
64/98
14-10-2012 64
-
7/31/2019 15812_5 Advanced Encryption Standards
65/98
14-10-2012 65
-
7/31/2019 15812_5 Advanced Encryption Standards
66/98
14-10-2012 66
-
7/31/2019 15812_5 Advanced Encryption Standards
67/98
14-10-2012 67
-
7/31/2019 15812_5 Advanced Encryption Standards
68/98
14-10-2012 68
-
7/31/2019 15812_5 Advanced Encryption Standards
69/98
14-10-2012 69
-
7/31/2019 15812_5 Advanced Encryption Standards
70/98
14-10-2012 70
-
7/31/2019 15812_5 Advanced Encryption Standards
71/98
14-10-2012 71
-
7/31/2019 15812_5 Advanced Encryption Standards
72/98
14-10-2012 72
-
7/31/2019 15812_5 Advanced Encryption Standards
73/98
14-10-2012 73
Message EncodingStep: 1 : Initial Round: Add Round Key
X- OR
=
-
7/31/2019 15812_5 Advanced Encryption Standards
74/98
14-10-2012 74
Message EncodingStep 2 : Transformation
-
7/31/2019 15812_5 Advanced Encryption Standards
75/98
14-10-2012 75
Message EncodingTransformation : Step 1 : Sub Bytes
Check Each cell of the table in S-BOX table
Input:
Sub Byte Table
-
7/31/2019 15812_5 Advanced Encryption Standards
76/98
14-10-2012 76
-
7/31/2019 15812_5 Advanced Encryption Standards
77/98
14-10-2012 77
-
7/31/2019 15812_5 Advanced Encryption Standards
78/98
14-10-2012 78
-
7/31/2019 15812_5 Advanced Encryption Standards
79/98
14-10-2012 79
-
7/31/2019 15812_5 Advanced Encryption Standards
80/98
14-10-2012 80
Check all the cells and fill as above said manner
-
7/31/2019 15812_5 Advanced Encryption Standards
81/98
14-10-2012 81
Message EncodingTransformation : Step 2 : Shift Rows
Input:
-
7/31/2019 15812_5 Advanced Encryption Standards
82/98
14-10-2012 82
=
-
7/31/2019 15812_5 Advanced Encryption Standards
83/98
14-10-2012 83
=
-
7/31/2019 15812_5 Advanced Encryption Standards
84/98
14-10-2012 84
=
-
7/31/2019 15812_5 Advanced Encryption Standards
85/98
14-10-2012 85
=
-
7/31/2019 15812_5 Advanced Encryption Standards
86/98
14-10-2012 86
Message EncodingTransformation : Step 3 : Mix Columns
Input:
Constant Matrix:
-
7/31/2019 15812_5 Advanced Encryption Standards
87/98
14-10-2012 87
-
7/31/2019 15812_5 Advanced Encryption Standards
88/98
14-10-2012 88
-
7/31/2019 15812_5 Advanced Encryption Standards
89/98
14-10-2012 89
(d4* 02)+(bf*03)+(5d*01)+(30*01)
M E di
-
7/31/2019 15812_5 Advanced Encryption Standards
90/98
14-10-2012 90
Message EncodingTransformation : Step 4 : Add Round Key
Input:
O/p from step 3 of Trans. =
Round 1 Key =
-
7/31/2019 15812_5 Advanced Encryption Standards
91/98
14-10-2012 91
X-OR
-
7/31/2019 15812_5 Advanced Encryption Standards
92/98
14-10-2012 92
=
-
7/31/2019 15812_5 Advanced Encryption Standards
93/98
14-10-2012 93
X-OR
X-OR
X-OR
=
=
=
-
7/31/2019 15812_5 Advanced Encryption Standards
94/98
14-10-2012 94
-
7/31/2019 15812_5 Advanced Encryption Standards
95/98
14-10-2012 95
-
7/31/2019 15812_5 Advanced Encryption Standards
96/98
14-10-2012 96
-
7/31/2019 15812_5 Advanced Encryption Standards
97/98
14-10-2012 97
-
7/31/2019 15812_5 Advanced Encryption Standards
98/98
Link for animated AEShttp://www.cs.bc.edu/~straubin/cs381-
05/blockciphers/rijndaelingles 2004.swf
Otherwise in google type
animated AES and open first link
http://www.cs.bc.edu/~straubin/cs381-05/blockciphers/rijndaelingles%202004.swfhttp://www.cs.bc.edu/~straubin/cs381-05/blockciphers/rijndaelingles%202004.swfhttp://www.cs.bc.edu/~straubin/cs381-05/blockciphers/rijndaelingles%202004.swfhttp://www.cs.bc.edu/~straubin/cs381-05/blockciphers/rijndaelingles%202004.swfhttp://www.cs.bc.edu/~straubin/cs381-05/blockciphers/rijndaelingles%202004.swf