Comparative Analysis of Advanced Encryption Standard, Blowfish and Rivest Cipher 4 Algorithms
Cryptography is one of the main categories of computer security that converts information from its normal form into an unreadable form. The two main characteristics that identify and differentiate one encryption algorithm from another are its ability to secure the protected data against attacks and its speed and efficiency in doing so.Cryptography is required to transmit confidential information over the network. It is also demanding in wide range of applications which includes mobile and networking applications. Cryptographic algorithms play a vital role in providing the data security against malicious attacks. But on the other hand, they consume significant amount of computing resources like CPU time, memory, encryption time etc. Normally, symmetric key algorithms are preferred over asymmetric key algorithms as they are very fast in nature. Symmetric algorithms are classified as block cipher and stream ciphers algorithms. In this research project, I comparedthe AES and Blowfish algorithms with different modes of operation (ECB, CBC, and CFB) and RC4 algorithm (stream cipher) in terms encryption time, decryption time, memory utilization and throughput at different settings likevariable key size and variable data packet size.A stimulation program is developed using PHP and JavaScript scripting languages. The program encrypts and decrypts different file sizes ranging from 1MB to 50MB. Firstly the user input 32 characters of key and 16 characters of Initialization Vector that would be used by the algorithm to encrypt and decrypt the message. After the key and Initialization vector are input, the user then use the browse button to select a file which has a size ranging from 1MB to 50 MB on the hard drive. A prompt is displayed if the size of the file exceeds the specified range. The submit button is used by the user to initiate the process. A notification is displayed on the screen while the process is being executed. During the encryption and decryption process, the software automatically creates a file which copies the contents of the files being encrypted and decrypted into a folder on the user's hard drive. The stimulator analyzes and produces graphical representation of the results to the user.