29-05-2012, 12:13 PM
Blowfish Encryption Algorithm
Blowfish doc.docx (Size: 840.88 KB / Downloads: 67)
INTRODUCTION
Encryption seems to be the most reliable process to provide the much needed security people can rely on today to handle most of their important and personal transactions, leaving them with assurance and confidence. This includes not only inherently insecure networks, such as radio but also the Internet. There are four commonly accepted security requirements, and cryptographic algorithms can contribute to each.
• Authentic
• Privacy/confidentiality
• Integrity
• Non-repudiation
Types of Algorithm:
Mainly we have two types of algorithms.
• Asymmetric Algorithm
• Symmetric Algorithm
Asymmetric Algorithm:
Asymmetric algorithms use different keys for encryption and decryption, and the decryption key cannot be derived from the encryption key. Asymmetric algorithms are important because they can be used for transmitting encryption keys or other data securely even when the parties have no opportunity to agree on a secret key in private. Asymmetric encryption is relatively slow, and therefore unsuitable for encryption of large messages.
Symmetric Algorithm:
Symmetric algorithms use the same key for encryption and decryption (or the decryption key is easily derived from the encryption key), whereas asymmetric algorithms use a different key for encryption and decryption, and the decryption key cannot be derived from the encryption key. They usually operate at relatively high speed, and are suitable for bulk encryption of messages. Some of the examples include AES, Blowfish, CAST5, RC4, TDES, and IDEA.
Two types of symmetric algorithms are:
1. Stream Cipher
2. Block Cipher
Stream Cipher:
A stream cipher is a method of encrypting text (to produce Ciphertext) in which a cryptographic key and algorithm are applied to each binary digit in a data stream, one bit at a time. This method is not much used in modern cryptography.
Block Cipher:
The name of block cipher came from the fact that block cipher encrypts plaintext as blocks. These blocks differ in size between block cipher algorithms, for example, in DES the plaintext is divided into blocks of length 64, but it is 32 in IDEA. If the length of block cipher equal one then, it will become stream cipher.
The basic ingredients of modern fast software block encryption schemes are computer instructions like ROTATE, ADD, XOR etc. Different subsets of such operations will yield an interesting variety of different permutation groups, e.g. symmetric groups. For example simple pair of ROTATE and an ADDITION module are already powerful enough to generate every possible encryption function on its set of input blocks.