SlideShare a Scribd company logo
Data Encryption Standard
(DES)
M.Golyani
Tehran University – Kish campus
Fall 2013
Copyright ©GPL
Mohammad.golyani@gmail.com
S-Box P-Box
DES
DES

-
DES

NBS

NIST

NSA

-

-

NBS

-

IBM

-
DES

-

-

S-Box
NSA

DES

-

-
DES

-

-
-

XOR

-
k

f

-

k
0 1 1 0 0 1 0 1

1 0 0 1 1 0 1 0

K=2

F = mirror(each K bit of input)

1 0 0 1 1 0 1 0

K=2

F = mirror(each K bit of input)
-

•

•
•
•
(R)

•

(L)
XOR

•
m

0

0

1

1

1

1

0

0

0

1

0

0

1

1

0

f

1

-

R0

L0

K0
L1

R1

DES

K1

-

Kn

Kn-1
Rn

C

0

1

Ln XOR f(Kn,Rn)
1

0

0

1

1

0

C = (Rn+1,Ln+1)

Kn
Li+1 = Ri
Ri+1 = Li XOR f ( Ri , Ki )
c
Rn

0

0

1

1

1

1

0

0

0

1

0

0

1

1

0

Ln XOR f(Kn,Rn)

1

-

Kn
Ln-1

-

Rn-1
Kn-1

-

f
K0

Ri = Li+1

L0

m

0

1

R0
1

0

0

1

m = (L0 , R0)
1

0

Li = Ri+1 XOR f ( Li+1, Ki )
DES Feistel function
f
Backdoor

DES

-

P-Box S-Box

DES

-
P-Box S-Box
P-Box S-Box

-

S-Box

-

P-Box
Confusion
P-Box

S-Box
Diffusion
P-Box S-Box
P-Box

S-Box
BlowFish

S-Box

P-Box

-

-

DES
P-Box
S-Box

S-Box

-
P-Box S-Box
P-Box

Straight
P-Box
I0

O0

0

0

I1

O1

1

0

I2

O2

1

1

I3

O3

0

1

I4

O4

0

0

I5

O5

1

1

I6

O6

0

0

I7

O7

1

-
P-Box S-Box
P-Box

S-Box

-

y = 3x2 + 4x -1
S-Box

S-Box

-

-

-
P-Box S-Box
m0

m1

m2

m1

m0

m2
Lookup Table:
00

01

10

11

0

010

101

110

001

1

111

100

011

000

m0

n

m0
m1

0

m2

0

Straight
S-Box

1
1

n
DES

S-Box

S-Box

S-Box

-

S-Box

DES

-

S1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

14

4

13

1

2

15

11

8

3

10

6

12

5

9

0

7

1

0

15

7

4

14

2

13

1

10

6

12

11

9

5

3

8

2

4

1

14

8

13

6

2

11

15

12

9

7

3

10

5

0

3

15

12

8

2

4

9

1

7

5

11

3

14

10

0

6

13

m1,m2,m3,m4

m0,m5

S-Box

Diffusion
DES

S-Box

DES
S-

S-Box

backdoor
Box
IBM

S-Box
S-Box

NSA
DES
DES

-

DES

-

DES

XOR
-

-
DES
DES

Ri
f

XOR

Li

Ri
DES
P-Box

-

(Initial
Permutation)
58

50

42

34

26

18

60

52

44

36

28

62

54

46

38

64

56

48

57

49

59

IP

10

2

20

12

4

30

22

14

6

40

32

24

16

8

41

33

25

17

9

1

51

43

35

27

19

11

3

61

53

45

37

29

21

13

5

63

55

47

39

31

23

15

7

-
DES
DES
-

“_MAGMAG_”
IP

DES

M

77

01001101

A

65

01000001

G

71

01000111

_

95

01011111

-

0101111101001101010000010100011101001101010000010100011101011111
DES
IP
IP

–

58

50

42

34

26

18

10

2

60

52

44

36

28

20

12

4

62

54

46

38

30

22

14

6

64

56

48

40

32

24

16

8

57

49

41

33

25

17

9

1

59

51

43

35

27

19

11

3

61

53

45

37

29

21

13

5

63

55

47

39

31

23

15

7

IP

-
DES
R

L

P-Box

-

”4950515253545556”
P-Box
(L0)

(R0)
m

0

1

1

0

0

32 bit

1

0

DES

1

-

32 bit
R0

L0

K0
L1

f

R1

DES

-

K1

f
K16

Ri

XOR

-

Li
Ri+1

R14

L14 XOR f(K14,R14)

(L15)

C

0

1

(R15)
1

0

0

1

1

0

Ri

Li+1

-
DES
XOR

L0

f

K0 R0

-

L0

K0

R0

f
L1

R1
Li+1 = Ri

L1 = R0

Ri+1 = Li XOR f ( Ri , Ki )

R1 = L0 XOR f ( R0 , K0 )
DES
K0
XOR

K

K0

K0

-

-

K0 = 101100 001001 001011 001010 011100 001000 000101 000101

K8 = 001110 010001 101010 001010 010100 011100 001000 111000

K1 = 101100 000001 101011 010010 011101 101000 000001 001100

K9 = 001100 000011 100011 001100 000100 010001 110000 001100

K
“4950515253545556”= 000100 000110 110001 010100 100010 000011 000010 110100 -

K2 = 001101 000111 101001 010000 000000 001011 010111 001010

10

K3 = 000001 100111 010101 010100 001011 001011 010000 100001

K11= 010001 000110 110100 110100 001000 010110 101010 100101

K4 = 010011 100100 010101 010101 011010 100100 110001 100010

K12= 110001 101010 010100 100101 001100 100000 100010 010011

K5 = 010011 111100 000100 101001 000011 001100 100100 011010

K13= 110010 111000 011000 100011 100001 110000 000100 010111

K6 = 100010 111000 000110 101011 100001 010101 010001 010000

K14= 111010 011001 001010 101010 000001 110010 001111 000000

K7 = 101110 010000 101010 001011 110010 011000 001001 100000

K15= 101000 011001 001010 101010 010101 000010 001001 000011
DES
-

L0

f
L1

K0

R0

R1
f

DES
DES
XOR

-

XOR

f
-

S-Box

S-Box
P-Box

-
DES
DES
-

R0

E

48-bit

E(R0)
DES
DES
m

0

1

1

0

32 bit

0

1

0

1

32 bit
R0

L0

K0
L1

R1
K1

K16

R14

L14 XOR f(K14,R14)

(L15)

C

0

1

(R15)
1

0

0

1

1

0
DES
XOR

K0 E(R0)

0

0

0

0

1
0

1

1

1

1

1

1

1

1

1

0

0

0

1

0

1

1

1

48-bit

48-bit

48-bit

E(R0)

K0

E(R0) xor K0

S-Box

f
DES
S-Box

P-Box
f

0

0

0

0

S1

1

0

1

1

S2

S3

S4

S5

Straigh P-Box

1

S6

1

1

1

1

0

0

0

1

S7

1

0

1

S8

1

1
DES
S-Box
14 4 13 1

S1

0 15 7
4

2 15 11 8

3 10 6 12 5

9

0

7

15 1

4 14 2 13 1 10 6 12 11 9

5

3

8

3 13 4

3 10 5

0

1 14 8 13 6

15 12 8

2

4

9

2 11 15 12 9
1

3 15 4

1 13 12 7 11 4

2

8

7 13 14 3

0

8

5 14 12 11 15 1

13 8 11 5

6 15 0

2 12 5 10 14 7

9

3

4

13 6

4

9

8 15 3

0 11 1

1 10 13 0

6

7

2 12 4

S5

0

7 10 11 6

1

14 11 2 12 4

4

2

6 10 2

7 13 1

1 11 10 13 7

11 8 12 7

4 15 14 3 11 5
8

5

5

0 15 10 3

8 15 9 12 5

S7

1

9

5

3

0 14

9 10 4

6

S6

2

9 14 15 5

5

0 15 14 2

9

2

3 12

S8

7 11 4
2

5 14 9

2

8

5 11 12 4 15

7

2 12 1 10 14 9

1

1 14 7

4

2

1 13 14 0 11 3

8 12 3

7

0

4 12 5

9 12 14 2

0

5 11
8

4 10 1 13 11 6

5 15 10 11 14 1

7

4

2 14

6

6 15 11 1 10 9

4 14 7

8

5

1 15 13 8 10 3

4

9

2 15

7 12 9

6

0

3

0 13 3

5 12 2 15 8
8

4

7 12 0

9 11 5

8

2 12 9
8

3

9

5 10

6

2

2

13 2

7

3

8 12 6

2 11 6

9 10 1

1 10 6

5 11 12 7

12 1 10 15 9
10 15 4

5

2 13 12 0

6 10 1 13 8

1

7 14 10 15 6

4 10 7

8

7

3 14 5

5 10 6

1 10 14 3

6 11 13 8

3 15 0

9

0 12 11 7 13 15 1

4

13 0 11 7

4 11 13 12 3

6

9

9

3

8 13 3 12 9

1

2 12

10 6

6

5

4 11 2 14 15 0
9

S4

3 15 13 0 14 9

1 14 2 13 6 15 0

4

0 14 7 11 10 4 13 1
13 8 10 1

13 7

4

8 14 12 0

6 13

3 15 5

8

7 15 2

5 11 3 14 10 0

9 14 6

9

S2

8 14 6 11 3

7

10 0

S3

7

-

7

6

3 14 5

0

8 13

0 12 7

6 11 0 14 9

6 10 13 15 3

4 10 8 13 15 12 9

0

3

5

5

2
8

6 11
DES
S-Box
0

-

0
0

S1 0

S1

1

2

3

0 14 4 13 1
1

0 15 7

2

4

4

5

7

2 15 11 8

8

9 10 11 12 13 14 15

3 10 6 12 5

9

0

7

4 14 2 13 1 10 6 12 11 9

5

3

8

3 10 5

0

1 14 8 13 6

3 15 12 8

6

2

4

9

2 11 15 12 9
1

7

7

5 11 3 14 10 0

6 13

S-Box

P-Box

S-Box
1 0 1 1 1 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 0 0 1 1 1 1 1 0 1 1
DES
m

0

1

1

0

32 bit

0

1

0

1

32 bit
R0

L0

K0
L1

R1
K1

K16

R14

L14 XOR f(K14,R14)

(L15)

C

0

1

(R15)
1

0

0

1

1

0
DES
P-Box

1

-

7

20

21

1

1

0

1

29

12

28

17

1

0

1

0

1

15

23

26

1

1

1

0

5

18

31

10

1

1

1

1

2

8

24

14

0

1

0

1

32

27

3

9

1

0

1

0

19

13

30

6

1

1

0

1

22

S-Box

16

11

4

25

0

0

1

1

P-Box

f
DES
DES
L0

K0

R0

f
L1

R1
Li+1 = Ri

L1 = R0

Ri+1 = Li XOR f ( Ri , Ki )

R1 = L0 XOR f ( R0 , K0 )
DES
XOR

L0
R1
1

1

0

1

1

0

1

0

1

1

1

0

1

1

1

1

0

1

0

1

1

0

1

0

1

1

0

1

0

0

1

1

0

=

0

1

1

1

0

1

1

1

0

1

0

1

0

0

0

0

1

0

1

0

1

f(K0,R0)

1

0

XOR

0

0

L0

1

0

=

0

1

0

0

R1
DES
m

0

1

1

0

32 bit

0

1

0

1

32 bit

DES

R0

L0

K0
L1

K16

R14

L14 XOR f(K14,R14)

(L15)
0

1

P-Box

R1
K1

C

-

(R15)
1

0

0

1

1

0

IP

P-Box

-
DES
0

1

0

1

0

0

1

0

0

0

1

1

0

1

1

1

0

0

0

0

0

0

0

0

0

0

1

1

0

0

1

1

0

0

0

0

1

1

0

0

1

1

0

0

0

1

1

0

0

1

0

0

1

1

R15 =

0

1

L15 =

1

0

1

0

1

1

1

1

0

1

0

1

0

1

0

0

1

1

0

0

0

1

1

0

1

1

1

0

0

0

0

0

0

0

0

0

0

1

1

0

0

1

1

0

0

0

0

1

1

0

0

1

1

0

0

0

1

1

0

0

1

0

0

1

1

0

1

0

1

1

1

1

0

1

0

1

0

1

0

0

40

8

48

16

56

24

64

32

1

1

0

0

0

1

1

0

39

7

47

15

55

23

63

31

1

1

1

0

0

0

0

0

38

6

46

14

54

22

62

30

0

0

0

0

0

1

1

0

37

5

45

13

53

21

61

29

0

1

1

0

0

0

0

1

36

4

44

12

52

20

60

28

1

0

0

1

1

0

0

0

35

3

43

11

51

19

59

27

1

1

0

0

1

0

0

1

34

2

42

10

50

18

58

26

1

0

1

0

1

1

1

1

33

1

41

9

49

17

57

25

f

IP-1

64 bit
DES
DES
DES

“_MAGMAG_”

“4950515253545556”

01000101 00100011 10100011 00010101 10010000 01001001 11101100 00111101
“4523a3159049ec3d”

_MAGMAG_

5f4d41474d41475f

4950515253545556

IPQRSTUV

4523a3159049ec3d
DES
DES

-

RSA

-

DES

RSA

DES

DESCHALL

-
DES
DES

DESCHALL

-

-

Usenix
DES
DES

RSA

Distributed.net

DES

-

DES

RSA

EFF
Deepcrack

-

-
DES

DES
DES

-
DES
DES

cryptome

PicoComputing

FPGA

-

DES

FPGA

AES

3DES

-

DES
DES

ARM
Secure MCU with 32-bit ARM SC300 CPU, SWP interface, NESCRYPT cryptoprocessor and high-density Flash memory
DES

-

XOR
Electronic Code Book

ECB

DES
CBC, CFB, OFB, CTR

DES
DES

DES

-

-
-

Introduction to modern cryptography, Jonathan Katz, Yehuda Lindell

-

The Day DES Died, SANS Institute InfoSec Reading Room

-

Practically secure Feistel ciphers, Lars R. Knudsen, Arhus University, Denmark

-

Implementation of Data Encryption Standard Using Reversible Gate Logic, Nuthan.A.C

-

DES, CSIS 5857: Encoding and Encryption

-

DES Walk Through, Kathryn Neugent, April 16, 2011

-

United States Patent, 3,798,359 Mar.19,1974

-

Cryptography and Network Security, Behruz Forouzan

-

,…

More Related Content

PDF
Tensorflow and python : fault detection system - PyCon Taiwan 2017
PPTX
Data compession
PPTX
AES Encryption
PPTX
Hash map
PDF
September 24, 2013 Special Meeting Agenda packet
PDF
MaskedVByte: SIMD-accelerated VByte
PPTX
SQL techniques for faster applications
Tensorflow and python : fault detection system - PyCon Taiwan 2017
Data compession
AES Encryption
Hash map
September 24, 2013 Special Meeting Agenda packet
MaskedVByte: SIMD-accelerated VByte
SQL techniques for faster applications

Viewers also liked (20)

PPTX
Data Encryption Standard (DES)
PPT
Data encryption, Description, DES
PPT
Data encryption standard (des)
PPTX
Cryptography.ppt
DOCX
Data encryption standard
PPTX
Cryptography
PPTX
Trible data encryption standard (3DES)
ODP
Encryption presentation final
PDF
Data Encryption Standard
PPT
DES (Data Encryption Standard) pressentation
PPTX
Cryptography
PPT
Chapter 3: Block Ciphers and the Data Encryption Standard
PPT
Design and Simulation Triple-DES
PPTX
Double DES & Triple DES
PPT
block ciphers
PDF
Advanced Encryption Standard (AES) Implementaion using Java
PPTX
Cryptography.ppt
PDF
54522002 triple-des-vhdl-project
PDF
The des algorithm illustrated
PPT
Network Security and Cryptography
Data Encryption Standard (DES)
Data encryption, Description, DES
Data encryption standard (des)
Cryptography.ppt
Data encryption standard
Cryptography
Trible data encryption standard (3DES)
Encryption presentation final
Data Encryption Standard
DES (Data Encryption Standard) pressentation
Cryptography
Chapter 3: Block Ciphers and the Data Encryption Standard
Design and Simulation Triple-DES
Double DES & Triple DES
block ciphers
Advanced Encryption Standard (AES) Implementaion using Java
Cryptography.ppt
54522002 triple-des-vhdl-project
The des algorithm illustrated
Network Security and Cryptography
Ad

