You are on page 1of 14

Data Encryption Standard

(DES)
Submitted By:-

Shaili Singhal
MRT13PGMCS026

Overview

Plaintext

Key

Key

Initialization

Round

Round

Key

Key
Round

Termination
Cyphertext

16 rounds of permutations and substitution

DES is a 64-bit block cipher. Both the plaintext and ciphertext are 64 bits wide.
The key is 64-bits wide, but every eighth bit is a parity bit yielding a 54-bit key.

Initialization
Key

Right Half
Plaintext

Initial
Permutation

Round
Left Half

Termination
Key

Right Half
Reverse Initial
Permutation

Round
Left Half

Ciphertext

A Round
Transformed
Key (48-bit)

Right Half

Left Half

Permutations
and substitution

XOR

Right Half

Left Half

Permutations and Substitutions

Right Half
E-Box
Permutation

Transformed
Key (48-bit)
XOR

S-Box
Substitution

P-Box
Permutation

8 S-Boxes are used by the P-Box

Key Transformation
28-bit left
semikey
64-bit
Key

Remove
parity bit

56-bit
Key

split
28-bit right
semikey

shift

28-bit shifted
left semi-key
Compression
Permutation

shift

28-bit shifted
right semi-key

48-bit
semi-key

E-Box (Expansion Box)

32

48

1 2 3 4

5 6 7 8

1 2 3 4 5 6 7 8 9 10 11

.. .. .. ..

.. .. .. ..

29 30 31 32

44 45 46 47 48

S-Box (Substitution Box)

There are 8 different S-Boxes, each of which


provides a different 6:4 mapping. Whered they
come from? Some combination of IBM and NSA.
The mappings are based on cryptanalysis and are
ostensibly free of weaknesses, back-doors, &c.

P-Box (Permutation Box)

48-bit input

S-Box 1

S-Box 2

S-Box 3

S-Box 4

S-Box 5

32-bit output

S-Box 6

S-Box 7

S-Box 8

Block Cipher Modes

How do we break a message down into blocks for encryption


by DES or another block cipher?

Electronic Code Book (ECB) Mode


Plaintext

Block 1

Block 2

Block 3

Block 4

Block 5

Block
Encryption

E(block)

E(block)

E(block)

E(block)

E(block)

E(block)

Ciphertext

Block 1

Block 2

Pad last block, if necessary

Block 3

Block 4

Block 5

Cipher Block Chaining (CBC) Mode


Plaintext

Random Block 1

Block 2

Block 3

Block 4

XOR

XOR

XOR

XOR

XOR

Block
Encryption

E(block)

E(block)

E(block)

E(block)

E(block)

Ciphertext

Block 2

Block 3

Block 4

Block 5

Pad last block, if necessary


Random Block called IV can be sent in plain text. Not a secret just
prevents a codebook. Often times a timestamp.

Thank You
Any Query..??

You might also like