Discrete Mathematics with Applications MATH236 Dr. Hung P. - - PowerPoint PPT Presentation

discrete mathematics with applications math236
SMART_READER_LITE
LIVE PREVIEW

Discrete Mathematics with Applications MATH236 Dr. Hung P. - - PowerPoint PPT Presentation

Discrete Mathematics with Applications MATH236 Dr. Hung P. Tong-Viet School of Mathematics, Statistics and Computer Science University of KwaZulu-Natal Pietermaritzburg Campus Semester 1, 2013 Tong-Viet (UKZN) MATH236 Semester 1, 2013 1 /


slide-1
SLIDE 1

Discrete Mathematics with Applications MATH236

  • Dr. Hung P. Tong-Viet

School of Mathematics, Statistics and Computer Science University of KwaZulu-Natal Pietermaritzburg Campus

Semester 1, 2013

Tong-Viet (UKZN) MATH236 Semester 1, 2013 1 / 15

slide-2
SLIDE 2

Table of contents

1

Product Cryptosystems. DES and AES

2

ASCII

3

Feistel ciphers

Tong-Viet (UKZN) MATH236 Semester 1, 2013 2 / 15

slide-3
SLIDE 3

Product Cryptosystems. DES and AES

Product cryptosystems

The first kinds of cryptosystems that we considered were simple substitution ciphers and permutation ciphers They are easily be attacked

Tong-Viet (UKZN) MATH236 Semester 1, 2013 3 / 15

slide-4
SLIDE 4

Product Cryptosystems. DES and AES

Product cryptosystems

The first kinds of cryptosystems that we considered were simple substitution ciphers and permutation ciphers They are easily be attacked We now consider a new kind of cryptosystem that is based on them but it is considerably more difficult to attack;

Tong-Viet (UKZN) MATH236 Semester 1, 2013 3 / 15

slide-5
SLIDE 5

Product Cryptosystems. DES and AES

Product cryptosystems

The first kinds of cryptosystems that we considered were simple substitution ciphers and permutation ciphers They are easily be attacked We now consider a new kind of cryptosystem that is based on them but it is considerably more difficult to attack; Most modern cryptosystems are of the type we now consider

Tong-Viet (UKZN) MATH236 Semester 1, 2013 3 / 15

slide-6
SLIDE 6

Product Cryptosystems. DES and AES

Product cryptosystems

The first kinds of cryptosystems that we considered were simple substitution ciphers and permutation ciphers They are easily be attacked We now consider a new kind of cryptosystem that is based on them but it is considerably more difficult to attack; Most modern cryptosystems are of the type we now consider A product cryptosystem is a block cipher that repeatedly perfoms substitutions and permutations, one after the other, to produce ciphertext

Tong-Viet (UKZN) MATH236 Semester 1, 2013 3 / 15

slide-7
SLIDE 7

Product Cryptosystems. DES and AES

Product cryptosystems

The first kinds of cryptosystems that we considered were simple substitution ciphers and permutation ciphers They are easily be attacked We now consider a new kind of cryptosystem that is based on them but it is considerably more difficult to attack; Most modern cryptosystems are of the type we now consider A product cryptosystem is a block cipher that repeatedly perfoms substitutions and permutations, one after the other, to produce ciphertext

Tong-Viet (UKZN) MATH236 Semester 1, 2013 3 / 15

slide-8
SLIDE 8

Product Cryptosystems. DES and AES

Background

In 1973, the US’s National Bureau of Standards (now NIST) called for the development of an ‘algorithm to be implemented in electronic hardware devices, to be used for cryptographic protection of computer data’ The proposal submitted by IBM was adopted in 1977 as the Data Encryption Standard or DES

Tong-Viet (UKZN) MATH236 Semester 1, 2013 4 / 15

slide-9
SLIDE 9

Product Cryptosystems. DES and AES

Background

In 1973, the US’s National Bureau of Standards (now NIST) called for the development of an ‘algorithm to be implemented in electronic hardware devices, to be used for cryptographic protection of computer data’ The proposal submitted by IBM was adopted in 1977 as the Data Encryption Standard or DES DES is based on an earlier cryptosystem called Lucifer, developed at IBM by Horst Feistel

