SlideShare a Scribd company logo
1 of 63
Block Ciphers
IFETCE/M.E CSE/NE7202-NIS/Unit 2 2
Learning Outcomes
• Recognise the different components of the cryptographic
process
• Identify some of the factors involved in selecting a cryptographic
algorithm
• Describe the model of a stream cipher
• Appreciate the types of application where a stream cipher is
most appropriate
• Describe the model of a block cipher
• Recall the basic design features and history of DES
• Comment on the security issues surrounding modern use of
DES
IFETCE/M.E CSE/NE7202-NIS/Unit 2 3
Overview
• Block Cipher Principles
– Stream and Block Ciphers
– Ideal Block Cipher
– The Feistel Cipher
• The Data Encryption Standard
– DES Details
– DES Design Issues
– The Strength of DES
– Differential and Linear Cryptanalysis
4
A symmetric classification
1 …… 1 …… 0 ……0 ……0
E
1……...1……..1…….0…….1
100110110100010111010010
1100100111010100100010011
E E E E
100110110100010111010010
110010011101010010001001
100110 110100 010111 010010
E E E E
110010 011101 010010 001001
… … … …
Stream cipher Block cipher
Stream Ciphers
Call the plaintext stream P, the ciphertext stream
C,
and the key stream K.
5
1. Block ciphers
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Model of a block cipher
• Encrypt a block of plaintext as a whole to
produce same sized ciphertext
• Typical block sizes are 64 or 128 bits
• Modes of operation used to apply block
ciphers to larger plaintexts
7
block of ciphertext
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Reversible and Irreversible
Mappings
• n-bit block cipher takes n bit plaintext and produces n
bit ciphertext
• 2n
possible different plaintext blocks
• Encryption must be reversible (decryption possible)
• Each plaintext block must produce unique ciphertext
block
• Total transformations is 2n
!
8
IFETCE/M.E CSE/NE7202-NIS/Unit 2
General Block Substitution
9
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Encryption/Decryption Tables
10
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Ideal Block Cipher
• n-bit input maps to 2n
possible input states
• Substitution used to produce 2n
output states
• Output states map to n-bit output
• Ideal block cipher allows maximum number of
possible encryption mappings from plaintext
block
• Problems with ideal block cipher:
– Small block size: equivalent to classical substitution cipher;
cryptanalysis based on statistical characteristics feasible
– Large block size: key must be very large;
performance/implementation problems
11
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Practical Block Ciphers
• Modern block ciphers use a key of K bits to specify a
random subset of 2K
mappings.
• If K ≈ N,
– 2K
is much smaller than 2N
!
– But is still very large.
• If the selection of the 2K
mappings is random, the
resulting cipher will be a good approximation of the
ideal block cipher.
• Horst Feistel, in1970s, proposed a method to achieve
this.
12
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Feistel Structure for Block
Ciphers
• Feistel proposed applying two or more simple
ciphers in sequence so final result is
cryptographically stronger than component
ciphers
• n-bit block length; k-bit key length; 2k
transformations
• Feistel cipher alternates: substitutions,
transpositions(permutations)
• Applies concepts of diffusion and confusion
• Applied in many ciphers today
13
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Diffusion and Confusion
• Diffusion
– Statistical nature of plaintext is reduced in ciphertext
– E.g. A plaintext letter affects the value of many ciphertext
letters
– How: repeatedly apply permutation (transposition) to data,
and then apply function
• Confusion
– Make relationship between ciphertext and key as complex as
possible
– Even if attacker can find some statistical characteristics of
ciphertext, still hard to find key
– How: apply complex (non-linear) substitution algorithm
14
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Feistel Structure for Block
Ciphers
• Approach:
– Plaintext split into halves
– Subkeys (or round keys) generated from
key
– Round function, F, applied to right half
– Apply substitution on left half using XOR
– Apply permutation: interchange to halves
15
The Feistel
Cipher
Structure
iφ
µ
16
Round i
+
f
Li-1 Ri-1
ki
Li Ri
17
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Using the Feistel Structure
• Exact implementation depends on various design
features
– Block size, e.g. 64, 128 bits: larger values leads to more
diffusion
– Key size, e.g. 128 bits: larger values leads to more
confusion, resistance against brute force
– Number of rounds, e.g. 16 rounds
– Subkey generation algorithm: should be complex
– Round function F: should be complex
• Other factors include fast encryption in software and
ease of analysis
• Tradeoff: security vs performance
18
IFETCE/M.E CSE/NE7202-NIS/Unit 2 September, 2006
Feistel decryption
• same as encryption, except
• ciphertext is input
• use keys in reverse order
• at each round the output is equal to the
corresponding value of the encryption
process with the two halves of the value
swapped
• final permutation (swap) realigns 2 halves
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Feistel Example
20
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Data Encryption Standard
• Symmetric block cipher
– 56-bit key, 64-bit input block, 64-bit output block
• One of most used encryption systems in world
– Developed in 1977 by NBS/NIST
– Designed by IBM (Lucifer) with input from NSA
– Principles used in other ciphers, e.g. 3DES, IDEA
• Simplified DES (S-DES)
– Cipher using principles of DES
– Developed for education (not real world use)
21
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Simplied DES
• Input (plaintext) block: 8-bits
• Output (ciphertext) block: 8-bits
• Key: 10-bits
• Rounds: 2
• Round keys generated using permutations and
left shifts
• Encryption: initial permutation, round function,
switch halves
• Decryption: Same as encryption, except round
keys used in opposite order
22
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES Algorithm
23
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES Operations
• EP (expand and permutate)
– Input : 1 2 3 4
– Output: 4 1 2 3 2 3 4 1
• IP (initial permutation)
– Input : 1 2 3 4 5 6 7 8
– Output: 2 6 3 1 4 8 5 7
• IP-1
(inverse of IP)
• LS-1 (left shift 1 position)
• LS-2 (left shift 2 positions)
24
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES Key Generation
25
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES Encryption
Details
26
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES S-Boxes
• S-DES (and DES) perform substitutions using
S-Boxes
• S-Box considered as a matrix: input used to
select row/column; selected element is output
• 4-bit input: bit1; bit2; bit3; bit4
• bit1bit4 species row (0, 1, 2 or 3 in decimal)
• Bit2bit4 species column
• 2-bit output
27
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES Example
• Plaintext: 01110010
• Key: 1010000010
• Ciphertext: 01110111
28
IFETCE/M.E CSE/NE7202-NIS/Unit 2
S-DES Summary
• Educational encryption algorithm
• S-DES expressed as functions:
ciphertext = IP-1
(fK2 (SW (fK1 (IP (plaintext)))))
plaintext = IP-1
(fK1 (SW (fK2 (IP (ciphertext)))))
• Security of S-DES:
–10-bit key, 1024 keys: brute force easy
–If know plaintext and corresponding ciphertext, can
we determine key? Very hard
29
Comparing DES and S-DES
S-DES
• 8-bit blocks
• 10-bit key: 2 x 8-bit round
keys
• IP: 8-bits
• F operates on 4 bits
• 2 S-Boxes
• 2 rounds
DES
• 64-bit blocks
• 56-bit key: 16 x 48-bit
round keys
• IP: 64 bits
• F operates on 32 bits
• 8 S-Boxes
• 16 rounds
30
S-DES encryption:
ciphertext = IP-1
(fK2 (SW (fK1 (IP (plaintext)))))
DES encryption:
ciphertext = IP-1
(fK16 (SW (fK15 (SW (: : : (fK1 (IP
(plaintext))))))))
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Design Principles of DES
• To achieve high degree of diffusion and
confusion.
• Diffusion: making each plaintext bit
affect as many ciphertext bits as
possible.
• Confusion: making the relationship
between the encryption key and the
ciphertext as complex as possible.
1
IFETCE/M.E CSE/NE7202-NIS/Unit 2
General DES
Encryption
Algorithm
32
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Round Keys Generation
• Main key: 64 bits.
• 56-bits are selected and permuted using Permuted
Choice One (PC1); and then divided into two 28-bit
halves.
• In each round:
– Left-rotate each half separately by either 1 or 2
bits according to a rotation schedule.
– Select 24-bits from each half, and permute the
combined 48 bits.
– This forms a round key.
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Permutation Tables for DES
34
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Permutation Tables for DES
35
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Single Round of DES Algorithm
Introduction to Cryptography and Security Mechanisms 2005 36
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Calculation of F(R,K)
Introduction to Cryptography and Security Mechanisms 2005 37
IFETCE/M.E CSE/NE7202-NIS/Unit 2
The S-Boxes
• Eight S-boxes each map 6 to 4 bits
• Each S-box is specified as a 4 x 16
table
– each row is a permutation of 0-15
– outer bits 1 & 6 of input are used to select
one of the four rows
– inner 4 bits of input are used to select a
column
• All the eight boxes are different.
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Definition of DES S-Boxes
39
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Definition of DES S-Boxes
40
IFETCE/M.E CSE/NE7202-NIS/Unit 2
DES Key Schedule Calculation
41
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Avalanche Effect
• Avalanche effect:
– A small change in the plaintext or in the key results in a
significant change in the ciphertext.
– an evidence of high degree of diffusion and confusion
– a desirable property of any encryption algorithm
• DES exhibits a strong avalanche effect
– Changing 1 bit in the plaintext affects 34 bits in the
ciphertext on average.
– 1-bit change in the key affects 35 bits in the ciphertext
on average.
IFETCE/M.E CSE/NE7202-NIS/Unit 2
The Avalanche Eect
• Following examples show the number of
bits that change in output when two
different inputs are used, differing by 1
bit
• Plaintext 1: 02468aceeca86420
• Plaintext 2: 12468aceeca86420
• Ciphertext difference: 32 bits
• Key 1: 0f1571c947d9e859
• Key 2: 1f1571c947d9e859
• Ciphertext difference: 30
43
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Avalanche Eect in DES: Change
in Plaintext
44
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Avalanche Eect in DES: Change
in Key
45
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Key Size
• Although 64 bit initial key, only 56 bits used in
encryption (other 8 for parity check)
• 256
= 7.2 × 1016
– 1977: estimated cost $US20m to build machine to
break in 10 hours
– 1998: EFF built machine for $US250k to break in 3
days
– Today: 56 bits considered too short to withstand
brute force attack
• 3DES uses 128-bit keys
46
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Attacks on DES
• Timing Attacks
– Information gained about key/plaintext by observing how long
implementation takes to decrypt
– No known useful attacks on DES
• Differential Cryptanalysis
– Observe how pairs of plaintext blocks evolve
– Break DES in 247 encryptions (compared to 255); but require
247 chosen plaintexts
• Linear Cryptanalysis
– Find linear approximations of the transformations
– Break DES using 243 known plaintexts
47
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Multiple Encryption with DES
• DES is vulnerable to brute force attack
• Alternative block cipher that makes use of
DES software/equipment/knowledge: encrypt
multiple times with different keys
• Options:
1. Double DES: not much better than single DES
2. Triple DES (3DES) with 2 keys: brute force 2112
3. Triple DES with 3 keys: brute force 2168
48
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Double Encryption
• For DES, 2 × 56-bit keys, meaning 112-bit key length
• Requires 2111
operations for brute force?
• Meet-in-the-middle attack makes it easier
49
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Meet-in-the-Middle Attack
• Double DES Encryption: C = E(K2;E(K1; P))
• Say X = E(K1; P) = D(K2; C)
• Attacker knows two plaintext, ciphertext pairs (Pa; Ca) and (Pb;
Cb)
1. Encrypt Pa using all 256
values of K1 to get multiple values of X
2. Store results in table and sort by X
3. Decrypt Ca using al 256
values of K2
4. As each decryption result produced, check against table
5. If match, check current K1;K2 on Cb. If Pb obtained, then accept the keys
• With two known plaintext, ciphertext pairs, probability of
successful attack is almost 1
• Encrypt/decrypt operations required: 256
(twice as many as single
DES)
50
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Triple Encryption
• 2 keys, 112 bits
• 3 keys, 168 bits
• Why E-D-E? To be compatible with single DES:
C = E(K1;D(K1;E(K1; P))) = E(K1; P)
51
Introduction to Cryptography and Security Mechanisms 2005 52
Triple DES
ciphertext
Encrypt
Using DES
plaintext
Key K1
Decrypt
Using DES
Encrypt
Using DES
Key K2
Key K1
1
Key K = K1 and K2
3
2
4
53
DES
Parameter DES specification
Type of design Feistel Cipher
Number of rounds 16
Block size 64
Length of key 56
Public / proprietary Published as FIPS 46
54
Design criticisms
Criticism Comment
Secret design criteria
Design criteria of round function / key schedules secret.
(although actual design public)
Fear of trapdoors has proved unfounded.
Weak keys
Certain DES keys are weak.
(encryption and decryption has same effect)
Few such keys and their use easily avoided.
Inadequate key
length
56 bits an inadequate key length.
Criticised even in 1975
Unsubstantiated claims that NSA insisted on the
“small” key length.
Introduction to Cryptography and Security Mechanisms 2005 55
Searching for a DES key
Suppose that we have a machine consisting
of one million processors, each of which can
test one million keys per second.
How long is it likely to take before we find a
DES key during an exhaustive key search?
56
Searching for a DES key
Year Source Implemented? (Estimated)
Cost in US$
(Estimated)
Search time
1977 Diffie
Hellman
No 20 million 20 hours
1993 Wiener No 10.5 million
1.5 million
600 000
21 minutes
3.5 hours
35 hours
1997 Internet Yes Unknown 140 days
1998 Electronic
Frontier
Foundation
[www.eff.org]
Yes 210 000 56 hours
IFETCE/M.E CSE/NE7202-NIS/Unit 2 57
DES today
• Well accepted that a DES key can be found
by anyone determined enough.
• Differential and linear cryptanalysis provide
academic attacks on DES.
• DES is still in use in many applications.
• Triple DES or AES are commonly
recommended instead of DES .
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Advanced Encryption Standard
• NIST called for proposals for new standard in 1997
– Aims: security, efficient software/hardware implementations, low
memory requirements, parallel processing
– Candidate algorithms from around the world
– Rijndael chosen, standard called AES created in 2001
• AES:
– Block size: 128 bits (others possible)
– Key size: 128, 192, 256 bits
– Rounds: 10, 12, 14 (depending on key)
– Operations: XOR with round key, substitutions using S-Boxes,
mixing using Galois Field arithmetic
• Widely used in file encryption, network communications
• Generally considered secure
58
IFETCE/M.E CSE/NE7202-NIS/Unit 2 59
Design requirements of AES
• The selection would be a public process and the
chosen algorithm and design details would be made
freely available for public use.
• The block size should be 128 bits.
• The block cipher would be designed to offer variable
key lengths of 128, 192 and 256 bits, to allow for
future developments in exhaustive key search efforts.
• The block cipher had to operate at a faster speed
than Triple DES across a number of different
platforms.
In 1998 NIST issued a call for proposals for a new block
cipher standard, to be referred to as the Advanced
Encryption Standard or AES.
IFETCE/M.E CSE/NE7202-NIS/Unit 2 60
Development of AES
• 15 candidate proposals, quickly reduced to 11 in August
1998.
• In April 1999, after a public consultation process, this
was reduced to five candidates: MARS, RC6, Rijndael,
SERPENT and TWOFISH.
• In October 2000 the winning algorithm Rijndael was
selected.
• Federal Information Processing Standard FIPS 197, the
Advanced Encryption Standard, published early 2001.
This standard specifies AES (Rijndael) as a FIPS-
approved symmetric encryption algorithm that may be
used by U.S. Government organizations (and others) to
protect sensitive information.
• AES now widely adopted and supported.
61
AES encryption round
Byte
substitution
Shift rows
Mix
columns
AES
S-box
Key
schedule
round key
++
key
current state
new state
IFETCE/M.E CSE/NE7202-NIS/Unit 2
Other Block Ciphers
• Blowsh (Schneier, open)
• Twosh (Schneier et al., open)
• IDEA (patented)
• Skipjack (NSA, Clipper)
• . . .
62
IFETCE/M.E CSE/NE7202-NIS/Unit 2 63
Summary
• Stream ciphers and block ciphers are different types of
symmetric encryption algorithm. They offer slightly
different properties and are therefore suitable for
different applications.
– Simple stream ciphers are fast and do not propagate errors,
making them suitable for poor quality channels and for
applications where errors are intolerable.
– Block ciphers do propagate errors (to a limited extent), but are
quite flexible and can be used in different ways in order to
provide different security properties (in some cases to achieve
some of the benefits of stream ciphers).
• The properties of cryptographic algorithms are not only
affected by algorithm design, but also by the ways in
which the algorithms are used. Different modes of
operation can significantly change the properties of a
block cipher.

More Related Content

What's hot

Diffie hellman key algorithm
Diffie hellman key algorithmDiffie hellman key algorithm
Diffie hellman key algorithmShaishavShah8
 
Substitution techniques
Substitution techniquesSubstitution techniques
Substitution techniquesvinitha96
 
Block Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption StandardBlock Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption StandardDr.Florence Dayana
 
DES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationDES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationsarhadisoftengg
 
CRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITYCRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITYKathirvel Ayyaswamy
 
AES-Advanced Encryption Standard
AES-Advanced Encryption StandardAES-Advanced Encryption Standard
AES-Advanced Encryption StandardPrince Rachit
 
Public Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithmPublic Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithmIndra97065
 
2. Stream Ciphers
2. Stream Ciphers2. Stream Ciphers
2. Stream CiphersSam Bowne
 
symmetric key encryption algorithms
 symmetric key encryption algorithms symmetric key encryption algorithms
symmetric key encryption algorithmsRashmi Burugupalli
 
Block cipher modes of operation
Block cipher modes of operation Block cipher modes of operation
Block cipher modes of operation harshit chavda
 
The rsa algorithm
The rsa algorithmThe rsa algorithm
The rsa algorithmKomal Singh
 
Cryptography and Network Security
Cryptography and Network SecurityCryptography and Network Security
Cryptography and Network SecurityPa Van Tanku
 
block ciphers
block ciphersblock ciphers
block ciphersAsad Ali
 
Ch01
Ch01Ch01
Ch01n C
 

What's hot (20)

Diffie hellman key algorithm
Diffie hellman key algorithmDiffie hellman key algorithm
Diffie hellman key algorithm
 
Substitution techniques
Substitution techniquesSubstitution techniques
Substitution techniques
 
S-DES.ppt
S-DES.pptS-DES.ppt
S-DES.ppt
 
RC4&RC5
RC4&RC5RC4&RC5
RC4&RC5
 
Cryptography
CryptographyCryptography
Cryptography
 
Block Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption StandardBlock Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption Standard
 
DES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationDES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentation
 
CRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITYCRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITY
 
AES-Advanced Encryption Standard
AES-Advanced Encryption StandardAES-Advanced Encryption Standard
AES-Advanced Encryption Standard
 
Public Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithmPublic Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithm
 
2. Stream Ciphers
2. Stream Ciphers2. Stream Ciphers
2. Stream Ciphers
 
Pgp
PgpPgp
Pgp
 
symmetric key encryption algorithms
 symmetric key encryption algorithms symmetric key encryption algorithms
symmetric key encryption algorithms
 
Block cipher modes of operation
Block cipher modes of operation Block cipher modes of operation
Block cipher modes of operation
 
