Block ciphers like DES encrypt data in fixed-size blocks and use symmetric encryption keys. DES is a 64-bit block cipher that uses a 56-bit key. It employs a Feistel network structure with 16 rounds to provide diffusion and confusion of the plaintext block. Each round uses subkey-dependent substitution boxes and permutation functions. While DES was widely adopted, cryptanalysis techniques showed it could be broken with less than 256 tries, making the key size too short by modern standards.
Information and data security block cipher and the data encryption standard (des)
1. Block Cipher and the
data encryption
standard (DES)
Lecture slides
By
Rasha
2. Content
Block Cipher Principles
The Data Encryption Standard
DES Details
DES Design Issues and Attacks
3. The objectives
now look at modern block ciphers
one of the most widely used types of
cryptographic algorithms
provide secrecy /authentication services
focus on DES (Data Encryption Standard)
to illustrate block cipher design principles
4. Cryptography Classification
The old encryption and decryption techniques before the
implementation of computer system are called classical techniques ,
with implementation computer are called modern techniques.
However , cryptography system (classical or modern ) are generally
classified along three independent dimensions:
1- type of operations : used for transforming plaintext to ciphertext .
all encryption algorithm are based on general principle:
a) substitution
b) transposition
c) bit manipulation
5. Cryptography Classification
2- Number of keys used
a) symmetric: if the same key is used by both the sender and receiver
for encryption and decryption it might be called single key ,secret key,
conventional encryption.
b) asymmetric: each sender and receiver using different key.
3- The way in which plaintext processed
a) block cipher: the input massage is divided in the blocks of elements
and each block is processes at a time ,producing an output block for
input.
b)stream cipher :the input elements are processed individually ,
producing an output as one element at a time too.
6. Block Ciphers
Encrypt data one block at a time
„Used in broader range of applications
„Typical block size 64 – 128 bits 128 bits
„Most algorithms based on a structure referred to as
Feistel block cipher
8. Block cipher principles
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!
9. Ideal Block Cipher
key is mapping ; Key length 16 × 4 bits = 64 bits . i.e. concatenate all bits of ciphertext table
11. 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
Key length :
– In general, key length is 2n × n
– „Actual block size is at least 64 bit ( „Key length will be 264× 64 ≈ 1021 „bits)
12. Feistel Structure for Block Ciphers
Feistel proposed applying two or more simple ciphers in sequence so final result
cryptographically stronger than component ciphers
n-bit block length; k-bit key length; 2k transformations (rather than 2n !)
Feistel cipher alternates: substitutions, transpositions (permutations)
Applies concepts of diffusion and confusion
Applied in many ciphers today
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
implements Shannon’s S-P net concept
14. Confusion and Diffusion
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
15. 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
17. Data Encryption Standard (DES)
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.
28. Avalanche Effect
Aim: small change in key (or plaintext) produces large change in ciphertext
Avalanche effect is present in DES (good for security)
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
32. Key size
Although 64 bit initial key, only 56 bits used in
encryption (other 8 for parity check)
256 = 7.2 x 1016
– Today: 56 bits considered too short to
withstand brute force attack
3DES uses 128-bit keys
33. 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
34. DES Algorithm Design
DES was designed in private; questions about the
motivation of the design
– S-Boxes provide non-linearity: important part
of DES, generally considered to be secure
– S-Boxes provide increased confusion
– Permutation P chosen to increase diffusion
35. Summary
have considered:
– block vs stream ciphers
– Feistel cipher design & structure
– DES
» details
» strength