Tong-Viet (UKZN) MATH236 Semester 1, 2013 4 / 15

slide-10
SLIDE 10

Product Cryptosystems. DES and AES

Background

In 1973, the US’s National Bureau of Standards (now NIST) called for the development of an ‘algorithm to be implemented in electronic hardware devices, to be used for cryptographic protection of computer data’ The proposal submitted by IBM was adopted in 1977 as the Data Encryption Standard or DES DES is based on an earlier cryptosystem called Lucifer, developed at IBM by Horst Feistel DES became the most widely used cryptosystem in the world

Tong-Viet (UKZN) MATH236 Semester 1, 2013 4 / 15

slide-11
SLIDE 11

Product Cryptosystems. DES and AES

Background

In 1973, the US’s National Bureau of Standards (now NIST) called for the development of an ‘algorithm to be implemented in electronic hardware devices, to be used for cryptographic protection of computer data’ The proposal submitted by IBM was adopted in 1977 as the Data Encryption Standard or DES DES is based on an earlier cryptosystem called Lucifer, developed at IBM by Horst Feistel DES became the most widely used cryptosystem in the world It is used to protect PIN’s (Personal Identification Numbers) of banking clients, telephonic transfers of money and communication

  • ver internet

Tong-Viet (UKZN) MATH236 Semester 1, 2013 4 / 15

slide-12
SLIDE 12

Product Cryptosystems. DES and AES

Background

In 1973, the US’s National Bureau of Standards (now NIST) called for the development of an ‘algorithm to be implemented in electronic hardware devices, to be used for cryptographic protection of computer data’ The proposal submitted by IBM was adopted in 1977 as the Data Encryption Standard or DES DES is based on an earlier cryptosystem called Lucifer, developed at IBM by Horst Feistel DES became the most widely used cryptosystem in the world It is used to protect PIN’s (Personal Identification Numbers) of banking clients, telephonic transfers of money and communication

  • ver internet

Tong-Viet (UKZN) MATH236 Semester 1, 2013 4 / 15

slide-13
SLIDE 13

Product Cryptosystems. DES and AES

Background

Every five years, the NIST reviewed DES to decide whether or not it was still considered to be safe against attack In October, 2000, a block cipher system called Rijndael was chosen as the Advanced Encryption Standard or AES

Tong-Viet (UKZN) MATH236 Semester 1, 2013 5 / 15

slide-14
SLIDE 14

Product Cryptosystems. DES and AES

Background

Every five years, the NIST reviewed DES to decide whether or not it was still considered to be safe against attack In October, 2000, a block cipher system called Rijndael was chosen as the Advanced Encryption Standard or AES After some minor modifications, it was adopted as a standard in November 2001

Tong-Viet (UKZN) MATH236 Semester 1, 2013 5 / 15

slide-15
SLIDE 15

Product Cryptosystems. DES and AES

Background

Every five years, the NIST reviewed DES to decide whether or not it was still considered to be safe against attack In October, 2000, a block cipher system called Rijndael was chosen as the Advanced Encryption Standard or AES After some minor modifications, it was adopted as a standard in November 2001 DES is still in use, especially the variant of DES called triple-DES.

Tong-Viet (UKZN) MATH236 Semester 1, 2013 5 / 15

slide-16
SLIDE 16

Product Cryptosystems. DES and AES

Background

Every five years, the NIST reviewed DES to decide whether or not it was still considered to be safe against attack In October, 2000, a block cipher system called Rijndael was chosen as the Advanced Encryption Standard or AES After some minor modifications, it was adopted as a standard in November 2001 DES is still in use, especially the variant of DES called triple-DES.

Tong-Viet (UKZN) MATH236 Semester 1, 2013 5 / 15

slide-17
SLIDE 17

ASCII

ASCII

Both DES and AES are designed to operate on the binary alphabet Z2 = {0, 1} so any message we wish to encrypt with them must be first encoded as binary

Tong-Viet (UKZN) MATH236 Semester 1, 2013 6 / 15