The rsa algorithm
The rsa algorithmThe rsa algorithm
The rsa algorithm
 
Aes
AesAes
Aes
 
Cryptography and Network Security
Cryptography and Network SecurityCryptography and Network Security
Cryptography and Network Security
 
block ciphers
block ciphersblock ciphers
block ciphers
 
Ch01
Ch01Ch01
Ch01
 
Des
DesDes
Des
 

Viewers also liked (17)

Lec13 cdn
Lec13 cdnLec13 cdn
Lec13 cdn
 
Going beyond-data-and-analytics-v4
Going beyond-data-and-analytics-v4Going beyond-data-and-analytics-v4
Going beyond-data-and-analytics-v4
 
Asp controls
Asp  controlsAsp  controls
Asp controls
 
Intellij idea features
Intellij idea featuresIntellij idea features
Intellij idea features
 
Advancedrn
AdvancedrnAdvancedrn
Advancedrn
 
Ch20
Ch20Ch20
Ch20
 
(148064384) bfs
(148064384) bfs(148064384) bfs
(148064384) bfs
 
Role of locking- cds
Role of locking- cdsRole of locking- cds
Role of locking- cds
 
Introto netthreads-090906214344-phpapp01
Introto netthreads-090906214344-phpapp01Introto netthreads-090906214344-phpapp01
Introto netthreads-090906214344-phpapp01
 
Collaborative filtering hyoungtae cho
Collaborative filtering hyoungtae choCollaborative filtering hyoungtae cho
Collaborative filtering hyoungtae cho
 
Cdn imw01
Cdn imw01Cdn imw01
Cdn imw01
 
worklight_development_environment
worklight_development_environmentworklight_development_environment
worklight_development_environment
 
Android sql examples
Android sql examplesAndroid sql examples
Android sql examples
 
Caqa5e ch4
Caqa5e ch4Caqa5e ch4
Caqa5e ch4
 
Hans enocson how big data creates opportunities for productivity improvements...
Hans enocson how big data creates opportunities for productivity improvements...Hans enocson how big data creates opportunities for productivity improvements...
Hans enocson how big data creates opportunities for productivity improvements...
 
Big data trendsdirections nimführ.ppt
Big data trendsdirections nimführ.pptBig data trendsdirections nimführ.ppt
Big data trendsdirections nimführ.ppt
 
Visual studio-2012-product-guide
Visual studio-2012-product-guideVisual studio-2012-product-guide
Visual studio-2012-product-guide
 

Similar to Des

Block Cipher.cryptography_miu_year5.pptx
Block Cipher.cryptography_miu_year5.pptxBlock Cipher.cryptography_miu_year5.pptx
Block Cipher.cryptography_miu_year5.pptxHodaAhmedBekhitAhmed
 
4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf
4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf
4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdfNAWAZURREHMANAWAN
 
