Data Encryption Standard CS-471/971. Category of Standard: Computer Security. Explanation: The Data Encryption Standard (DES) specifies a FIPS approved.

Slides:



Advertisements
Similar presentations
6.1.2 Overview DES is a block cipher, as shown in Figure 6.1.
Advertisements

DATA ENCRYPTION STANDARD (DES). Outline History Encryption Key Generation Decryption Strength of DES Ultimate.
Mathematics of Cryptography Part II: Algebraic Structures
Modern Symmetric-Key Ciphers
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (3) Information Security.
Cryptography and Network Security Chapter 3
Data Encryption Standard (DES)
Session 4 Asymmetric ciphers.
Cryptography1 CPSC 3730 Cryptography Chapter 3 DES.
DES 1 Data Encryption Standard DES 2 Data Encryption Standard  DES developed in 1970’s  Based on IBM Lucifer cipher  U.S. government standard  DES.
1 Chapter 3 – Block Ciphers and the Data Encryption Standard Modern Block Ciphers  now look at modern block ciphers  one of the most widely used types.
1 Chapter 3 – Block Ciphers and the Data Encryption Standard Modern Block Ciphers  now look at modern block ciphers  one of the most widely used types.
Session 6: Introduction to cryptanalysis part 1. Contents Problem definition Symmetric systems cryptanalysis Particularities of block ciphers cryptanalysis.
Lecture 13 Message Signing
Copyright © Cengage Learning. All rights reserved.
ON MULTIVARIATE POLYNOMIAL INTERPOLATION
CSE 651: Introduction to Network Security
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
Data Encryption Standard (DES). Symmetric Cryptography  C = E(P,K)  P = D(C,K)  Requirements  Given C, the only way to obtain P should be with  the.
Block and Stream Ciphers1 Reference –Matt Bishop, Computer Security, Addison Wesley, 2003.
A Cryptography Education Tool Anna Yu Department of Computer Science College of Engineering North Carolina A&T State University June 18, 2009.
Section 2.2: Affine Ciphers; More Modular Arithmetic Practice HW (not to hand in) From Barr Textbook p. 80 # 2a, 3e, 3f, 4, 5a, 7, 8 9, 10 (Use affinecipherbreaker.
Dr. Khalid A. Kaabneh Amman Arab University
The Data Encryption Standard - see Susan Landau’s paper: “Standing the test of time: the data encryption standard.” DES - adopted in 1977 as a standard.
Chapter 3: The Fundamentals: Algorithms, the Integers, and Matrices
Section 2.1: Shift Ciphers and Modular Arithmetic The purpose of this section is to learn about modular arithmetic, which is one of the fundamental mathematical.
Network Security Lecture 14 Presented by: Dr. Munam Ali Shah.
Chapter 20 Symmetric Encryption and Message Confidentiality.
Section 2.1: Shift Ciphers and Modular Arithmetic Practice HW from Barr Textbook (not to hand in) p.66 # 1, 2, 3-6, 9-12, 13, 15.
Chapter 20 Symmetric Encryption and Message Confidentiality.
Feistel Cipher Structure
1 Lect. 7 : Data Encryption Standard. 2 Data Encryption Standard (DES)  DES - History 1976 – adopted as a federal standard 1977 – official publication.
Introduction to Computer Security ©2004 Matt Bishop Information Security Principles Assistant Professor Dr. Sana’a Wafa Al-Sayegh 1 st Semester
DES Algorithm Data Encryption Standard. DES Features Block cipher, 64 bits per block 64-bit key, with only 56 bits effective ECB mode and CBC mode.
DIFFERENTIAL CRYPTANALYSIS Chapter 3.4. Ciphertext only attack. The cryptanalyst knows the cryptograms. This happens, if he can eavesdrop the communication.
Introduction to Modern Symmetric-key Ciphers
1 Data Encryption Standard (DES) An example of secret key (i.e., symmetric) encryption system Note: These figures are meant to help illustrating a few.
Advanced Encryption Standard. Origins NIST issued a new version of DES in 1999 (FIPS PUB 46-3) DES should only be used in legacy systems 3DES will be.
Lecture 3 Overview. Ciphers The intent of cryptography is to provide secrecy to messages and data Substitutions – ‘hide’ letters of plaintext Transposition.
Computer and Network Security Rabie A. Ramadan Lecture 3.
Block Ciphers and the Advanced Encryption Standard
© Information Security Group, ICU1 Block Cipher- introduction  DES Description: Feistel, S-box Exhaustive Search, DC and LC Modes of Operation  AES Description:
DATA & COMPUTER SECURITY (CSNB414) MODULE 3 MODERN SYMMETRIC ENCRYPTION.
Lecture 3 Overview. Ciphers The intent of cryptography is to provide secrecy to messages and data Substitutions – ‘hide’ letters of plaintext Transposition.
Lecture 4 Overview. Data Encryption Standard Combination of substitution and transposition – Repeated for 16 cycles – Provides confusion and diffusion.
Computer Science and Engineering Computer System Security CSE 5339/7339 Lecture 7 September 9, 2004.
Module :MA3036NI Symmetric Encryption -3 Lecture Week 4.
Simplified DES.
Block Ciphers and the Data Encryption Standard. Modern Block Ciphers  One of the most widely used types of cryptographic algorithms  Used in symmetric.
Encryption and Encryption and Decryption Speaker:Tsung Ray Wang Advisor:Prof.Li-Chun Wang.
Information and Computer Security CPIS 312 Lab 6 & 7 1 TRIGUI Mohamed Salim Symmetric key cryptography.
Data Encryption Standard (DES) Financial companies found the need for a cryptographic algorithm that would have the blessing of the US government (=NSA)
Lecture 4 Data Encryption Standard (DES) Dr. Nermin Hamza
CS480 Cryptography and Information Security
Applied Discrete Mathematics Week 2: Functions and Sequences
Data Encryption Standard
Networks and Communication Systems Department
NET 311 Information Security
Cryptography and Network Security Chapter 3
Some of this slide set is from Section 2,
Block Ciphers and the Data Encryption Standard (DES)
DES Examples Chater#3 DES.
NET 311 Information Security
Chapter -2 Block Ciphers and the Data Encryption Standard
Computer Security IT423 Semester II
DATA ENCRYPTION STANDARD (DES)
Advanced Encryption Standard
Cipher-Based MAC Network Security.
Data Encryption Standard (DES)
Presentation transcript:

