DES Manual
DES Manual
Assignment No.1
Title:
Implementation of S-DES
Problem Definition:
Implementation of S-DES
Prerequisite:
Basics of Computer networking and Python
Software Requirements:
Python 3
Hardware Requirements:
PIV, 2GB RAM, 500 GB HDD
Learning Objectives:
Learn Data Encryption Standard Algorithm (DES)
Outcomes:
After completion of this assignment students are able to understand the Data Encryption Standard.
Theory Concepts:
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 −
Lab Practices-III
Since DES is based on the Feistel Cipher, all that is required to specify DES is −
• Round function
• Key schedule
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
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.
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
Lab Practices-III
The S-boxes carry out the real mixing (confusion). DES uses 8 S-boxes, each with a 6-bit input and
Key Generation
The round-key generator creates sixteen 48-bit keys out of a 56-bit cipher key. The process of key
generation is depicted in the following illustration −
The logic for Parity drops, shifting, and Compression P-box is given in the DES description.
DES Analysis
The DES satisfies both the desired properties of block cipher. These two properties make cipher
very strong.
• Avalanche effect − A small change in plaintext results in the very great change in the
cipher text.
• Completeness − Each bit of cipher text depends on many bits of plaintext.
During the last few years, cryptanalysis has found some weaknesses in DES when key selected are
weak keys. These keys shall be avoided.
Lab Practices-III Fourth Year Computer Engineering
DES has proved to be a very well designed block cipher. There have been no significant
cryptanalytic attacks on DES other than exhaustive key search.
Oral Questions