Similar to Data encryption standard (20)

PDF
Computer Security Lecture 4.1: DES Supplementary Material
PPT
Lec20 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Da...
PPT
IFIR法による逆回復特性測定回路図
PPT
LR_Parser compiler how to compiler lr1 ll1
PDF
Database Systems The Complete Book 2nd Edition Molina Solutions Manual
PDF
Unit II-Lesson 3- Dihedral and Multiplicative Groups (PALMA).pdf
PDF
Lecture2_RTuokcoursertlmemarycomppsL.pdf
PDF
5 LogicAndShiftInstructions.pdf
PPT
Ch03 Ch06 Des And Others
PPTX
DES Presentation.pptx for Information Security, A common Subject
PDF
PDF
PDF
PDF
Data Encryption Standard
PPTX
Bit_logic_design_introduction_part_1.pptx
PDF
Ciclotron dynamic 12000 h 2ω
PPT
DES Block Cipher Hao Qi
DOCX
Electrónica digital: Display de 7 segmentos con compuertas lógicas
PPT
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
PDF
Blockchain economy
Computer Security Lecture 4.1: DES Supplementary Material
Lec20 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Da...
IFIR法による逆回復特性測定回路図
LR_Parser compiler how to compiler lr1 ll1
Database Systems The Complete Book 2nd Edition Molina Solutions Manual
Unit II-Lesson 3- Dihedral and Multiplicative Groups (PALMA).pdf
Lecture2_RTuokcoursertlmemarycomppsL.pdf
5 LogicAndShiftInstructions.pdf
Ch03 Ch06 Des And Others
DES Presentation.pptx for Information Security, A common Subject
Data Encryption Standard
Bit_logic_design_introduction_part_1.pptx
Ciclotron dynamic 12000 h 2ω
DES Block Cipher Hao Qi
Electrónica digital: Display de 7 segmentos con compuertas lógicas
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
Blockchain economy
Ad

More from Mohammad Golyani (8)

PDF
A holistic Control Flow Integrity
PPTX
GCC, Glibc protections
PPTX
GCC, Glibc protections
PPTX
Exec-shield
PPT
Advanced c programming in Linux
ODP
How to get LBR contents on Intel x86
PDF
Linux Protections Against Exploits
A holistic Control Flow Integrity
GCC, Glibc protections
GCC, Glibc protections
Exec-shield
Advanced c programming in Linux
How to get LBR contents on Intel x86
Linux Protections Against Exploits

Recently uploaded (20)

PDF
Approach and Philosophy of On baking technology
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PPT
Teaching material agriculture food technology
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
A Presentation on Artificial Intelligence
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
cuic standard and advanced reporting.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
KodekX | Application Modernization Development
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
MYSQL Presentation for SQL database connectivity
Teaching material agriculture food technology
Building Integrated photovoltaic BIPV_UPV.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
“AI and Expert System Decision Support & Business Intelligence Systems”
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
A Presentation on Artificial Intelligence
Review of recent advances in non-invasive hemoglobin estimation
cuic standard and advanced reporting.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Network Security Unit 5.pdf for BCA BBA.
Mobile App Security Testing_ A Comprehensive Guide.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
KodekX | Application Modernization Development
Digital-Transformation-Roadmap-for-Companies.pptx

Data encryption standard

Editor's Notes

  • #5: توضیح اینکه از نظر ریاضی ثابت نشده که کلید کلّی نداره
  • #10: Demo of MD5sum
  • #37: سوال انحرافی: مگر نباید عملیات تابع برگشت پذیر باشد؟ پس عمل برگشت در این Sbox های چند به یک چگونه خواهد بود؟