Data Encryption Standard CS-471/971

Category of Standard: Computer Security. Explanation: The Data Encryption Standard (DES) specifies a FIPS approved cryptographic algorithm as required by FIPS Qualifications. The cryptographic algorithm specified in this standard transforms a 64-bit binary value into a unique 64-bit binary value based on a 56-bit variable.

As there are over 70,000,000,000,000,000 (seventy quadrillion) possible keys of 56 bits, the feasibility of deriving a particular key in this way is extremely unlikely in typical threat environments.

The algorithm is designed to encipher and decipher blocks of data consisting of 64 bits under control of a 64-bit key A block to be enciphered is subjected to an initial permutation IP and then to a complex key-dependent computation and finally to a permutation which is the inverse of the initial permutation IP -1. Introduction

Permutation is an operation performed by a function, which moves an element at place j to the place k. The key-dependent computation can be simply defined in terms of a function f, called the cipher function, and a function KS, called the key schedule. First, a description of the computation.

Next, the use of the algorithm for decipherment. Finally, a definition of the cipher function f that is given in terms of selection function S i and permutation function P. LR denotes the block consisting of the bits of L followed by the bits of R. A sketch of the enciphering computation is given in the figure

Enciphering The 64 bits of the input block to be enciphered are first subjected to the following initial permutation IP:

IP

