0% found this document useful (0 votes)
9 views

Data Encryption Standard

Uploaded by

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

Data Encryption Standard

Uploaded by

Rahul Jain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Data Encryption Standard

The Data Encryption Standard (DES) is a symmetric-key block cipher published


by the National Institute of Standards and Technology (NIST).
DES is an implementation of a Feistel Cipher. It uses 16 round Feistel structure.
The block size is 64-bit. Though, key length is 64-bit, DES has an effective key
length of 56 bits, since 8 of the 64 bits of the key are not used by the encryption
algorithm (function as check bits only). General Structure of DES is depicted in
the following illustration –

Step :
1. Initial permutation
2. 16 Feistel round
3. Swapping/left right swap
4. Final permutation
Initial and Final Permutation
The initial and final permutations are straight Permutation
boxes (P-boxes) that are inverses of each other. They have no
cryptography significance in DES. The initial and final
permutations are shown as follows –

What is Feistal Round :


Feistel Cipher is not a specific scheme of block cipher. It is a
design model from which many different block ciphers are
derived. DES is just one example of a Feistel Cipher. A
cryptographic system based on Feistel cipher structure uses
the same algorithm for both encryption and decryption.
Encryption Proces :

1. The input block to each round is divided into two halves


that can be denoted as L and R for the left half and the
right half.
2. In each round, the right half of the block, R, goes through
unchanged. But the left half, L, goes through an
operation that depends on R and the encryption key.
First, we apply an encrypting function ‘f’ that takes two
input − the key K and R. The function produces the
output f(R,K). Then, we XOR the output of the
mathematical function with L.
3. In real implementation of the Feistel Cipher, such as
DES, instead of using the whole encryption key during
each round, a round-dependent key (a subkey) is derived from
the encryption key. This means that each round uses a different
key, although all these subkeys are related to the original key.
4. The permutation step at the end of each round swaps the
modified L and unmodified R. Therefore, the L for the next
round would be R of the current round. And R for the next
round be the output L of the current round.
5. Above substitution and permutation steps form a ‘round’. The
number of rounds are specified by the algorithm design.
6. Once the last round is completed then the two sub blocks, ‘R’
and ‘L’ are concatenated in this order to form the ciphertext
block.

Round Function
The heart of this cipher is the DES function, f. The DES function
applies a 48-bit key to the rightmost 32 bits to produce a 32-bit
output.

 Expansion Permutation Box − Since right input is 32-bit
and round key is a 48-bit, we first need to expand right input to
48 bits. Permutation logic is graphically depicted in the
following illustration –

The graphically depicted permutation logic is generally


described as table in DES specification illustrated as shown −

 XOR (Whitener). − After the expansion permutation, DES does


XOR operation on the expanded right section and the round key.
The round key is used only in this operation.

 Substitution Boxes. − The S-boxes carry out the real mixing


(confusion). DES uses 8 S-boxes, each with a 6-bit input and a
4-bit output. Refer the following illustration –
The role of the S-boxes in the function F is that the substitution
includes a group of eight S-boxes. Each of which take 6 bits as input
and creates 4 bits as follows − The first and last bits of the input to
box Si form a 2-bit binary number to choose one of four substitutions
represented by the four rows in the table for Si.
The middle four bits choose one of the sixteen columns. The decimal
value in the cell chosen by the row and column is then transformed to
its 4-bit description to make the output. For instance, in S1, for input
011001, the row is 01 and the column is 1100.The value in row 1,
column 12 is 9, therefore the output is 1001.

Key Generation :
The algorithm implement 16 rounds of encryption and for each round,
a unique key is produced. Before transforming to the steps, it is
essential to understand that in plaintext the bits are labeled from 1 to
64 where 1 is the most significant bit and 64 is the least significant
bit. The process of generating keys are as follows −
 The round key generator produce sixteen 48-bit keys out of a 56-
bit cipher key. The cipher key is provided as 64 bit key in which
8 extra bits are parity bits, which are discarded before the actual
key generation process begins.
 The parity bit drop process drops the parity bits (bit 8, 16, 24,
32…64) from the 64-bit key and permutes the remaining bit
according to the pre-defined rules as display in the parity bit
drop table below.
 These remaining 56 bits are generally used for key generation.
 After the permutation, the keys are divided into two 28 bits
parts. Each part is changed left one or two bits is depend on the
rounds.
 In round 1, 2, 9, and 16 shifting is one bit and in the other rounds
it is two bits. The two parts are integrate to build a 56 bit part.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy