Introduction to 3DES
Performance Analysis of Data Encryption Algorithms
In this area intends to give the readers for the necessary background to understand the key differences between the compared algorithms.
- DES: (Data Encryption Standard), was the first encryption standard to be recommended by NIST (National Institute of Standards and Technology). It is based on the IBM proposed algorithm called Lucifer. DES became a standard in 1974. Since that time, many attacks and methods recorded that exploit the weaknesses of DES, which made it an insecure block cipher.
- 3DES: An enhancement of DES, the 3DES (Triple DES) encryption standard was proposed. In this standard the encryption method is similar to the one in original DES but applied 3 times to increase the encryption level.
- AES: (Advanced Encryption Standard), is the new encryption standard recommended by NIST to replace DES. Rijndael (pronounced Rain Doll) algorithm was selected in 1997, after a competition to select the best encryption standard. Brute force attack is the only effective attack known against it, in which the attacker tries to test all the characters combinations to unlock the encryption. Both AES and DES are block ciphers.
- Blowfish: Blowfish is a variable length key, 64-bit block cipher. The Blowfish algorithm was first introduced in 1993. This algorithm can be optimized in hardware applications though it's mostly used in software applications. It suffers from weak keys problem, no attack is known to be successful against.
Related Work and Comparative Results
To give more prospective about the performance of the compared algorithms, this section discusses the results obtained from other resources. The below Table 4.1 contains the speed benchmarks for some of the most commonly used cryptographic algorithms. These results are good to have an indication about what the presented comparison results. It is shown that Blowfish and AES have the best performance among others. And both of them are known to have better encryption (i.e. stronger against data attacks) than the other two.
Table 4.1: Comparison results using Crypto++
Figure 4.2: Comparison results using Crypto++ - Graph
Figure 4.3: Comparative Execution time in Encryption Algorithm System 1
Figure 4.4: Comparative Execution time in Encryption
Algorithm System 2
The result is easy to observe that Blowfish has an advantage over other algorithms in terms of throughput and also comparison between the algorithms in stream mode using Chain Block Chaining (CBC).
The results showed that Blowfish has a very good performance compared to other algorithms. Also it showed that AES has a better performance than 3DES and DES. Amazingly it shows also that 3DES has almost 1/3 throughput of DES, or in other words it needs 3 times than DES to process the same amount of data.
The above experiments for comparing the performance of the different encryption algorithms implemented inside .NET framework. Their results are close to the ones shown in Figure 4.3.
Figure 4.5: Comparison results using .NET implementations.
The comparison was performed on the following algorithms:
DES, Triple DES (3DES), RC2 and AES (Rijndael). The
results shows that AES outperformed other algorithms in both
the number of requests processes per second in different user
loads, and in the response time in different user-load
situations.