1 Data Encryption Standard - DES DES was developed as a standard for communications and data protection by an IBM research team, in response to a public.

Slides:



Advertisements
Similar presentations
DES The Data Encryption Standard (DES) is a classic symmetric block cipher algorithm. DES was developed in the 1970’s as a US government standard The block.
Advertisements

“Advanced Encryption Standard” & “Modes of Operation”
Modern Symmetric-Key Ciphers
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (3) Information Security.
1 Lecture 3: Secret Key Cryptography Outline concepts DES IDEA AES.
1 CIS 5371 Cryptography 5b. Pseudorandom Objects in Practice Block Ciphers.
Cryptography and Network Security Chapter 3
Symmetric Encryption Example: DES Weichao Wang. 2 Overview of the DES A block cipher: – encrypts blocks of 64 bits using a 64 bit key – outputs 64 bits.
Cryptography and Network Security Chapter 6. Chapter 6 – Block Cipher Operation Many savages at the present day regard their names as vital parts of themselves,
Cryptography1 CPSC 3730 Cryptography Chapter 6 Triple DES, Block Cipher Modes of Operation.
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 Overview of the DES A block cipher: –encrypts blocks of 64 bits using a 64 bit key –outputs 64 bits of ciphertext A product cipher –basic unit is the.
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.
Chapter 3 – Block Ciphers and the Data Encryption Standard Jen-Chang Liu, 2004 Adopted from lecture slides by Lawrie Brown.
Lecture 23 Symmetric Encryption
CSCE 790G: Computer Network Security Chin-Tser Huang University of South Carolina.
Chapter 3 – Block Ciphers and the Data Encryption Standard
Cryptography Block Ciphers and Feistel Functions.
Chapter 3 – Block Ciphers and the Data Encryption Standard
CSE 651: Introduction to Network Security
ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011.
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.
The Digital Encryption Standard CSCI 5857: Encoding and Encryption.
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.
Modes of Operation. Topics  Overview of Modes of Operation  EBC, CBC, CFB, OFB, CTR  Notes and Remarks on each modes.
Dr. Lo’ai Tawalbeh 2007 Chapter 3: Block Ciphers and the Data Encryption Standard Dr. Lo’ai Tawalbeh New York Institute of Technology (NYIT) Jordan’s Campus.
Cryptography and Network Security Chapter 3. Modern Block Ciphers  now look at modern block ciphers  one of the most widely used types of cryptographic.
Cryptography and Network Security Chapter 6. Multiple Encryption & DES  clear a replacement for DES was needed theoretical attacks that can break it.
1 Chapter 3 Ciphers Mechanism that decides the process of encryption/decryption Stream Cipher: Bit-by-bit encryption / decryption Block Cipher: Block-by-block.
Chapter 20 Symmetric Encryption and Message Confidentiality.
TE/CS 536 Network Security Spring 2006 – Lectures 6&7 Secret Key Cryptography.
Chapter 20 Symmetric Encryption and Message Confidentiality.
Cryptography and Network Security Block Ciphers and DES, and modes of operation M. Sakalli Reviewed, from Stallings.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Multiple Encryption & DES  clearly a replacement for DES was needed Vulnerable to brute-force key search attacks Vulnerable to brute-force key search.
Data Encryption Standard (DES) © 2000 Gregory Kesden.
Chapter 2 (B) – Block Ciphers and Data Encryption Standard.
Classical &ontemporyryptology 1 Block Cipher Today’s most widely used ciphers are in the class of Block Ciphers Today’s most widely used ciphers are in.
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.
Lecture 23 Symmetric Encryption
Pertemuan #3 Block Encryption I Kuliah Pengaman Jaringan.
Computer and Network Security Rabie A. Ramadan Lecture 3.
Module :MA3036NI Symmetric Encryption -4 Lecture Week 5.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Data Security and Encryption (CSE348) 1. Lecture # 7 2.
© Information Security Group, ICU1 Block Cipher- introduction  DES Description: Feistel, S-box Exhaustive Search, DC and LC Modes of Operation  AES Description:
Network Security Cryptology Cryptography Cryptanalysis.
DES Analysis and Attacks CSCI 5857: Encoding and Encryption.
DATA & COMPUTER SECURITY (CSNB414) MODULE 3 MODERN SYMMETRIC ENCRYPTION.
Block Cipher- introduction
1 The Data Encryption Standard. 2 Outline 4.1 Introduction 4.4 DES 4.5 Modes of Operation 4.6 Breaking DES 4.7 Meet-in-the-Middle Attacks.
Data Encryption Standard (DES) most widely used block cipher in world adopted in 1977 by NBS (now NIST) – as FIPS PUB 46 encrypts 64-bit data using 56-bit.
Depart. of Computer Science and Engineering
Module :MA3036NI Symmetric Encryption -3 Lecture Week 4.
Block Ciphers and the Data Encryption Standard. Modern Block Ciphers  One of the most widely used types of cryptographic algorithms  Used in symmetric.
CSE 5/7353 – January 25 th 2006 Cryptography. Conventional Encryption Shared Key Substitution Transposition.
Data Encryption Standard - DES DES was developed as a standard for communications and data protection by an IBM research team, in response to a public.
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
Modes of Operation block ciphers encrypt fixed size blocks – eg. DES encrypts 64-bit blocks with 56-bit key need some way to en/decrypt arbitrary amounts.
CSCE 715: Network Systems Security
Block Ciphers and the Data Encryption Standard (DES)
Block vs Stream Ciphers
Chapter -2 Block Ciphers and the Data Encryption Standard
Chapter -3 ADVANCED ENCRYPTION STANDARD & BLOCK CIPHER OPERATION
Presentation transcript:

