18
1 The DES algorithm The DES algorithm (Data Encryption Standard) (Data Encryption Standard) a conventional (i.e., 1 a conventional (i.e., 1- key) substitution cipher key) substitution cipher represented by a simplified example represented by a simplified example David Morgan S- DES* process flow DES* process flow Credit to Cryptography and Network Security, Principles and Practice , William Stallings, Prentice Hall, 1999 for figure and precision of explanation. *simplified version of the DES algorithm for tutorial purposes, by Edward Schaefer, Santa Clara University

The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

1

The DES algorithmThe DES algorithm

(Data Encryption Standard)(Data Encryption Standard)

a conventional (i.e., 1a conventional (i.e., 1--key) substitution cipherkey) substitution cipher

represented by a simplified examplerepresented by a simplified example

David Morgan

SS--DES* process flowDES* process flow

Credit to Cryptography and Network Security,

Principles and Practice, William Stallings,

Prentice Hall, 1999 for figure and precision of

explanation.

*simplified version of the DES algorithm for

tutorial purposes, by Edward Schaefer, Santa

Clara University

Page 2: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

2

Credit to Cryptography and Network Security,

Principles and Practice, William Stallings,

Prentice Hall, 1999 for figures and precision of

explanation.

SS--DES DES

encryption encryption

component component

process flowprocess flow

ENCRYPTENCRYPT

Following slide images are screenshots from an exercise at

http://homepage.smc.edu/morgan_david/vpn/assignments/assgt-sdes.htm

Page 3: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

3

Initial permutation IPInitial permutation IP

0 1 1 0 1 1 0 1

1 1 1 0 0 1 1 0

expansion/expansion/permutaionpermutaion E/PE/P

Page 4: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

4

XOR with XOR with subkeysubkey K1K1

...etc

ss--box substitutionsbox substitutions

Page 5: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

5

Permutation P4Permutation P4

XORXOR

Page 6: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

6

leftleft--nibble replacementnibble replacement

Swap SWSwap SW

Page 7: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

7

expansion/expansion/permutaionpermutaion E/PE/P

XOR with XOR with subkeysubkey K2K2

Page 8: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

8

ss--box substitutionsbox substitutions

Permutation P4Permutation P4

Page 9: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

9

XORXOR

leftleft--nibble replacementnibble replacement

Page 10: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

10

Inverse initial permutation IPInverse initial permutation IP--11

DECRYPTDECRYPT

Page 11: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

11

Initial permutation IPInitial permutation IP

expansion/expansion/permutaionpermutaion E/PE/P

Page 12: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

12

XOR with XOR with subkeysubkey K2K2

...etc

ss--box substitutionsbox substitutions

Page 13: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

13

Permutation P4Permutation P4

XORXOR

Page 14: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

14

leftleft--nibble replacementnibble replacement

Swap SWSwap SW

Page 15: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

15

expansion/expansion/permutaionpermutaion E/PE/P

XOR with XOR with subkeysubkey K1K1

Page 16: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

16

ss--box substitutionsbox substitutions

Permutation P4Permutation P4

Page 17: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

17

XORXOR

leftleft--nibble replacementnibble replacement

Page 18: The DES algorithm - Santa Monica Collegehomepage.smc.edu/morgan_david/linux/a26-sdes.pdf · The DES algorithm (Data Encryption Standard) a conventional (i.e., 1 -key) substitution

18

Inverse initial permutation IPInverse initial permutation IP--11

Matches original input, decrypt succeeded