slide-18
SLIDE 18

ASCII

ASCII

Both DES and AES are designed to operate on the binary alphabet Z2 = {0, 1} so any message we wish to encrypt with them must be first encoded as binary The most widely used convention is ASCII, the American Standard Code for Information interchange, which assigns an 8-digit binary number (a byte) to each symbol we wish to encrypt (see Table 6.2 page 123)

Tong-Viet (UKZN) MATH236 Semester 1, 2013 6 / 15

slide-19
SLIDE 19

ASCII

ASCII

Both DES and AES are designed to operate on the binary alphabet Z2 = {0, 1} so any message we wish to encrypt with them must be first encoded as binary The most widely used convention is ASCII, the American Standard Code for Information interchange, which assigns an 8-digit binary number (a byte) to each symbol we wish to encrypt (see Table 6.2 page 123) For example, the space, ‘a’ and ‘A’ are encoded by 00100000, 0100001 and 01100001, respectively

Tong-Viet (UKZN) MATH236 Semester 1, 2013 6 / 15

slide-20
SLIDE 20

ASCII

ASCII

Both DES and AES are designed to operate on the binary alphabet Z2 = {0, 1} so any message we wish to encrypt with them must be first encoded as binary The most widely used convention is ASCII, the American Standard Code for Information interchange, which assigns an 8-digit binary number (a byte) to each symbol we wish to encrypt (see Table 6.2 page 123) For example, the space, ‘a’ and ‘A’ are encoded by 00100000, 0100001 and 01100001, respectively We assume from now on that all the cryptosystems we consider

  • perate on the binary alphabet Z2 = {0, 1}

Tong-Viet (UKZN) MATH236 Semester 1, 2013 6 / 15

slide-21
SLIDE 21

ASCII

ASCII

Both DES and AES are designed to operate on the binary alphabet Z2 = {0, 1} so any message we wish to encrypt with them must be first encoded as binary The most widely used convention is ASCII, the American Standard Code for Information interchange, which assigns an 8-digit binary number (a byte) to each symbol we wish to encrypt (see Table 6.2 page 123) For example, the space, ‘a’ and ‘A’ are encoded by 00100000, 0100001 and 01100001, respectively We assume from now on that all the cryptosystems we consider

  • perate on the binary alphabet Z2 = {0, 1}

Tong-Viet (UKZN) MATH236 Semester 1, 2013 6 / 15

slide-22
SLIDE 22

Feistel ciphers

Feistel ciphers

DES is a modified of Feistel cipher We first describe Feistel cryptosystems

Tong-Viet (UKZN) MATH236 Semester 1, 2013 7 / 15

slide-23
SLIDE 23

Feistel ciphers

Feistel ciphers

DES is a modified of Feistel cipher We first describe Feistel cryptosystems A Feistel cryptosystem consists of the following:

Tong-Viet (UKZN) MATH236 Semester 1, 2013 7 / 15

slide-24
SLIDE 24

Feistel ciphers

Feistel ciphers

DES is a modified of Feistel cipher We first describe Feistel cryptosystems A Feistel cryptosystem consists of the following:

Tong-Viet (UKZN) MATH236 Semester 1, 2013 7 / 15

slide-25
SLIDE 25

Feistel ciphers

Feistel ciphers

A block length t A number of rounds, r

Tong-Viet (UKZN) MATH236 Semester 1, 2013 8 / 15

slide-26
SLIDE 26

Feistel ciphers

Feistel ciphers

A block length t A number of rounds, r A method that generates from a key K a number of round keys K1, K2, · · · , Kr

Tong-Viet (UKZN) MATH236 Semester 1, 2013 8 / 15

slide-27
SLIDE 27

Feistel ciphers

Feistel ciphers

A block length t A number of rounds, r A method that generates from a key K a number of round keys K1, K2, · · · , Kr A round function fKi that takes binary vectors of length t as input and produces binary vectors of length t as output.

Tong-Viet (UKZN) MATH236 Semester 1, 2013 8 / 15

slide-28
SLIDE 28

Feistel ciphers

Feistel ciphers