1 Data Encryption Standard - DES DES was developed as a standard for communications and data protection by an IBM research team, in response to a public request for proposals by the NBS - the National Bureau of Standards (which is now known as NIST).

2 DES - History zThe Data Encryption Standard (DES) was developed in the 1970s by the National Bureau of Standards with the help of the National Security Agency. zIts purpose is to provide a standard method for protecting sensitive commercial and unclassified data. zIBM created the first draft of the algorithm, calling it LUCIFER with a 128-bit key. zDES officially became a federal standard in November of 1976.

3 DES - As a Federal Standard zDES was adopted as a (US) federal standard in November 1976, published by NBS as a hardware only scheme in January 1977 and by ANSI for both hardware and software standards in ANSI X (also X modes of use). zSubsequently DES has been widely adopted and is now published in many standards around the world.

4 DES - Usage in Industry zOne of the largest users of the DES is the banking industry. zIt is for this use that the DES has primarily been standardized, with ANSI having twice reconfirmed its recommended use for 5 year periods - a further extension was not expected. zHowever DES has been extended to 2005 and at that time it will be replaced by AES.

5 DES - Design Shrouded in Mystery zAlthough the standard is public, the design criteria used are classified and have yet to be released. zThere has been considerable controversy over the design, particularly in the choice of a 56-bit key. zW. Diffie, M Hellman "Exhaustive Cryptanalysis of the NBS Data Encryption Standard" IEEE Computer 10(6), June 1977, pp zM. Hellman "DES will be totally insecure within ten years" IEEE Spectrum 16(7), Jul 1979, pp

6 DES - Design Proves Good zRecent analysis has shown despite this that the choice was appropriate, and that DES is well designed. zRapid advances in computing speed though have rendered the 56 bit key susceptible to exhaustive key search, as predicted by Diffie & Hellman. zThe DES has also been theoretically broken using a method called Differential Cryptanalysis, however in practice this is unlikely to be a problem (yet).

7 DES - Basics zDES uses the two basic techniques of cryptography - confusion and diffusion. zAt the simplest level, diffusion is achieved through numerous permutations and confusions is achieved through the XOR operation. zThis is also called an S-P network.

8 The S-P Network

9 DES in a Nutshell

10 DES - The 16 Rounds zThe basic process in enciphering a 64-bit data block and a 56-bit key using the DES consists of:  An initial permutation (IP)  16 rounds of a complex key dependent calculation f  A final permutation, being the inverse of IP

11 The 16 Rounds of F Consist Of:

