Chapter 6
Chapter 6
Subject: security
Chapter 5: Block cipher stream cipher is one that encrypts/decrypts a data stream character by character, one character at a time,
all the classical cryptography are stream ciphers.
Pages:
block cipher encrypts/ decrypts a block of n characters and produces an output of similar length. The Data
Encryption Standard (DES), Advanced Encryption Standard (AES), are examples of block ciphers.
key terms:
Most of the symmetric key-based block cipher algorithms currently in use are based on a structure known
as Feistel block cipher. In general, block cipher algorithms ensure higher security over stream cipher
algorithms.
1. Block Cipher Principles = symmetric key-based algorithm
To enhance the security of symmetric key algorithms, Claude Shannon introduced two principles:
confusion and diffusion.
a) Confusion: Shannon said confusion makes the relation between the key and the ciphertext as
complex as possible. every character in the key influences every other character of the
ciphertext block.
A good confusion could be achieved if each character of the ciphertext depends on several parts of the
key. For any attacker, it must appear that this dependence is random. This could be achieved by
utilizing complex substitution techniques in the algorithm.
Questions b) Diffusion: making each plaintext bit s affected by many ciphertext bits as possible.
In binary block cipher, an algorithm must be designed with a combination of permutation and
should be followed by a function. The binary block is permuted repeatedly, followed by applying a
function to that permuted block.
2. The strength of a Feistel network:
• Block size: The larger the block, the greater the security, a larger block size reduces the speed of the encryption/decryption technique.
• Key size: Like the block size, larger is better. Again, a larger key may increase the processing time, and hence reduce the
encryption/decryption speed.
• Number of rounds: a single round is inadequate to assure a required level of security, multiple rounds offer increasing security.
• Subkey generation algorithm: For greater security, a subkey generation algorithm also plays an important role. A complex algorithm
makes the cryptanalysis difficult. All the subkeys must be generated in such a way that they have greater resistance to brute-force attacks
and greater confusion.
• Round function: Again, a greater complex round function makes the cryptanalysis difficult, and hence increases the security.
3. Block Cipher Modes
a) Electronic Codebook (ECB) Mode
b) Cipher Block Chaining (CBC)
c) Cipher Feedback (CFB) Mode
d) Output Feedback (OFB) Mode
e) Counter (CTR) Mode