4d mini AES [Lecture Presentation Slides] PDF

Title 4d mini AES [Lecture Presentation Slides]
Course Cryptography
Institution Universiti Teknologi Malaysia
Pages 11
File Size 876.3 KB
File Type PDF
Total Downloads 3
Total Views 143

Summary

The Presentation Slides Belongs To The Title As Above....


Description

18/2/2019

Mini Advanced Encryption Standard (Mini - AES)

1

Roadmap • AES background • Mathematical Background • Mini-AES Components – NibbleSub – ShiftRow – MixColumn – KeyAddition

• Mini-AES Key-schedule Galois Field

2

1

18/2/2019

Mathematical Background • Finite Field GF(24) • Finite field or Galois field (so named in honor of Évariste Galois) is a field that contains a finite number of elements. • have the special property that operations (+,−, × and ÷) on the field elements always cause the result to be also in the field.

Galois Field

5

Finite Field GF(24)

Galois Field

6

2

18/2/2019

Addition in GF(24)

Galois Field

7

Multiplication in GF(24) - 1

Galois Field

8

3

18/2/2019

Multiplication in GF(24) - 2

Galois Field

9

Multiplication in GF(24) - 3

Galois Field

10

4

18/2/2019

Mini-AES

Galois Field

11

Mini-AES – Data unit • Input plaintext block of 16 bits, P = (p0, p1, p2, p3) is represented as a matrix of 2 rows and 2 columns of 4 bits (a nibble), as given in Figure

Galois Field

12

5

18/2/2019

Mini-AES Components • NibbleSub • ShiftRow • MixColumn • KeyAddition Galois Field

13

Mini-AES Components - NibbleSub • NibbleSub is a simple operation that substitutes each input nibble with an output nibble according to a 4 × 4 substitution table (S-box), as given in Table.

Galois Field

14

6

18/2/2019

Mini-AES Components - NibbleSub • The NibbleSub operation is illustrated in Figure, where A = (a0, a1, a2, a3) is the input block and B = (b0, b1, b2, b3) is the output.

• Example: For an input nibble, a0 = 1111, then based on Table 1, the output nibble is b0 = 0111. Galois Field

15

Mini-AES Components - ShiftRow • The first row is unchanged while the second row is rotated left by one nibble. This is illustrated in Figure, where B = (b0, b1, b2, b3) and C = (c0, c1, c2, c3) are the input and output respectively.

• So C = (c0, c1, c2, c3) = (b0, b3, b2, b1) Galois Field

16

7

18/2/2019

Mini-AES Components - MixColumn

• • • •

d0 = (0011⊗ c0 ) + (0010⊗ c1 ) d1 = (0010⊗ c0 ) + (0011⊗ c1 ) d2 = (0011⊗ c2 ) + (0010⊗ c3 ) d3 = (0010⊗ c2 ) + (0011⊗ c3 ). Galois Field

17

Mini-AES Components - KeyAddition

• Example: Given an input block be D = (d0, d1, d2, d3) = 1111 0000 1010 1100, and the round key Ki = (k0, k1, k2, k3) = 0101 0011 1111 0000, then the output block, E = (e0, e1, e2, e3) is: E = D ⊕ Ki = 1111 0000 1010 1100 ⊕ 0101 0011 1111 0000 = 1010 0011 0101 1100 Galois Field

18

8

18/2/2019

Mini-AES Key-schedule • Mini-AES encryption is defined to have 2 rounds, hence three round keys, K0, K1 and K2

Galois Field

19

Mini-AES Key-schedule - Example

Galois Field

20

9

18/2/2019

Mini-AES Key-schedule - Example

Galois Field

21

Mini-AES Encryption K1

K0

K2

Galois Field

22

10

18/2/2019

Mini-AES Decryption • In order to get back the original plaintext, the reverse process of encryption must be performed on the ciphertext. ShiftRow, MixColumn and KeyAddition are same as encryption. • NibbleSub is a nibble substitution operation based on this Table.

Galois Field

23

11...


Similar Free PDFs