12 DES - Swapping of Left and Right Halves zThe 64-bit block being enciphered is broken into two halves. zThe right half goes through one DES round, and the result becomes the new left half. zThe old left half becomes the new right half, and will go through one round in the next round. zThis goes on for 16 rounds, but after the last round the left and right halves are not swapped, so that the result of the 16th round becomes the final right half, and the result of the 15th round (which became the left half of the 16th round) is the final left half.

13 DES - Swapping of Left and Right Halves  This can be described functionally as L(i) = R(i-1) R(i) = L(i-1)  P(S( E(R(i-1))  K(i) )) zThis forms one round in an S-P network

14 DES - Basics zFundamentally DES performs only two operations on its input, bit shifting (permutation), and bit substitution. zThe key controls exactly how this process works. zBy doing these operations repeatedly and in a non- linear manner you end up with a result which can not be used to retrieve the original without the key. zThose familiar with chaos theory should see a great deal of similarity to what DES does. By applying relatively simple operations repeatedly a system can achieve a state of near total randomness.

15 Each Iteration Uses a Different Sub-key zDES works on 64 bits of data at a time. Each 64 bits of data is iterated on from 1 to 16 times (16 is the DES standard). zFor each iteration a 48 bit subset of the 56 bit key is fed into the encryption block zDecryption is the inverse of the encryption process.

16 DES Key Processing zThe key is usually stored as a 64-bit number, where every eighth bit is a parity bit. zThe parity bits are pitched during the algorithm, and the 56-bit key is used to create 16 different 48-bit subkeys - one for each round. zDES Subkeys: K 1, K 2, K 3, … K 16

17 DES Key Processing - Subkeys Generation zIn order to generate bit subkeys from the 56-bit key, the following process is used. zFirst, the key is loaded according to the PC-1 and then halved. zThen each half is rotated by 2 bits in every round except the first, second, 9th and last rounds. zThe reason for this is that it makes it secure against related-key cryptanalysis. zThen 48 of the 56 bits are chosen according to a compression permutation - PC-2.

18 The Key Schedule  The subkeys used by the 16 rounds are formed by the key schedule which consists of:  An initial permutation of the key (PC1) which selects 56-bits in two 28-bit halves  16 stages consisting of  selecting 24-bits from each half and permuting them by PC2 for use in function f,  rotating each half either 1 or 2 places depending on the key rotation schedule KS  this can be described functionally as: K(i) = PC2(KS(PC1(K),i))

19 Permuted Choice 1 -- PC-1

20 Permuted Choice 2 -- PC-2

21 Key Rotation Schedule  The key rotation schedule KS is specified as: Round KS KS Total Rot Total Rot

22 DES Operation - Plaintext zThe block to be encrypted is halved - the right half goes through several steps before being XOR-ed with the left half and, except after the last round, trading places with the left half.

23 DES - Expansion Permutation zFirst the right half goes through an expansion permutation which expands it from 32 to 48 bits. zThis makes it the same length as the subkey to allow the XOR, but it also demonstrates an important concept in cryptography. In expanding to 1.5 times its size, several bits are repeated (no new bits are introduced - all the existing bits are shifted around, and some are used twice). zBecause of this some of the input bits affect two output bits instead of one, the goal being to have every output bit in DES depend upon every input bit as quickly as possible. This is known as the avalanche effect.

24 Expansion Permutation Table

25 DES Operation - E(R i )  K i zThe result of the expansion permutation is XOR- ed with the subkey, and then goes through the S- boxes. zThere are 8 S-boxes, each of which takes a 6-bit input an spits out a 4-bit output. zThis step is non-linear. For a given input i1, i2... i6, the output is determined by using the concatenation of i1 and i6, and the concatenation of i2… i5, and using these as the indices to the table which is the S-box.

26 S-box Permutations zThe S-boxes are somewhat different from the other permutations. While all the others are set up according to "bit x goes to bit y", the input bits can be viewed differently for the S-boxes. zIf the input is {d1,d2,d3,d4,d5,d6} then the two-bit number {d1,d6} and the the four-bit number {d2,d3,d4,d5} are used as indices to the table. zFor the 48-bit word {d1,d2..d48}, the word {d1… d6} is sent to S-box 1, the word {d7… d12} to S-box 2, etc. The output of S-box 1, {o1… o4}, that of S-box 2, {o5..o8} etc. are concatenated to form the output.

