Lesson 6 DES Algorithm
Lesson 6 DES Algorithm
November 2023
Data Encryption Standard
Information Security
November 2023
2
Feistel Cipher Structure November 2023
Data Encryption Standard
◼ Many symmetric block encryption algorithms,
including DES, have a structure first described
by Horst Feistel of IBM in 1973.
Information Security
◼ Block size:
◼ Security & speed depends on the block size.
◼ Key size:
◼ Security & speed depends on the key size.
7
November 2023
Data Encryption Standard
◼ Number of rounds:
◼ Multiple rounds offer increasing security.
Information Security
Feistel network.
◼ There are 16 rounds of processing.
◼ From the original 56-bit key, 16 sub-keys are
generated, one for each round.
10
November 2023
Data Encryption Standard
▪ Main Steps:
▪ Initial Permutation / Variation
▪ Key Transformation
Information Security
▪ Expansion Permutation
▪ S-Bob
▪ P-Box
▪ XOR
▪ Swap
13
November 2023
Data Encryption Standard
◼ Initial Permutation (IP)
◼ It replaces the first bit of the original plain
Information Security
(8, 16, 24, 32, 40, 48, 56, and 64) of the key
is discarded to produce a 56-bit key.
18
November 2023
Data Encryption Standard
◼ From 56-bit key, a different 48-bit Sub Keys
are generated during each round.
Information Security
▪ D0 = 0101010101100110011110001111
▪ C1 = 1110000110011001010101011111
▪ D1 = 1010101011001100111100011110
▪ C2 = 1100001100110010101010111111
▪ D2 = 0101010110011001111000111101
▪ C3 = 0000110011001010101011111111
▪ D3 = 0101011001100111100011110101
29
November 2023
Data Encryption Standard
▪ C4 = 0011001100101010101111111100
▪ D4 = 0101100110011110001111010101
▪ C5 = 1100110010101010111111110000
Information Security
▪ D5 = 0110011001111000111101010101
▪ C6 = 0011001010101011111111000011
▪ D6 = 1001100111100011110101010101
▪ C7 = 1100101010101111111100001100
▪ D7 = 0110011110001111010101010110
▪ C8 = 0010101010111111110000110011
▪ D8 = 1001111000111101010101011001
30
November 2023
Data Encryption Standard
▪ C9 = 0101010101111111100001100110
▪ D9 = 0011110001111010101010110011
▪ C10 = 0101010111111110000110011001
Information Security
▪ D10 = 1111000111101010101011001100
▪ C11 = 0101011111111000011001100101
▪ D11 = 1100011110101010101100110011
▪ C12 = 0101111111100001100110010101
▪ D12 = 0001111010101010110011001111
▪ C13 = 0111111110000110011001010101
▪ D13 = 0111101010101011001100111100
31
November 2023
Data Encryption Standard
▪ C14 = 1111111000011001100101010101
▪ D14 = 1110101010101100110011110001
▪ C15 = 1111100001100110010101010111
Information Security
▪ D15 = 1010101010110011001111000111
▪ C16 = 1111000011001100101010101111
▪ D16 = 0101010101100110011110001111
32
November 2023
Data Encryption Standard
▪ We now form the keys Kn, for 1<=n<=16, by
applying the following permutation table to
each of the concatenated pairs CnDn.
Information Security
of CnDn.
34
November 2023
Data Encryption Standard
▪ Expansion Permutation
▪ Recall that after initial permutation, we had
two 32-bit plain text areas called Left Plain
Information Security
added.
36
November 2023
Data Encryption Standard
▪ This process results in expansion as well as a
permutation of the input bit while creating
output.
Information Security
P-box permutation.
▪ The design of the P-box permutation
ensures that the output of each S-box is
spread across four different S-boxes for the
next round of encryption.
39
November 2023
Data Encryption Standard
▪ XOR and Swap
▪ XOR is a mathematical function that
compares two sets of bits that can be either
Information Security
1s or 0s.
▪ If the bits from both sets match, the XOR
output is 0.
▪ On the other hand, if they don’t match, the
output is 1.
▪ This bit-wise comparison results in
stronger encryption.
40
November 2023
Data Encryption Standard
◼ The process of decryption with DES is
essentially the same as the encryption process.
Information Security
Question / Discussion?