The permuted input block is then the input to a complex key-dependent computation. The output of that computation (preoutput) is then subjected to the next permutation which is the inverse of the initial permutation.

IP

The computation consists of 16 iterations of a calculation The cipher function f operates on two blocks, one of 32 bits and one of 48 bits, and produces a block of 32 bits. The input block is then LR, 32 bit block L followed by a 32 bit block R.

Let K be a block of 48 bits chosen from the 64-bit key. Then the output L'R' of an iteration with input LR is defined by: L' = R R' = L (+) f (R,K) L'R' is the output of the 16 th iteration then R'L' is the preoutput block.

At each iteration a different block K of key bits is chosen from the 64-bit key designated by KEY. Let KS be a function which takes an integer n in the range from 1 to 16 and a 64-bit block KEY as input and yields as output a 48-bit block K n which is a permuted selection of bits from KEY. That is K n = KS (n, KEY)

Let the permuted input block be LR. Finally, let L 0 and R 0 be respectively L and R and let L n and R n be respectively L' and R' when L and R are respectively L n-1 and R n-1 and K is R n ; that is, when n is in the range from 1 to 16, L n = R n-1 R n = L n-1 (+) f (R n-1, K n ) The preoutput block is then R 16 L 16.

Deciphering The permutation IP -1 applied to the preoutput block is the inverse of the initial permutation IP applied to the input. R = L' L = R' (+) f (L', K)

To decipher it is only necessary to apply the very same algorithm to an enciphered message block. Using the notation of the previous section, this can be expressed by the equations: R n-1 = L n L n-1 = R n (+) f (L n, K n ) where now R 16 L 16 is the permuted input block for the deciphering calculation L 0 and R 0 is the preoutput block.

The Cipher Function f : A sketch of the calculation of f (R, K) is given by

E bit-selection table

S For example, for input the row is 01, that is row 1, and the column is determined by 1101, that is column 13. In row 1 column 13 appears 5 so that the output is 0101.

The permutation function P yields a 32-bit output from a 32-bit input by permuting the bits of the input block P

The output P(L) for the function P defined by this table is obtained from the input L by taking the 16th bit of L as the first bit of P(L), the 7th bit as the second bit of P(L), and so on until the 25th bit of L is taken as the 32nd bit of P(L). Now let S 1,..., S 8 be eight distinct selection functions, let P be the permutation function and let E be the function defined above.

To define f (R, K) we first define B 1,..., B 8 to be blocks of 6 bits each for which B 1 B 2... B 8 = K (+) E(R) The block f (R, K) is then defined to be P (S 1 ( B 1 ) S 2 ( B 2 )... S 8 ( B 8 ))

Thus K (+) E(R) is first divided into the 8 blocks. Then each B i is taken as an input to S i and the 8 blocks (S 1 (B 1 ) S 2 (B 2 )... S 8 (B 8 )) of 4 bits each are consolidated into a single block of 32 bits which forms the input to P. The output is then the output of the function f for the inputs R and K.

PRIMITIVE FUNCTIONS FOR THE DATA ENCRYPTION ALGORITHM

The choice of the primitive functions KS, S 1,..., S 8 and P is critical to the strength of an encipherment resulting from the algorithm The recommended set of functions are described as S 1,..., S 8 and P in the algorithm.

S O O 6 13 S O

S O S O O

S O O O S O O

S S

PC

The first part of the table determins how the bits of C () are chosen, and the second part determins how the bits of D () are chosen. The bits of KEY are numbered 1 through 64.

The bits of C () are respectively bits 57, 49, 41,..., 44 and 36 of KEY, with the bits of D () being bits 63, 55, 47,..., 12 and 4 of KEY. With C () and D () defined, we now define how the blocks C n and D n are obtained from the blocks C n-1 and D n-1, respectively, for n = 1, 2,..., 16.

That is accomplished by adhering to the following schedule of left shifts of the individual blocks.

PC

Iteration corresponds to left shifts: