Professional Documents
Culture Documents
Block Cipher Design Priciples
Block Cipher Design Priciples
Principles
Unit 2
INTRODUCTION
Block ciphers:
Encrypts a block of plaintext as a
whole to produce same sized
ciphertext.
Typical block sizes are 64 or 128 bits
Most of the ciphers are block ciphers.
If the message is large modes of
operations are used.
Introduction contd..
Stream ciphers:
Stream ciphers process messages a
bit or byte at a time when
en/decrypting
1. Number of Rounds
The greater the number of rounds,
the more difficult it is to perform
cryptanalysis, even for a relatively
weak F.
It is easy to determine the strength
of an algorithm and to compare
different algorithms.
2. Design of Function F
The heart of a Feistel block cipher is the
function F.
The function F provides the element of
confusion.
Characteristics of F:
1. F should be nonlinear. i.e not straight
forward
3. S-box design
One obvious characteristic of the Sbox is its size.
An n x m S-box has n input bits and m
output bits.
DES has 6 x 4 S-boxes.
Blowfish has 8 x 32 S-boxes.
Avalanche effect
A small change in either the plaintext
or the key should produce a
significant change in the ciphertext.
In particular, one bit change in either
the plaintext or the key half bits
change in ciphertext
Differential cryptanalysis
Differential cryptanalysis is a form of
cryptanalysis which studies
cryptographic algorithms by
observing how differences in input
affect differences on output.
Attack:
chosenplaintext/ciphertext pairs
Modes of operation
Modes of operation
A block cipher algorithm takes on a fixed-length
input, i.e. a block, and output a block of the same
length.
To encrypt files of various lengths we need to divide a
file into blocks of that given fixed length then the
block cipher works on each block separately.
Operation mode:
The manner and structure in which we feed the block
cipher with blocks of the plaintext file and then pickup
and combine the output blocks to produce the
ciphertext file.
Note:
we can use the same operation mode with different
block ciphers to construct different encryption
systems
Modes of operation
Example:
Encryption:
Padded plaintext: P= P1P2PN
Ciphertext: C = C1C2CN
C1=EK(IV P1)
Ci=EK(Ci-1 Pi), 2iN
Decryption:
Pi =C E(K, [C P
])
Mode
Description
Input is processedjbits at a
time. Preceding ciphertext is
General-purpose streamused as input to the encryption oriented transmission
algorithm to produce
Authentication
pseudorandom output, which is
XORed with plaintext to produce
next unit of ciphertext.
Counter (CTR)
Typical Application
Stream-oriented transmission
over noisy channel (e.g.,
satellite communication)