Overview on Cryptography and Network Security
Overview on Cryptography and Network SecurityOverview on Cryptography and Network Security
Overview on Cryptography and Network SecurityDr. Rupa Ch
 
Two fish & Rijndael (AES) Encryption Algorithm
Two fish & Rijndael (AES) Encryption AlgorithmTwo fish & Rijndael (AES) Encryption Algorithm
Two fish & Rijndael (AES) Encryption AlgorithmRifat Tasnim
 
Chapter 3: Block Ciphers and the Data Encryption Standard
Chapter 3: Block Ciphers and the Data Encryption StandardChapter 3: Block Ciphers and the Data Encryption Standard
Chapter 3: Block Ciphers and the Data Encryption StandardShafaan Khaliq Bhatti
 
Block ciphers & public key cryptography
Block ciphers & public key cryptographyBlock ciphers & public key cryptography
Block ciphers & public key cryptographyRAMPRAKASHT1
 
Information and data security block cipher and the data encryption standard (...
Information and data security block cipher and the data encryption standard (...Information and data security block cipher and the data encryption standard (...
Information and data security block cipher and the data encryption standard (...Mazin Alwaaly
 
Lecture 05 - 04 Nov 21.pptx
Lecture 05 - 04 Nov 21.pptxLecture 05 - 04 Nov 21.pptx
Lecture 05 - 04 Nov 21.pptxHammadAsghar26
 
DES-lecture (1).ppt
DES-lecture (1).pptDES-lecture (1).ppt
DES-lecture (1).pptMrsPrabhaBV
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD Editor
 

Similar to Des (20)

Des1
Des1Des1
Des1
 
Block Cipher.cryptography_miu_year5.pptx
Block Cipher.cryptography_miu_year5.pptxBlock Cipher.cryptography_miu_year5.pptx
Block Cipher.cryptography_miu_year5.pptx
 
1 DES.pdf
1 DES.pdf1 DES.pdf
1 DES.pdf
 
4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf
4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf
4-BlockCipher-DES-CEN451-BSE-Spring2022-17042022-104521am.pdf
 
Overview on Cryptography and Network Security
Overview on Cryptography and Network SecurityOverview on Cryptography and Network Security
Overview on Cryptography and Network Security
 
Two fish & Rijndael (AES) Encryption Algorithm
Two fish & Rijndael (AES) Encryption AlgorithmTwo fish & Rijndael (AES) Encryption Algorithm
Two fish & Rijndael (AES) Encryption Algorithm
 
3.pptx
3.pptx3.pptx
3.pptx
 
chap3.pdf
chap3.pdfchap3.pdf
chap3.pdf
 
section-8.ppt
section-8.pptsection-8.ppt
section-8.ppt
 
Chapter 3: Block Ciphers and the Data Encryption Standard
Chapter 3: Block Ciphers and the Data Encryption StandardChapter 3: Block Ciphers and the Data Encryption Standard
Chapter 3: Block Ciphers and the Data Encryption Standard
 
Block ciphers & public key cryptography
Block ciphers & public key cryptographyBlock ciphers & public key cryptography
Block ciphers & public key cryptography
 
4-DES.pdf
4-DES.pdf4-DES.pdf
4-DES.pdf
 
Information and data security block cipher and the data encryption standard (...
Information and data security block cipher and the data encryption standard (...Information and data security block cipher and the data encryption standard (...
Information and data security block cipher and the data encryption standard (...
 
Lecture 05 - 04 Nov 21.pptx
Lecture 05 - 04 Nov 21.pptxLecture 05 - 04 Nov 21.pptx
Lecture 05 - 04 Nov 21.pptx
 
Network Security Lec4
Network Security Lec4Network Security Lec4
Network Security Lec4
 
DES-lecture (1).ppt
DES-lecture (1).pptDES-lecture (1).ppt
DES-lecture (1).ppt
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
 
Des lecture
Des lectureDes lecture
Des lecture
 
sheet7.pdf
sheet7.pdfsheet7.pdf
sheet7.pdf
 
paper7.pdf
paper7.pdfpaper7.pdf
paper7.pdf
 

Recently uploaded

VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Roomdivyansh0kumar0
 
定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一
定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一
定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一3sw2qly1
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012rehmti665
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...akbard9823
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITMgdsc13
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With RoomVIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Roomdivyansh0kumar0
 

Recently uploaded (20)

VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
 
定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一
定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一
定制(CC毕业证书)美国美国社区大学毕业证成绩单原版一比一
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
 
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
Call Girls South Delhi Delhi reach out to us at ☎ 9711199012
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
Sushant Golf City / best call girls in Lucknow | Service-oriented sexy call g...
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
Git and Github workshop GDSC MLRITM
Git and Github  workshop GDSC MLRITMGit and Github  workshop GDSC MLRITM
Git and Github workshop GDSC MLRITM
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With RoomVIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
 

Des

  • 2. IFETCE/M.E CSE/NE7202-NIS/Unit 2 2 Learning Outcomes • Recognise the different components of the cryptographic process • Identify some of the factors involved in selecting a cryptographic algorithm • Describe the model of a stream cipher • Appreciate the types of application where a stream cipher is most appropriate • Describe the model of a block cipher • Recall the basic design features and history of DES • Comment on the security issues surrounding modern use of DES
  • 3. IFETCE/M.E CSE/NE7202-NIS/Unit 2 3 Overview • Block Cipher Principles – Stream and Block Ciphers – Ideal Block Cipher – The Feistel Cipher • The Data Encryption Standard – DES Details – DES Design Issues – The Strength of DES – Differential and Linear Cryptanalysis
  • 4. 4 A symmetric classification 1 …… 1 …… 0 ……0 ……0 E 1……...1……..1…….0…….1 100110110100010111010010 1100100111010100100010011 E E E E 100110110100010111010010 110010011101010010001001 100110 110100 010111 010010 E E E E 110010 011101 010010 001001 … … … … Stream cipher Block cipher
  • 5. Stream Ciphers Call the plaintext stream P, the ciphertext stream C, and the key stream K. 5
  • 7. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Model of a block cipher • Encrypt a block of plaintext as a whole to produce same sized ciphertext • Typical block sizes are 64 or 128 bits • Modes of operation used to apply block ciphers to larger plaintexts 7 block of ciphertext
  • 8. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Reversible and Irreversible Mappings • n-bit block cipher takes n bit plaintext and produces n bit ciphertext • 2n possible different plaintext blocks • Encryption must be reversible (decryption possible) • Each plaintext block must produce unique ciphertext block • Total transformations is 2n ! 8
  • 11. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Ideal Block Cipher • n-bit input maps to 2n possible input states • Substitution used to produce 2n output states • Output states map to n-bit output • Ideal block cipher allows maximum number of possible encryption mappings from plaintext block • Problems with ideal block cipher: – Small block size: equivalent to classical substitution cipher; cryptanalysis based on statistical characteristics feasible – Large block size: key must be very large; performance/implementation problems 11
  • 12. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Practical Block Ciphers • Modern block ciphers use a key of K bits to specify a random subset of 2K mappings. • If K ≈ N, – 2K is much smaller than 2N ! – But is still very large. • If the selection of the 2K mappings is random, the resulting cipher will be a good approximation of the ideal block cipher. • Horst Feistel, in1970s, proposed a method to achieve this. 12
  • 13. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Feistel Structure for Block Ciphers • Feistel proposed applying two or more simple ciphers in sequence so final result is cryptographically stronger than component ciphers • n-bit block length; k-bit key length; 2k transformations • Feistel cipher alternates: substitutions, transpositions(permutations) • Applies concepts of diffusion and confusion • Applied in many ciphers today 13
  • 14. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Diffusion and Confusion • Diffusion – Statistical nature of plaintext is reduced in ciphertext – E.g. A plaintext letter affects the value of many ciphertext letters – How: repeatedly apply permutation (transposition) to data, and then apply function • Confusion – Make relationship between ciphertext and key as complex as possible – Even if attacker can find some statistical characteristics of ciphertext, still hard to find key – How: apply complex (non-linear) substitution algorithm 14
  • 15. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Feistel Structure for Block Ciphers • Approach: – Plaintext split into halves – Subkeys (or round keys) generated from key – Round function, F, applied to right half – Apply substitution on left half using XOR – Apply permutation: interchange to halves 15
  • 18. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Using the Feistel Structure • Exact implementation depends on various design features – Block size, e.g. 64, 128 bits: larger values leads to more diffusion – Key size, e.g. 128 bits: larger values leads to more confusion, resistance against brute force – Number of rounds, e.g. 16 rounds – Subkey generation algorithm: should be complex – Round function F: should be complex • Other factors include fast encryption in software and ease of analysis • Tradeoff: security vs performance 18
  • 19. IFETCE/M.E CSE/NE7202-NIS/Unit 2 September, 2006 Feistel decryption • same as encryption, except • ciphertext is input • use keys in reverse order • at each round the output is equal to the corresponding value of the encryption process with the two halves of the value swapped • final permutation (swap) realigns 2 halves
  • 21. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Data Encryption Standard • Symmetric block cipher – 56-bit key, 64-bit input block, 64-bit output block • One of most used encryption systems in world – Developed in 1977 by NBS/NIST – Designed by IBM (Lucifer) with input from NSA – Principles used in other ciphers, e.g. 3DES, IDEA • Simplified DES (S-DES) – Cipher using principles of DES – Developed for education (not real world use) 21
  • 22. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Simplied DES • Input (plaintext) block: 8-bits • Output (ciphertext) block: 8-bits • Key: 10-bits • Rounds: 2 • Round keys generated using permutations and left shifts • Encryption: initial permutation, round function, switch halves • Decryption: Same as encryption, except round keys used in opposite order 22
  • 24. IFETCE/M.E CSE/NE7202-NIS/Unit 2 S-DES Operations • EP (expand and permutate) – Input : 1 2 3 4 – Output: 4 1 2 3 2 3 4 1 • IP (initial permutation) – Input : 1 2 3 4 5 6 7 8 – Output: 2 6 3 1 4 8 5 7 • IP-1 (inverse of IP) • LS-1 (left shift 1 position) • LS-2 (left shift 2 positions) 24
  • 26. IFETCE/M.E CSE/NE7202-NIS/Unit 2 S-DES Encryption Details 26
  • 27. IFETCE/M.E CSE/NE7202-NIS/Unit 2 S-DES S-Boxes • S-DES (and DES) perform substitutions using S-Boxes • S-Box considered as a matrix: input used to select row/column; selected element is output • 4-bit input: bit1; bit2; bit3; bit4 • bit1bit4 species row (0, 1, 2 or 3 in decimal) • Bit2bit4 species column • 2-bit output 27
  • 28. IFETCE/M.E CSE/NE7202-NIS/Unit 2 S-DES Example • Plaintext: 01110010 • Key: 1010000010 • Ciphertext: 01110111 28
  • 29. IFETCE/M.E CSE/NE7202-NIS/Unit 2 S-DES Summary • Educational encryption algorithm • S-DES expressed as functions: ciphertext = IP-1 (fK2 (SW (fK1 (IP (plaintext))))) plaintext = IP-1 (fK1 (SW (fK2 (IP (ciphertext))))) • Security of S-DES: –10-bit key, 1024 keys: brute force easy –If know plaintext and corresponding ciphertext, can we determine key? Very hard 29
  • 30. Comparing DES and S-DES S-DES • 8-bit blocks • 10-bit key: 2 x 8-bit round keys • IP: 8-bits • F operates on 4 bits • 2 S-Boxes • 2 rounds DES • 64-bit blocks • 56-bit key: 16 x 48-bit round keys • IP: 64 bits • F operates on 32 bits • 8 S-Boxes • 16 rounds 30 S-DES encryption: ciphertext = IP-1 (fK2 (SW (fK1 (IP (plaintext))))) DES encryption: ciphertext = IP-1 (fK16 (SW (fK15 (SW (: : : (fK1 (IP (plaintext))))))))
  • 31. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Design Principles of DES • To achieve high degree of diffusion and confusion. • Diffusion: making each plaintext bit affect as many ciphertext bits as possible. • Confusion: making the relationship between the encryption key and the ciphertext as complex as possible. 1
  • 32. IFETCE/M.E CSE/NE7202-NIS/Unit 2 General DES Encryption Algorithm 32
  • 33. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Round Keys Generation • Main key: 64 bits. • 56-bits are selected and permuted using Permuted Choice One (PC1); and then divided into two 28-bit halves. • In each round: – Left-rotate each half separately by either 1 or 2 bits according to a rotation schedule. – Select 24-bits from each half, and permute the combined 48 bits. – This forms a round key.
  • 36. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Single Round of DES Algorithm Introduction to Cryptography and Security Mechanisms 2005 36
  • 37. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Calculation of F(R,K) Introduction to Cryptography and Security Mechanisms 2005 37
  • 38. IFETCE/M.E CSE/NE7202-NIS/Unit 2 The S-Boxes • Eight S-boxes each map 6 to 4 bits • Each S-box is specified as a 4 x 16 table – each row is a permutation of 0-15 – outer bits 1 & 6 of input are used to select one of the four rows – inner 4 bits of input are used to select a column • All the eight boxes are different.
  • 41. IFETCE/M.E CSE/NE7202-NIS/Unit 2 DES Key Schedule Calculation 41
  • 42. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Avalanche Effect • Avalanche effect: – A small change in the plaintext or in the key results in a significant change in the ciphertext. – an evidence of high degree of diffusion and confusion – a desirable property of any encryption algorithm • DES exhibits a strong avalanche effect – Changing 1 bit in the plaintext affects 34 bits in the ciphertext on average. – 1-bit change in the key affects 35 bits in the ciphertext on average.
  • 43. IFETCE/M.E CSE/NE7202-NIS/Unit 2 The Avalanche Eect • Following examples show the number of bits that change in output when two different inputs are used, differing by 1 bit • Plaintext 1: 02468aceeca86420 • Plaintext 2: 12468aceeca86420 • Ciphertext difference: 32 bits • Key 1: 0f1571c947d9e859 • Key 2: 1f1571c947d9e859 • Ciphertext difference: 30 43
  • 44. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Avalanche Eect in DES: Change in Plaintext 44
  • 45. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Avalanche Eect in DES: Change in Key 45
  • 46. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Key Size • Although 64 bit initial key, only 56 bits used in encryption (other 8 for parity check) • 256 = 7.2 × 1016 – 1977: estimated cost $US20m to build machine to break in 10 hours – 1998: EFF built machine for $US250k to break in 3 days – Today: 56 bits considered too short to withstand brute force attack • 3DES uses 128-bit keys 46
  • 47. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Attacks on DES • Timing Attacks – Information gained about key/plaintext by observing how long implementation takes to decrypt – No known useful attacks on DES • Differential Cryptanalysis – Observe how pairs of plaintext blocks evolve – Break DES in 247 encryptions (compared to 255); but require 247 chosen plaintexts • Linear Cryptanalysis – Find linear approximations of the transformations – Break DES using 243 known plaintexts 47
  • 48. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Multiple Encryption with DES • DES is vulnerable to brute force attack • Alternative block cipher that makes use of DES software/equipment/knowledge: encrypt multiple times with different keys • Options: 1. Double DES: not much better than single DES 2. Triple DES (3DES) with 2 keys: brute force 2112 3. Triple DES with 3 keys: brute force 2168 48
  • 49. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Double Encryption • For DES, 2 × 56-bit keys, meaning 112-bit key length • Requires 2111 operations for brute force? • Meet-in-the-middle attack makes it easier 49
  • 50. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Meet-in-the-Middle Attack • Double DES Encryption: C = E(K2;E(K1; P)) • Say X = E(K1; P) = D(K2; C) • Attacker knows two plaintext, ciphertext pairs (Pa; Ca) and (Pb; Cb) 1. Encrypt Pa using all 256 values of K1 to get multiple values of X 2. Store results in table and sort by X 3. Decrypt Ca using al 256 values of K2 4. As each decryption result produced, check against table 5. If match, check current K1;K2 on Cb. If Pb obtained, then accept the keys • With two known plaintext, ciphertext pairs, probability of successful attack is almost 1 • Encrypt/decrypt operations required: 256 (twice as many as single DES) 50
  • 51. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Triple Encryption • 2 keys, 112 bits • 3 keys, 168 bits • Why E-D-E? To be compatible with single DES: C = E(K1;D(K1;E(K1; P))) = E(K1; P) 51
  • 52. Introduction to Cryptography and Security Mechanisms 2005 52 Triple DES ciphertext Encrypt Using DES plaintext Key K1 Decrypt Using DES Encrypt Using DES Key K2 Key K1 1 Key K = K1 and K2 3 2 4
  • 53. 53 DES Parameter DES specification Type of design Feistel Cipher Number of rounds 16 Block size 64 Length of key 56 Public / proprietary Published as FIPS 46
  • 54. 54 Design criticisms Criticism Comment Secret design criteria Design criteria of round function / key schedules secret. (although actual design public) Fear of trapdoors has proved unfounded. Weak keys Certain DES keys are weak. (encryption and decryption has same effect) Few such keys and their use easily avoided. Inadequate key length 56 bits an inadequate key length. Criticised even in 1975 Unsubstantiated claims that NSA insisted on the “small” key length.
  • 55. Introduction to Cryptography and Security Mechanisms 2005 55 Searching for a DES key Suppose that we have a machine consisting of one million processors, each of which can test one million keys per second. How long is it likely to take before we find a DES key during an exhaustive key search?
  • 56. 56 Searching for a DES key Year Source Implemented? (Estimated) Cost in US$ (Estimated) Search time 1977 Diffie Hellman No 20 million 20 hours 1993 Wiener No 10.5 million 1.5 million 600 000 21 minutes 3.5 hours 35 hours 1997 Internet Yes Unknown 140 days 1998 Electronic Frontier Foundation [www.eff.org] Yes 210 000 56 hours
  • 57. IFETCE/M.E CSE/NE7202-NIS/Unit 2 57 DES today • Well accepted that a DES key can be found by anyone determined enough. • Differential and linear cryptanalysis provide academic attacks on DES. • DES is still in use in many applications. • Triple DES or AES are commonly recommended instead of DES .
  • 58. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Advanced Encryption Standard • NIST called for proposals for new standard in 1997 – Aims: security, efficient software/hardware implementations, low memory requirements, parallel processing – Candidate algorithms from around the world – Rijndael chosen, standard called AES created in 2001 • AES: – Block size: 128 bits (others possible) – Key size: 128, 192, 256 bits – Rounds: 10, 12, 14 (depending on key) – Operations: XOR with round key, substitutions using S-Boxes, mixing using Galois Field arithmetic • Widely used in file encryption, network communications • Generally considered secure 58
  • 59. IFETCE/M.E CSE/NE7202-NIS/Unit 2 59 Design requirements of AES • The selection would be a public process and the chosen algorithm and design details would be made freely available for public use. • The block size should be 128 bits. • The block cipher would be designed to offer variable key lengths of 128, 192 and 256 bits, to allow for future developments in exhaustive key search efforts. • The block cipher had to operate at a faster speed than Triple DES across a number of different platforms. In 1998 NIST issued a call for proposals for a new block cipher standard, to be referred to as the Advanced Encryption Standard or AES.
  • 60. IFETCE/M.E CSE/NE7202-NIS/Unit 2 60 Development of AES • 15 candidate proposals, quickly reduced to 11 in August 1998. • In April 1999, after a public consultation process, this was reduced to five candidates: MARS, RC6, Rijndael, SERPENT and TWOFISH. • In October 2000 the winning algorithm Rijndael was selected. • Federal Information Processing Standard FIPS 197, the Advanced Encryption Standard, published early 2001. This standard specifies AES (Rijndael) as a FIPS- approved symmetric encryption algorithm that may be used by U.S. Government organizations (and others) to protect sensitive information. • AES now widely adopted and supported.
  • 61. 61 AES encryption round Byte substitution Shift rows Mix columns AES S-box Key schedule round key ++ key current state new state
  • 62. IFETCE/M.E CSE/NE7202-NIS/Unit 2 Other Block Ciphers • Blowsh (Schneier, open) • Twosh (Schneier et al., open) • IDEA (patented) • Skipjack (NSA, Clipper) • . . . 62
  • 63. IFETCE/M.E CSE/NE7202-NIS/Unit 2 63 Summary • Stream ciphers and block ciphers are different types of symmetric encryption algorithm. They offer slightly different properties and are therefore suitable for different applications. – Simple stream ciphers are fast and do not propagate errors, making them suitable for poor quality channels and for applications where errors are intolerable. – Block ciphers do propagate errors (to a limited extent), but are quite flexible and can be used in different ways in order to provide different security properties (in some cases to achieve some of the benefits of stream ciphers). • The properties of cryptographic algorithms are not only affected by algorithm design, but also by the ways in which the algorithms are used. Different modes of operation can significantly change the properties of a block cipher.

Editor's Notes

  1. To achieve high degree of diffusion and confusion. Diffusion: making each plaintext bit affect as many ciphertext bits as possible. Confusion: making the relationship between the encryption key and the ciphertext as complex as possible.
  2. The 56 bit key size comes from security considerations as we know now. It was big enough so that an exhaustive key search was about as hard as the best direct attack (a form of differential cryptanalysis called a T-attack, known by the IBM & NSA researchers), but no bigger. The extra 8 bits were then used as parity (error detecting) bits, which makes sense given the original design use for hardware communications links. However we hit an incompatibility with simple s/w implementations since the top bit in each byte is 0 (since ASCII only uses 7 bits), but the DES key schedule throws away the bottom bit! A good implementation needs to be cleverer!
  3. The example lists 8 6-bit values (ie 18 in hex is 011000 in binary, 09 hex is 001001 binary, 12 hex is 010010 binary, 3d hex is 111101 binary etc), each of which is replaced following the process detailed above using the appropriate S-box. ie S1(011000) lookup row 00 col 1100 in S1 to get 5 S2(001001) lookup row 01 col 0100 in S2 to get 15 = f in hex S3(010010) lookup row 00 col 1001 in S3 to get 13 = d in hex S4(111101) lookup row 11 col 1110 in S4 to get 2 etc