A block length t A number of rounds, r A method that generates from a key K a number of round keys K1, K2, · · · , Kr A round function fKi that takes binary vectors of length t as input and produces binary vectors of length t as output. The function fKi does not have to be invertible, and should be chosen to make the cipher difficult to attack

Tong-Viet (UKZN) MATH236 Semester 1, 2013 8 / 15

slide-29
SLIDE 29

Feistel ciphers

Feistel ciphers

A block length t A number of rounds, r A method that generates from a key K a number of round keys K1, K2, · · · , Kr A round function fKi that takes binary vectors of length t as input and produces binary vectors of length t as output. The function fKi does not have to be invertible, and should be chosen to make the cipher difficult to attack

Tong-Viet (UKZN) MATH236 Semester 1, 2013 8 / 15

slide-30
SLIDE 30

Feistel ciphers

Feistel ciphers

An encryption function EK that operates on blocks of length 2t. Encryption is performed as follows:

Tong-Viet (UKZN) MATH236 Semester 1, 2013 9 / 15

slide-31
SLIDE 31

Feistel ciphers

Feistel ciphers

An encryption function EK that operates on blocks of length 2t. Encryption is performed as follows:

1

Let P = L0||R0 be a block of plaintext consisting of a left half L0 of length t, and a right half R0 also of length t

Tong-Viet (UKZN) MATH236 Semester 1, 2013 9 / 15

slide-32
SLIDE 32

Feistel ciphers

Feistel ciphers

An encryption function EK that operates on blocks of length 2t. Encryption is performed as follows:

1

Let P = L0||R0 be a block of plaintext consisting of a left half L0 of length t, and a right half R0 also of length t

2

For each i ≥ 1, we now calculate Li := Ri−1 and Ri := Li−1 fKi(Ri−1)

Tong-Viet (UKZN) MATH236 Semester 1, 2013 9 / 15

slide-33
SLIDE 33

Feistel ciphers

Feistel ciphers

An encryption function EK that operates on blocks of length 2t. Encryption is performed as follows:

1

Let P = L0||R0 be a block of plaintext consisting of a left half L0 of length t, and a right half R0 also of length t

2

For each i ≥ 1, we now calculate Li := Ri−1 and Ri := Li−1 fKi(Ri−1) (Each such pair of calculations is a round of encryption)

Tong-Viet (UKZN) MATH236 Semester 1, 2013 9 / 15

slide-34
SLIDE 34

Feistel ciphers

Feistel ciphers

An encryption function EK that operates on blocks of length 2t. Encryption is performed as follows:

1

Let P = L0||R0 be a block of plaintext consisting of a left half L0 of length t, and a right half R0 also of length t

2

For each i ≥ 1, we now calculate Li := Ri−1 and Ri := Li−1 fKi(Ri−1) (Each such pair of calculations is a round of encryption)

3

Finally, we set EK(P) = EK(L0||R0) = Rr||Lr

Tong-Viet (UKZN) MATH236 Semester 1, 2013 9 / 15

slide-35
SLIDE 35

Feistel ciphers

Feistel ciphers

An encryption function EK that operates on blocks of length 2t. Encryption is performed as follows:

1

Let P = L0||R0 be a block of plaintext consisting of a left half L0 of length t, and a right half R0 also of length t

2

For each i ≥ 1, we now calculate Li := Ri−1 and Ri := Li−1 fKi(Ri−1) (Each such pair of calculations is a round of encryption)

3

Finally, we set EK(P) = EK(L0||R0) = Rr||Lr

Tong-Viet (UKZN) MATH236 Semester 1, 2013 9 / 15

slide-36
SLIDE 36

Feistel ciphers

Feistel ciphers

A decryption function DK that reverses the encryption process. In a Feistel cipher, the decryption process is identical to the encryption process with the single exception that the key schedule is reversed, i.e., instead of using K1 in round 1, K2 in round 2 and in general, Ki in round i, we use

Tong-Viet (UKZN) MATH236 Semester 1, 2013 10 / 15

slide-37
SLIDE 37

Feistel ciphers

Feistel ciphers

