Computer >> Computer tutorials >  >> Programming >> Programming

Difference between Block Cipher and Stream Cipher


Both Block and Stream cipher are the methods of Encryptions which are primarily used for converting the plain text into cipher text directly and belong to the family of symmetric key ciphers.

Following are the important differences between Block Cipher and Stream Cipher.

Sr. No.KeyBlock CipherStream Cipher
1DefinitionBlock Cipher is the type of encryption where the conversion of plain text performed by taking its block at a time.On other hand Stream Cipher is the type of encryption where the conversion of plain text performed by taking one byte of the plain text at a time.
2Conversion of BitsAs Block Cipher takes block at a time so comparatively more bits get converted as compared to in Stream Cipher specifically 64 bits or more could get converted at a time.On other hand in case of Stream Cipher at most 8 bits could get converted at a time.
3PrincipleBlock Cipher uses both confusion and diffusion principle for the conversion required for encryption.On other hand Stream Cipher uses only confusion principle for the conversion.
4AlgorithmFor encryption of plain text Block Cipher uses Electronic Code Book (ECB) and Cipher Block Chaining (CBC) algorithm.On other hand Stream Cipher uses CFB (Cipher Feedback) and OFB (Output Feedback) algorithm.
5DecryptionAs combination of more bits get encrypted in case of Block Cipher so the reverse encryption or decryption is comparatively complex as compared to that of Stream Cipehr.On other hand Stream Cipher uses XOR for the encryption which can be easily reversed to the plain text.
6ImplementationThe main implementation of Block Cipher is Feistel Cipher.On other hand the main implementation of Stream Cipher is Vernam Cipher.