27 S-box Permutations

28 S1 Box Truth Table

29 The 8 DES S Boxes

30 DES Operation - P Box zThe output of each of the 8 S-boxes is concatenated to form a 32-bit number, which is then permutated with a P-box. zThis P-box is a straight permutation, and the resulting number is XOR-ed with the left half of the input block with which we started at the beginning of this round. zFinally, if this is not the last round, we swap the left and right halves and start again.

31 P Box

32 DES Permutations zThe initial and final permutations in DES serve no cryptographic function. They were originally added in order to make it easier to load the 64- bit blocks into hardware - this algorithm after all predates 16-bit busses - and is now often omitted from implementations. zHowever the permutations are a part of the standard, and therefore any implementation not using the permutations is not truly DES.

33 DES Permutations zUsing the Initial Permutation a DES chip loads a 64-bit block one bit at a time (this gets to be very slow in software). zThe order in which it loads the bits is shown below. zThe final permutation is the inverse of the initial (for example, in the final permutation bit 40 goes to bit 1, whereas in the initial permutation bit 1 goes to bit 40).

34 zbitgoes to bitbitgoes to bit z z z z z z z z28140 z z z z z z z z z z z z z z z z z z z z z z z z Initial Permutation

35 DES Initial and Final Permutations

36 Weak Keys zThere are a few keys which are considered weak for the DES algorithm. They are so few, however, that it is trivial to check for them during key generation.

37 DES Example - Key z K=581FBC94D3A452EA z X=3570E2F1BA4682C7

38 DES Example - Key

39 DES Example - Data zK=581FBC94D3A452EA zX=3570E2F1BA4682C7

40 DES Example - Data

41 DES Example - Data

42 DES Example - Data

43 DES Example - Data

44 DES Example - Data

45 DES Example - Data - Done !

46 DES Modes of Use  DES encrypts 64-bit blocks of data, using a 56-bit key  We need some way of specifying how to use it in practice, given that we usually have an arbitrary amount of information to encrypt  The way we use a block cipher is called its Mode of Use and four have been defined for the DES by ANSI in the standard: ANSI X Modes of Use)

47 DES Modes of Use  DES Modes of Use are either: zBlock Modes ySplits messages in blocks (ECB, CBC) zStream Modes yOn byte stream messages (CFB, OFB)

48 Block Modes - ECB zElectronic Codebook Book (ECB) ywhere the message is broken into independent 64-bit blocks which are encrypted zC(i) = DES K (P(i))

49 Block Modes - CBC zCipher Block Chaining (CBC) yAgain the message is broken into 64-bit blocks, but they are linked together in the encryption operation with an IV zC(i) = DES K (P(i)  C(i-1)) zC(-1)=IV

50 Cipher Block Chaining (CBC)

51 Stream Modes - CFB zCipher FeedBack (CFB) ywhere the message is treated as a stream of bytes, added to the output of the DES, with the result being feed back for the next stage zC(i) = P(i)  DES K (C(i-1)) C(-1)=IV

52 Stream Modes - CFB

53 Stream Modes - OFB zOutput FeedBack (OFB) ywhere the message is treated as a stream of bytes, added to the message, but with the feedback being independent of the message zC(i) = P(i)  O(i) zO(i) = DES K (O(i-1)) zO(-1)=IV

54 Stream Modes - OFB

55 Limitations of Various Modes - ECB zRepetitions in message can be reflected in ciphertext, if aligned with message block. zParticularly with data such graphics. zOr with messages that change very little, which become a code-book analysis problem. zWeakness is because enciphered message blocks are independent of each other. zCan be solved using CBC.

56 Limitations of Various Modes - CBC zUses result of one encryption to modify input of next. zHence each ciphertext block is dependent on all message blocks before it. zThus a change in the message affects the ciphertext block after the change as well as the original block. zSusceptible to errors. Error in a single block make all the subsequent blocks useless.

57 Triple DES - More Secure DES