A decryption function DK that reverses the encryption process. In a Feistel cipher, the decryption process is identical to the encryption process with the single exception that the key schedule is reversed, i.e., instead of using K1 in round 1, K2 in round 2 and in general, Ki in round i, we use Kr in round 1, Kr−1 in round 2, and in general, Kr + 1 − i in round i

Tong-Viet (UKZN) MATH236 Semester 1, 2013 10 / 15

slide-38
SLIDE 38

Feistel ciphers

Feistel ciphers

A decryption function DK that reverses the encryption process. In a Feistel cipher, the decryption process is identical to the encryption process with the single exception that the key schedule is reversed, i.e., instead of using K1 in round 1, K2 in round 2 and in general, Ki in round i, we use Kr in round 1, Kr−1 in round 2, and in general, Kr + 1 − i in round i

Tong-Viet (UKZN) MATH236 Semester 1, 2013 10 / 15

slide-39
SLIDE 39

Feistel ciphers

Feistel ciphers

Example Suppose that Alice wishes to send the message ‘Ok’ to Bob using a Feistel cipher with t = 4, r = 3 and f (b1, b2, b3, b4) = (b2, b1 b3, 0, b1 b2) For simplicity, we have chosen a round function that has no explicit dependence on a key

Tong-Viet (UKZN) MATH236 Semester 1, 2013 11 / 15

slide-40
SLIDE 40

Feistel ciphers

Feistel ciphers

Example Suppose that Alice wishes to send the message ‘Ok’ to Bob using a Feistel cipher with t = 4, r = 3 and f (b1, b2, b3, b4) = (b2, b1 b3, 0, b1 b2) For simplicity, we have chosen a round function that has no explicit dependence on a key She begins by encoding the message in ASCII as 0100111101101011

Tong-Viet (UKZN) MATH236 Semester 1, 2013 11 / 15

slide-41
SLIDE 41

Feistel ciphers

Feistel ciphers

Example Suppose that Alice wishes to send the message ‘Ok’ to Bob using a Feistel cipher with t = 4, r = 3 and f (b1, b2, b3, b4) = (b2, b1 b3, 0, b1 b2) For simplicity, we have chosen a round function that has no explicit dependence on a key She begins by encoding the message in ASCII as 0100111101101011 Her Feistel cipher will operates on blocks of length 2t = 8,

Tong-Viet (UKZN) MATH236 Semester 1, 2013 11 / 15

slide-42
SLIDE 42

Feistel ciphers

Feistel ciphers

Example Suppose that Alice wishes to send the message ‘Ok’ to Bob using a Feistel cipher with t = 4, r = 3 and f (b1, b2, b3, b4) = (b2, b1 b3, 0, b1 b2) For simplicity, we have chosen a round function that has no explicit dependence on a key She begins by encoding the message in ASCII as 0100111101101011 Her Feistel cipher will operates on blocks of length 2t = 8, so she breaks the message into two bytes,

Tong-Viet (UKZN) MATH236 Semester 1, 2013 11 / 15

slide-43
SLIDE 43

Feistel ciphers

Feistel ciphers

Example Suppose that Alice wishes to send the message ‘Ok’ to Bob using a Feistel cipher with t = 4, r = 3 and f (b1, b2, b3, b4) = (b2, b1 b3, 0, b1 b2) For simplicity, we have chosen a round function that has no explicit dependence on a key She begins by encoding the message in ASCII as 0100111101101011 Her Feistel cipher will operates on blocks of length 2t = 8, so she breaks the message into two bytes, she will encrypt each separately

Tong-Viet (UKZN) MATH236 Semester 1, 2013 11 / 15

slide-44
SLIDE 44

Feistel ciphers

Feistel ciphers

Example Suppose that Alice wishes to send the message ‘Ok’ to Bob using a Feistel cipher with t = 4, r = 3 and f (b1, b2, b3, b4) = (b2, b1 b3, 0, b1 b2) For simplicity, we have chosen a round function that has no explicit dependence on a key She begins by encoding the message in ASCII as 0100111101101011 Her Feistel cipher will operates on blocks of length 2t = 8, so she breaks the message into two bytes, she will encrypt each separately

Tong-Viet (UKZN) MATH236 Semester 1, 2013 11 / 15

slide-45
SLIDE 45

Feistel ciphers

Feistel ciphers

Example Consider the first byte: 01001111 She has L0 = 0100 and R0 = 1111

Tong-Viet (UKZN) MATH236 Semester 1, 2013 12 / 15

slide-46
SLIDE 46

Feistel ciphers

Feistel ciphers

Example Consider the first byte: 01001111 She has L0 = 0100 and R0 = 1111 Thus L1 = R0 = 1111 and R1 = L0

  • f (R0) = 0100
  • f (1111) = 0100
  • 1000 = 1100

Tong-Viet (UKZN) MATH236 Semester 1, 2013 12 / 15

slide-47
SLIDE 47

Feistel ciphers

Feistel ciphers

Example Consider the first byte: 01001111 She has L0 = 0100 and R0 = 1111 Thus L1 = R0 = 1111 and R1 = L0

  • f (R0) = 0100
  • f (1111) = 0100
  • 1000 = 1100

Procedding in this fashion, she constructs the following table

Tong-Viet (UKZN) MATH236 Semester 1, 2013 12 / 15

slide-48
SLIDE 48

Feistel ciphers

Feistel ciphers

Example Consider the first byte: 01001111 She has L0 = 0100 and R0 = 1111 Thus L1 = R0 = 1111 and R1 = L0

  • f (R0) = 0100
  • f (1111) = 0100
  • 1000 = 1100

Procedding in this fashion, she constructs the following table

Tong-Viet (UKZN) MATH236 Semester 1, 2013 12 / 15

slide-49
SLIDE 49

Feistel ciphers

Feistel cipher

i Li Ri 0100 1111 1 1111 1100 2 1100 0011 3 0011 1000 Finally, E(01001111) = R3||L3 = 10000011

Tong-Viet (UKZN) MATH236 Semester 1, 2013 13 / 15

slide-50
SLIDE 50

Feistel ciphers

Feistel cipher

i Li Ri 0100 1111 1 1111 1100 2 1100 0011 3 0011 1000 Finally, E(01001111) = R3||L3 = 10000011 Similarly, E(01101011) = 10100110

Tong-Viet (UKZN) MATH236 Semester 1, 2013 13 / 15

slide-51
SLIDE 51

Feistel ciphers

Feistel cipher

i Li Ri 0100 1111 1 1111 1100 2 1100 0011 3 0011 1000 Finally, E(01001111) = R3||L3 = 10000011 Similarly, E(01101011) = 10100110 She send Bob the ciphertext 1000001110100110

Tong-Viet (UKZN) MATH236 Semester 1, 2013 13 / 15

slide-52
SLIDE 52

Feistel ciphers

Feistel cipher

i Li Ri 0100 1111 1 1111 1100 2 1100 0011 3 0011 1000 Finally, E(01001111) = R3||L3 = 10000011 Similarly, E(01101011) = 10100110 She send Bob the ciphertext 1000001110100110

Tong-Viet (UKZN) MATH236 Semester 1, 2013 13 / 15

slide-53
SLIDE 53

Feistel ciphers

Feistel cipher

Example Continuing the previous example, suppose that bob receives the ciphertext 1000001110100110 from Alice To decipher it, he performs the same operations as the encryption process, but reverses the order in which the round keys are used

Tong-Viet (UKZN) MATH236 Semester 1, 2013 14 / 15

slide-54
SLIDE 54

Feistel ciphers

Feistel cipher

Example Continuing the previous example, suppose that bob receives the ciphertext 1000001110100110 from Alice To decipher it, he performs the same operations as the encryption process, but reverses the order in which the round keys are used In this example, there are no round keys, so the encryption and decryption processes are identical

Tong-Viet (UKZN) MATH236 Semester 1, 2013 14 / 15

slide-55
SLIDE 55

Feistel ciphers

Feistel cipher

Example Continuing the previous example, suppose that bob receives the ciphertext 1000001110100110 from Alice To decipher it, he performs the same operations as the encryption process, but reverses the order in which the round keys are used In this example, there are no round keys, so the encryption and decryption processes are identical As with the encryption, he first breaks the ciphertext up into blocks

  • f length 2t = 8 and recovers the two bytes 10000011 and 10100110

Tong-Viet (UKZN) MATH236 Semester 1, 2013 14 / 15

slide-56
SLIDE 56

Feistel ciphers

Feistel cipher

Example Continuing the previous example, suppose that bob receives the ciphertext 1000001110100110 from Alice To decipher it, he performs the same operations as the encryption process, but reverses the order in which the round keys are used In this example, there are no round keys, so the encryption and decryption processes are identical As with the encryption, he first breaks the ciphertext up into blocks

  • f length 2t = 8 and recovers the two bytes 10000011 and 10100110

Consider the first byte, L0 = 1000 and R0 = 0011

Tong-Viet (UKZN) MATH236 Semester 1, 2013 14 / 15

slide-57
SLIDE 57

Feistel ciphers

Feistel cipher

Example Continuing the previous example, suppose that bob receives the ciphertext 1000001110100110 from Alice To decipher it, he performs the same operations as the encryption process, but reverses the order in which the round keys are used In this example, there are no round keys, so the encryption and decryption processes are identical As with the encryption, he first breaks the ciphertext up into blocks

  • f length 2t = 8 and recovers the two bytes 10000011 and 10100110

Consider the first byte, L0 = 1000 and R0 = 0011 Then L1 = R0 = 0011 and R1 = L0

  • f (R0) = 1000
  • f (0011) = 1100

Tong-Viet (UKZN) MATH236 Semester 1, 2013 14 / 15

slide-58
SLIDE 58

Feistel ciphers

Feistel cipher

Example Continuing the previous example, suppose that bob receives the ciphertext 1000001110100110 from Alice To decipher it, he performs the same operations as the encryption process, but reverses the order in which the round keys are used In this example, there are no round keys, so the encryption and decryption processes are identical As with the encryption, he first breaks the ciphertext up into blocks

  • f length 2t = 8 and recovers the two bytes 10000011 and 10100110

Consider the first byte, L0 = 1000 and R0 = 0011 Then L1 = R0 = 0011 and R1 = L0

  • f (R0) = 1000
  • f (0011) = 1100

Tong-Viet (UKZN) MATH236 Semester 1, 2013 14 / 15

slide-59
SLIDE 59

Feistel ciphers

Feistel cipher

i Li Ri 1000 0011 1 0011 1100 2 1100 1111 3 1111 0100 So the first byte of the plaintext is R3||L3 = 01001111.

Tong-Viet (UKZN) MATH236 Semester 1, 2013 15 / 15

slide-60
SLIDE 60

Feistel ciphers

Feistel cipher

i Li Ri 1000 0011 1 0011 1100 2 1100 1111 3 1111 0100 So the first byte of the plaintext is R3||L3 = 01001111. In the same fashion, he decrypts the second byte 10100110 to obtain the plaintext 01101011.

Tong-Viet (UKZN) MATH236 Semester 1, 2013 15 / 15

slide-61
SLIDE 61

Feistel ciphers

Feistel cipher

i Li Ri 1000 0011 1 0011 1100 2 1100 1111 3 1111 0100 So the first byte of the plaintext is R3||L3 = 01001111. In the same fashion, he decrypts the second byte 10100110 to obtain the plaintext 01101011. Refering to the ASCII table, Bob is now able to read Alice’s message: ‘Ok’

Tong-Viet (UKZN) MATH236 Semester 1, 2013 15 / 15

slide-62
SLIDE 62

Feistel ciphers

Feistel cipher

i Li Ri 1000 0011 1 0011 1100 2 1100 1111 3 1111 0100 So the first byte of the plaintext is R3||L3 = 01001111. In the same fashion, he decrypts the second byte 10100110 to obtain the plaintext 01101011. Refering to the ASCII table, Bob is now able to read Alice’s message: ‘Ok’

Tong-Viet (UKZN) MATH236 Semester 1, 2013 15 / 15