0% found this document useful (0 votes)
32 views14 pages

Data Encryption Standard (DES) : Submitted By

DES is a 64-bit block cipher that encrypts plaintext blocks into ciphertext blocks using a 56-bit key. The encryption process involves an initial permutation of the plaintext block, then 16 rounds of permutations and substitutions using 48-bit keys generated from the original key, and a final permutation to produce the ciphertext block. Each round uses eight 6-to-4 bit S-boxes to perform substitutions on the plaintext and a permutation determined by the key. DES supports encryption in electronic codebook and cipher block chaining modes to encrypt messages broken into blocks.

Uploaded by

Vaishali Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views14 pages

Data Encryption Standard (DES) : Submitted By

DES is a 64-bit block cipher that encrypts plaintext blocks into ciphertext blocks using a 56-bit key. The encryption process involves an initial permutation of the plaintext block, then 16 rounds of permutations and substitutions using 48-bit keys generated from the original key, and a final permutation to produce the ciphertext block. Each round uses eight 6-to-4 bit S-boxes to perform substitutions on the plaintext and a permutation determined by the key. DES supports encryption in electronic codebook and cipher block chaining modes to encrypt messages broken into blocks.

Uploaded by

Vaishali Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 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