Conventional Encryption / Secret Key Cryptography
Conventional Encryption / Secret Key Cryptography
Stream and Block Ciphers
A stream cipher is one that encrypts a digital data stream one bit or one byte at a time. Examples
of classical stream ciphers are the auto keyed Vigenère cipher and the Vernam cipher. A block
cipher is one in which a block of plaintext is treated as a whole and used to produce a ciphertext
block of equal length. Typically, a block size of 64 or 128 bits is used. Using some of the modes
of operation explained in Chapter 6, a block cipher can be used to achieve the same effect as a
stream cipher.
Stream V/s Block Ciphers
Advantages of Stream Ciphers
- Speed of transformation. Because each symbol is encrypted without regard for any other
plaintext symbols, each symbol can be encrypted as soon as it is read. Thus, the time to encrypt a
symbol depends only on the encryption algorithm itself, not on the time it takes to receive more
plaintext.
- Low error propagation. Because each symbol is separately encoded, an error in the encryption
process affects only that character.
Disadvantages of Stream Ciphers
- Low diffusion. Each symbol is separately enciphered. Therefore, all the information of that
symbol is contained in one symbol of the ciphertext.
- Susceptibility to malicious insertions and modifications. Because each symbol is separately
enciphered, an active interceptor who has broken the code can splice together pieces of previous
messages and transmit a spurious new message that may look authentic.
Advantages of Block Ciphers
- High diffusion. Information from the plain-text is diffused into several ciphertext symbols. One
ciphertext block may depend on several plaintext letters.
- Immunity to insertion of symbols. Because blocks of symbols are enciphered, it is impossible
to insert a single symbol into one block. The length of the block would then be incorrect, and the
decipherment would quickly reveal the insertion.
Disadvantages of Block Ciphers
- Slowness of encryption. The person or machine using a block cipher must wait until an entire
block of plaintext symbols has been received before starting the encryption process.
Post a Comment