0
Data Encryption Standard
(DES)
M.Golyani
Tehran University – Kish campus
Fall 2013
Copyright ©GPL
Mohammad.golyani@gmail.c...
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...
-

•

•
•
•
(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,...
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...
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

...
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
m...
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

...
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...
DES
DES
-

“_MAGMAG_”
IP

DES

M

77

01001101

A

65

01000001

G

71

01000111

_

95

01011111

-

010111110100110101000001...
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
...
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 X...
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 00101...
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
...
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

...
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
...
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 ...
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...
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
...
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

...
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
...
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
...
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...
DES
DES
DES

“_MAGMAG_”

“4950515253545556”

01000101 00100011 10100011 00010101 10010000 01001001 11101100 00111101
“4523a315...
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...
Upcoming SlideShare
Loading in...5
×

Data encryption standard

1,590

Published on

DES (Data Encryption Standard) algorithm is explained in detail in Persian language.
چگونگی کارکرد و ساختار الگوریتم DES

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
  • نمایش این اسلاید در اسلاید شیر با مشکل روبروست. می توانید آنرا دانلود کرده و سپس مشاهده نمایید.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
1,590
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
125
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide
  • توضیح اینکه از نظر ریاضی ثابت نشده که کلید کلّی نداره
  • Demo of MD5sum
  • سوال انحرافی: مگر نباید عملیات تابع برگشت پذیر باشد؟ پس عمل برگشت در این Sbox های چند به یک چگونه خواهد بود؟
  • Transcript of "Data encryption standard"

    1. 1. Data Encryption Standard (DES) M.Golyani Tehran University – Kish campus Fall 2013 Copyright ©GPL Mohammad.golyani@gmail.com
    2. 2. S-Box P-Box DES DES -
    3. 3. DES NBS NIST NSA - - NBS - IBM -
    4. 4. DES - - S-Box NSA DES - -
    5. 5. DES - -
    6. 6. - XOR -
    7. 7. 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)
    8. 8. - • • • • (R) • (L) XOR •
    9. 9. 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 )
    10. 10. 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 )
    11. 11. DES Feistel function f Backdoor DES - P-Box S-Box DES -
    12. 12. P-Box S-Box P-Box S-Box - S-Box - P-Box Confusion P-Box S-Box Diffusion
    13. 13. P-Box S-Box P-Box S-Box BlowFish S-Box P-Box - - DES P-Box S-Box S-Box -
    14. 14. 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 -
    15. 15. P-Box S-Box P-Box S-Box - y = 3x2 + 4x -1 S-Box S-Box - - -
    16. 16. 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
    17. 17. 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
    18. 18. DES S-Box DES S- S-Box backdoor Box IBM S-Box S-Box NSA
    19. 19. DES DES - DES - DES XOR - -
    20. 20. DES DES Ri f XOR Li Ri
    21. 21. 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 -
    22. 22. DES
    23. 23. DES - “_MAGMAG_” IP DES M 77 01001101 A 65 01000001 G 71 01000111 _ 95 01011111 - 0101111101001101010000010100011101001101010000010100011101011111
    24. 24. 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 -
    25. 25. DES R L P-Box - ”4950515253545556” P-Box (L0) (R0)
    26. 26. 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 -
    27. 27. 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 )
    28. 28. 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
    29. 29. DES - L0 f L1 K0 R0 R1 f DES
    30. 30. DES XOR - XOR f - S-Box S-Box P-Box -
    31. 31. DES
    32. 32. DES - R0 E 48-bit E(R0)
    33. 33. DES
    34. 34. 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
    35. 35. 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
    36. 36. 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
    37. 37. 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
    38. 38. 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
    39. 39. 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
    40. 40. 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
    41. 41. DES
    42. 42. 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 )
    43. 43. 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
    44. 44. 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 -
    45. 45. 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
    46. 46. DES
    47. 47. DES DES “_MAGMAG_” “4950515253545556” 01000101 00100011 10100011 00010101 10010000 01001001 11101100 00111101 “4523a3159049ec3d” _MAGMAG_ 5f4d41474d41475f 4950515253545556 IPQRSTUV 4523a3159049ec3d
    48. 48. DES DES - RSA - DES RSA DES DESCHALL -
    49. 49. DES DES DESCHALL - - Usenix
    50. 50. DES DES RSA Distributed.net DES - DES RSA EFF Deepcrack - -
    51. 51. DES DES DES -
    52. 52. DES DES cryptome PicoComputing FPGA - DES FPGA AES 3DES - DES DES ARM
    53. 53. Secure MCU with 32-bit ARM SC300 CPU, SWP interface, NESCRYPT cryptoprocessor and high-density Flash memory
    54. 54. DES - XOR Electronic Code Book ECB DES CBC, CFB, OFB, CTR DES DES DES - -
    55. 55. - 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 - ,…
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×