0% found this document useful (0 votes)
94 views11 pages

Performance Evaluation of Cryptographic Algorithms: DES, 3DES, Blowfish, Twofish, and Threefish

Uploaded by

omaaa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
94 views11 pages

Performance Evaluation of Cryptographic Algorithms: DES, 3DES, Blowfish, Twofish, and Threefish

Uploaded by

omaaa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

51

International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

Performance Evaluation of Cryptographic


Algorithms: DES, 3DES, Blowfish, Twofish, and
Threefish
Haneen Alabdulrazzaq1, Mohammed N. Alenezi1
1Computer Science & Information Systems Department , Public Authority for Applied Education & Training, Kuwait

Abstract: Many individuals and organizations use the Internet to symmetric key algorithms. They also require more time to
store and send personal or business information. Some of this complete the encryption and decryption operations, especially
information is highly confidential, and its online storage and when dealing with large file sizes.
transmission raises issues of data privacy and confidentiality. Major Hashing is a type of cryptographic algorithm that is used
advances in Internet technology have aided intruders in obtaining
mainly for storing passwords and performing data integrity
unauthorized access to confidential information. The confidential
information transmitted via the Internet must be protected and this
checks. Hash functions are one-way functions that map data
can be achieved through cryptographic encryption and decryption into a fixed-size string of bits that is referred to as a hash.
algorithms. Encryption hides confidential information by converting There are several different types of hash functions, including
it to an unreadable form. The reverse process of retrieving data from the secure hashing algorithm (SHA), RACE integrity
the unreadable or encrypted form is known as decryption. Many primitives evaluation message digest (RIPEMD), message
cryptographic algorithms exist today, and the selection of which one digest algorithm (MD), and Whirlpool, among others.
to use depends on several factors and measures. This paper presents Digital signatures are mathematical functions or algorithms
a comparison of the encryption speeds of five different cryptographic that can be used to ensure the authenticity of an email
symmetric block-cipher algorithms: DES, TripleDES, Blowfish,
message, a credit card transaction, or a digital document. A
Twofish, and Threefish, based on the results of a simulations
conducted with various text file sizes using Python. The results show
digital signature can be thought of as being similar to an
that Blowfish outperforms the other algorithms tested. electronic fingerprint used to identify and protect users. A
digital signature is used to ensure that a message or document
Keywords: Information security, Encryption, Decryption, has not changed since the time when its digital signature was
Cryptography, Key, Cipher. signed. A digital signature is applied to a document by
encrypting the document with the sender’s secret key after
1. Introduction hashing the document or information. Public key
Government entities, private companies, and individuals infrastructure (PKI), which is a set of standards and policies
share data and information over the Internet. A significant for the distribution of public keys and validation of the identity
amount of this data is private and must remain confidential of users with digital certificates, is used to strengthen security.
between the exchanging parties. To ensure data We evaluated the performance of five different symmetric key
confidentiality and security during transmission, Internet cryptographic algorithms: DES, 3DES, Blowfish, Twofish,
service providers rely heavily on cryptographic encryption and Threefish. Each of these algorithms was tested for speed
and decryption algorithms. and throughput for different file sizes. The remainder of this
Data encryption transforms regular text into an unreadable paper is organized as follows. Section 2 briefly describes the
form. The inverse of encryption is decryption, in which five algorithms evaluated. Section 3 summarizes related work
encrypted data is reverted to its original form. The processes and experiments conducted to evaluate the performance of
of encryption and decryption involve the use of certain keys. cryptographic algorithms. Section 4 presents the simulation
The main goal of encryption is to make decryption impossible setup and the results obtained. Section 5 presents conclusions
to occur in the absence of those keys. There are many drawn from the results and recommendations for future
cryptographic algorithms in existence today. Most fall into research.
three main categories: symmetric key algorithms, asymmetric
key algorithms, and hashing algorithms.
2. Overview Of The Evaluated Cryptographic
Symmetric key algorithms use the same unique key to encrypt Algorithms
and decrypt data. This private (also referred to as secret) key 2.1 Data Encryption Standard (DES)
is shared between the sender and the receiver using a secure
communication medium. The data to be encrypted are The National Bureau of Standards (NBS) accepted IBM’s
handled either as blocks or as streams of ciphers. Symmetric Lucifer cipher, with some modifications, as the Data
key algorithms that use block ciphers divide data into blocks Encryption Standard (DES) in 1973. The NBS adopted the
of fixed lengths, whereas stream cipher method encrypts data standard as the Federal Information Processing Standard
as a stream of bits. (FIPS) in 1977 [1]. DES is one of the earliest block cipher-
Asymmetric key algorithms require the use of two keys, one based symmetric key cryptographic algorithms. It encrypts or
of which is public and the other of which is private. The public decrypts blocks of 64-bit data using the same 56-bit key. The
key is used for data encryption, and the private key is used for actual key length is 56 bits, and it also contains odd parity bits,
decryption. Both keys are related and are derived making a total of 64 bits. Because of its small key size, DES
mathematically. Asymmetric key algorithms have higher was deemed insecure and has been replaced with the
central processing unit (CPU) utilization requirements than Advanced Encryption Standard (AES).
52
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

The DES algorithm encrypts or decrypts data in 16 Feistel fourth bit of the previous section, the next four bits are the
rounds of operation and two permutations (P-boxes): an initial same as the input four bits, and the last bit is the first bit of the
permutation and a final one. At each round, the algorithm uses next section. The resultant 48 bits are XORed with the key
different key combinations obtained from the original 56-bit and then pass through the S-Boxes, which take 48-bit input
key. There are 256 possible combinations for the given key. and produce 32-bit output. Each S box takes six bits of data
Figure 1 shows the working structure of the DES algorithm. and outputs four bits of data.

Figure 2. Each round of DES [4]

Figure 1. General structure of DES [2]


The initial and final permutations are keyless operations. In
the initial permutation, the first bit of input is overwritten by
the 58th bit, the second bit is overwritten by the 50th bit, and
so on. Table I lists the permutation rules for 64-bit data.
Notice that after the initial permutation, the first bit of input is
in the 40th position, and this becomes the first position in the
final permutation [3]. The two permutations are inverses of
each other. The purpose these permutations serve has not been
revealed by the algorithm’s designers.
Table 1. Permutation Table
Initial Permutation Final Permutation

58 50 42 34 26 18 10 02 40 08 48 16 56 24 64 32

60 52 44 36 28 20 12 04 39 07 47 15 55 23 63 31
Figure 3. The working of DES F Function [5]
62 54 46 38 30 22 14 06 38 06 46 14 54 22 62 30
The round key generator generates sixteen distinct 48-bit keys
64 56 48 40 32 24 16 08 37 05 45 13 53 21 61 29 for every 16 rounds from the 56-bit cipher key. The DES
algorithm has several modes of operation, including the
57 49 41 33 25 17 09 01 36 04 44 12 52 20 60 28 Electronic Code Book (ECB), Cipher Block Chaining (CBC),
and Cipher Feedback (CFB) modes.
59 51 43 35 27 19 11 03 35 03 43 11 51 19 59 27
2.2 Triple Data Encryption Standard (3DES)
61 53 45 37 29 21 13 05 34 02 42 10 50 18 58 26 Triple DES, or 3DES as it is commonly known, was first
63 55 47 39 31 23 15 07 33 01 41 09 49 17 57 25
published in 1998 [6]. It is also a block cipher-based
symmetric algorithm, in which each 64-bit block of plaintext
The working of DES is based primarily on the substitution and undergoes a DES cipher three times to enhance the security of
transposition that are performed at each round. The resultant the DES algorithm [7]. Separate 64-bit keys are used for each
permuted block obtained after the initial permutation is DES application. Triple DES enhances security but makes the
divided into left and right sub-blocks, each 32 bits in size. encryption process three times slower than that of DES. The
Figure 2 illustrates the operations performed by DES. working of 3DES is illustrated in Figure 4.
The core of a DES-based algorithm is the DES function, 3DES operates in four modes: DES-EEE3, DES-EDE3, DES-
which is shown in figure 3. The DES function takes the EEE2, and DES-EDE2. In DES-EEE3 and DES-EEE2, plain
rightmost 32 bits of data (Rn) and 48-bit key as inputs and text undergoes DES encryption three times, using three
produces 32-bit output. The expansion D-box takes 32-bit different keys and two different keys, respectively. DES-
input and converts it into 48 bits for XORing with a 48-bit EDE3 is performed in such a way that it undergoes DES
key. The input data are first divided into eight subsections of encryption, then DES decryption, and finally DES encryption,
four bits each, using a predetermined rule. The four bits are using three keys. DES-EDE2 follows the same operation
then expanded to six bits in such a way that the first bit is the sequence as DES-EDE3 but uses only two keys.
53
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

calculated by XORing LE16 with EP18, and similarly, RE17


is calculated by XORing RE16 with EP17 [1] [3].
The Blowfish function Fn consists of four key-dependent
substitution boxes (S-boxes), each of which can take 8-bit
data as input and produce 32-bit data as output, as shown in
Figure 6. Each time the Blowfish function is applied, it
divides the LE into four subsets of 8-bit data, which are given
to the corresponding S-Boxes. The output of each S-Box is
taken and combined as shown in Figure 6.

Figure 4. The working of 3DES [8]


2.3 Blowfish
Figure 6. The Blowfish F Function [9, 10]
Blowfish was designed and published in 1993 by Bruce
2.4 Twofish
Schneier. It is a good alternative to the existing encryption
algorithms because it is an unpatented, freely available fast Twofish is a highly flexible and secure 128-bit symmetric
algorithm [6]. It is a symmetric block cipher-based algorithm block cipher based cryptographic algorithm. It has a 16-round
that encrypts a block 64 bits in size. Blowfish uses variable- Feistel structure, as do DES and Blowfish. Twofish uses
length keys varying in size from 32 bit to 448 bits. Blowfish variable-length keys of sizes 128, 192, and 256 bits. Half of
is a Feistel cipher that encrypts data in 16 rounds of each key is worked as an actual cipher key, and the other half
operations, as shown in Figure 5 [1]. Blowfish is considered is used to modify the encryption algorithm [10]. The algorithm
secure and can be implemented easily. uses a bijective F function consisting of four key-dependent
The original plaintext (E) is divided into LE 0 and RE0, each 8-by-8 S-boxes, a fixed 4-by-4 maximum distance separable
of which is 32 bits in size. Blowfish also has a P-array (MDS) matrix, a pseudo-Hadamard transform (PHT), bitwise
containing 18 subkeys, with each array element 32 bits in size. rotations, and a well-designed key scheduler [11], as shown in
In each round, the inputs (LE and RE) passed to the next Figure 7. 128-bit plain text is split into four subsections of 32
round are calculated using equations 1 and 2. bits each. These four subsets undergo an initial whitening
phase with four subkeys. In the whitening step, the XOR
𝐿𝐸𝑛 = 𝐿𝐸𝑛−1 ⊕ 𝐸𝑃𝑛 (1) operation is performed with the corresponding key.
𝑅𝐸𝑛 = 𝐹𝑛(𝐿𝐸𝑛 ) ⊕ 𝑅𝐸𝑛−1 (2)

Figure 7. Block diagram of Twofish [11]


The core of Twofish is the g function, which contains the S-
Figure 5. The working of Blowfish [1] boxes and MDS matrix. The actual working of each round of
RE and LE are swapped before the next round is started. Twofish is shown in Figure 8. Each input of its g function is
After 16 rounds of this repeated step, the final ciphertext can further divided into four, each subset runs through its S-box,
be formed by combining LE17 and RE17. Once the final and the output is combined in an MDS matrix. The resulting
round has been completed, LE16 and RE16 are again 32-bit matrix is the output of the g function. The output of
swapped to undo the effect of the last swapping. LE17 is both g functions is further combined using PHT.
54
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

Figure 9 illustrates the first four rounds of a Threefish-256


cipher. One subkey is generated after every four rounds. At
each round, the word permutation is the same, and rotations
are constant in the consecutive eight rounds. The key schedule
consists of a key and a tweak value, and it generates subkey
values [14]. Threefish-256 consists of 72 rounds with two mix
operations followed by a permutation in each round.
Threefish-512 consists of 72 rounds with four mix operations
in each round, and Threefish-1024 has 80 rounds with eight
mix operations in each round. Threefish is considered a wide-
block cipher algorithm because it works on blocks larger than
128 bits.
2.6 Modes of Block Cipher based encryption
Symmetric key encryption uses the same key for encrypting
and decrypting data blocks. Multiple blocks encrypted using
the same key can weaken the encryption process, and intruders
can hack a message if it contains similar blocks of data. To
handle this issue of generating identical ciphertext from
identical plaintext, extra input is introduced to each block of
encryption. This idea of adding plaintext and ciphertext from
the previous block is known as a block cipher mode of
Figure 8. The Working of Twofish [10] operation. Several block cipher modes exist today to enhance
Twofish can run easily on smaller processors, such as smart the security of symmetric key cryptographic algorithms,
cards, and can be embedded in hardware. It is one of the including the Electronic Code Book (ECB), Cipher Block
license-free and unpatented encryption mechanisms available, Chaining (CBC), Propagating or Plaintext Cipher Block
and it can be customized [12]. Chaining (PCBC), Cipher Feedback (CFB), Output Feedback
2.5 Threefish (OFB), and Counter (CTR). Each of these modes has its own
advantages and disadvantages, as summarized below.
Threefish is a tweakable symmetric block cipher-based
2.6.1 Electronic Code Book (ECB)
cryptographic algorithm that takes an additional tweak value
of 128 bits for all block sizes along with the plaintext and ECB is a straightforward mode in which each block is
actual key value. This unique tweak value is used to encrypt encrypted separately. The plaintext is divided into n-bit
the data. The key and block sizes in Threefish are equal. blocks, and each block is encrypted in any order. Decryption
Threefish can encrypt data blocks that are 256 bits, 512 bits, can also be performed individually without consideration of
or 1024 bits in size, using a key of equal size. It typically takes the order. The main advantages of ECB mode are that it is fast
72 rounds to perform encryption for data blocks that are 256 and easy to implement, no data synchronization is needed;
or 512 bits in size. In the case of a 1024-bit block, however, encryption and decryption can be done in parallel, and single-
it takes 80 rounds of operation to produce ciphertext. To avoid bit errors only affect the corresponding block. However, ECB
timing attacks, Threefish does not utilize S-boxes or any other can be easily deciphered and subjected to substitution attacks
table lookups [13]. Threefish encryption uses three types of [15].
operations: addition, XOR, and rotations. 2.6.2 Cipher Block Chaining (CBC)
CBC mode introduces a degree of randomness to avoid attacks
due to determinism. The plaintext is split into n-bit blocks,
and each block is XORed with the ciphertext block of the
previous block, except for the first block. The first block is
XORed with a random initialization vector (IV) of the same
length as the plaintext. IV is a number used only once (nonce)
that can be generated using a random number generator or
counter. The retrieval of plaintext from ciphertext is almost
impossible in the case of a single-bit error in plaintext. In
contrast, a single-bit error in the ciphertext would affect only
two subsequent plaintext blocks. Encryption and decryption
cannot be done in parallel because the ciphertext of each block
affects the next block’s encryption.
2.6.3 Plaintext Cipher Block Chaining (PCBC)
PCBC mode is similar to CBC mode in that it combines the
plaintext and ciphertext current block with the plaintext of the
next block. In addition, a single-bit transmission error will
damage an entire block of data, preventing retrieval of the
plaintext.

Figure 9. First Four Round Operations of the Threefish-256


Cipher [14]
55
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

2.6.4 Cipher Feedback (CFB) broken yet, whereas ECC had successfully been broken.
CFB mode works in a manner similar to a stream cipher, in Wahid et al. [18] analyzed the performance of the DES, 3DES,
which the plaintext of the current block is combined with the AES, RSA, and Blowfish encryption algorithms to assess their
ciphertext of the previous block. In CFB mode, the same performance, strengths, and weaknesses. They analyzed these
encryption procedure is used for both encryption and algorithms based on various parameters, such as memory,
decryption. An initialization vector is XORed with the time, and attacks. Blowfish outperformed the other algorithms
plaintext of the first block to produce the ciphertext. in terms of memory, time, and level of security. AES was
Parallelization is possible for decryption but not encryption. found to be the best algorithm in terms of confidentiality and
In this mode as well, a single-bit error in the plaintext will integrity.
damage the entire ciphertext, but similar errors in the Tyagi and Ganpati [19] performed a theoretical analysis of the
ciphertext will only affect the two subsequent blocks. most popular cryptographic algorithms: DES, 3DES, AES,
and Blowfish. They analyzed the performance of these block
2.6.5 Output Feedback (OFB)
cipher-based symmetric key cryptographic algorithms with
The working of OFB is similar to CFB. The n-bit plaintext in respect to various parameters, such as speed, block size,
each block is XORed with the previously generated ones from security against attacks, confidentiality, throughput, power
the block cipher, except for the first block. The first block is consumption, and key size, among others. Blowfish
XORed with the externally supplied initialization vector (IV). outperformed the other three algorithms in terms of encryption
Encryption and decryption proceed in the same manner. The or decryption time and throughput, whereas 3DES exhibited
effect of one XOR nullifies another XOR. The feedback to the poorest performance. Princy [20] assessed the
each block can be performed before the actual plaintext. performance of AES, DES, 3DES, Blowfish, RC4, and RC6
Parallelization of encryption and decryption is not possible. A in terms of processing time and required number of rounds.
single-bit error affects only the corresponding plain or Blowfish was found to provide higher security and privacy,
ciphertext. even for an unsecured transmission channel. The results of the
2.6.6 Counter (CTR) study also showed that the effectiveness of Blowfish could be
The counter mode, like a stream cipher, encrypts data using an increased by increasing the key length from 128 bits to 448
additional input that is a combination of an increasing counter bits.
and a nonce value. The nonce initial vector’s length is less Mathur and Kesarwani [21] evaluated the performance of six
than the block length, and the counter is normally initialized widely used cryptographic algorithms( DES, 3DES, AES,
as 0. This mode has been widely adopted because of its RC2, RC6, and Blowfish) with respect to various parameters,
effectiveness. In counter mode, encryption and decryption are including key length, encoding method, data type, and packet
performed in parallel. size. They evaluated the performance of these algorithms
using both hexadecimal base encoding and base-64 encoding.
2.6.7 Encrypt-Authenticate-Translate (EAX)
The study results confirmed that the encoding technique has
EAX is a mode proposed by Mihir Bellare, Phillip Rogaway, no impact on the performance. Blowfish performed better than
and David Wagner for solving the problem of authenticated all of the other algorithms under study in several respects.
encryption with associated data (AEAD) [16]. EAX follows a They performance of the algorithms in image encryption was
two-pass scheme in which encryption and authentication are also evaluated. RC2, RC6, and Blowfish were found to have
done independently of one another. In EAX mode, only the significant difficulties in handling image encryption. The time
encryption functionality of the block cipher is used [17]. and power consumption were found to increase with
increasing key length. Nema and Rizvi [22] studied the
3. Related Work performance of several available cryptographic algorithms
Security becomes a primary criterion in the development of (DES, 3DES, AES, Blowfish, Twofish, Threefish, RC2, RC4,
information technology and the Internet. Users need to keep RC5, and RC6) with respect to factors such as throughput,
their information safe and secure in storage and/or scalability, security, memory usage, power consumption,
transmission. Service providers ensure security through data speed, and flexibility. Each of the algorithms was found to
encryption and decryption. There are a variety of encryption have advantages and disadvantages, depending on the purpose
and decryption algorithms available to protect the data. Users of the encryption and the parameters under consideration.
and service providers need to select encryption algorithms Based on the study results, the researchers recommended that
based on their needs. Each algorithm has its advantages and a user select the algorithm best suited for the application and
disadvantages. Our primary concern is choosing a suitable the user’s concerns. If the user’s concerns are security,
algorithm for a particular situation. Various studies have been flexibility, memory usage, and encryption performance, then
done to compare the performance of encryption algorithms Blowfish is the best choice.
based on multiple parameters. Nadeem and Javed [23] compared the performance, including
Bhanot and Hans [13] evaluated the performance of various the encryption speed, of the DES, 3DES, AES, and Blowfish
symmetric and asymmetric cryptographic algorithms to algorithms for various input file contents and lengths and
identify the best algorithm among them. The authors analyzed different hardware platforms. These block cipher-based
the strengths and weaknesses of ten algorithms based on symmetric algorithms were implemented using Java and were
parameters such as the development, key length, number of ranked in the following order of encryption speed: Blowfish,
rounds needed for encryption and decryption, block size, DES, AES, and Triple DES. Blowfish performed better than
various types of attacks found, level of security, and the other three algorithms in several respects. The encryption
encryption speed. The strength of each algorithm was found speeds of these algorithms increased with decreasing key
to depend on the parameters chosen and the situation. The length and increasing data block length, and while the security
authors shortlisted Blowfish and ECC for their speed and of each algorithm increased with increasing number of rounds,
security. Among these algorithms, Blowfish had not been the encryption speed decreased. Alenezi et al. [24] compared
56
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

and analyzed AES, Blowfish, DES, DESede, SEED, IDEA, algorithms. No operating mode was used in the simulations
RC2, RC4, RC6, SEED, and XTEA for encryption time, with the Twofish and Threefish algorithms.
throughput, and CPU utilization. The results showed that AES The simulations were executed on a computer with a 64-bit
was the better candidate in terms of performance as well as Microsoft Windows 10 Pro operating system. The computer’s
the level of security it provided. CPU has two Intel™ processors running at 2.927 GHz and 64
Jeevalatha and SenthilMurugan [10] analyzed various GB of RAM. The system has Python version 3.10 installed.
encryption algorithms, such as AES, Blowfish, and Twofish, 4.2 Results and Discussion
to identify the algorithm that provided the highest security
The simulation results for the five algorithms are shown in
using the least space and time. They examined various aspects
Figures 10 through 14. Figure 15 shows a comparison of the
of the design and performance of each algorithm. Their results
performance of the algorithms tested. Table 2 lists the
showed that AES performed better than the other two
recorded speed, measured in seconds, for all of the algorithms.
algorithms. Gehlot [11] proposed a modification of the
In the case of the 1-MB file, the DES algorithm’s encryption
existing Twofish encryption algorithm. The suggested
speed was 0.042 s, second only to that of Blowfish. Figure 10
minimum-delay Twofish algorithm achieved better
shows the encryption speed for the DES algorithm. The 3DES
performance.
algorithm’s encryption speed was 0.139 s for a file size of 1
4. Performance and Analysis MB and 11.973 s for 100 MB, as illustrated in Figure 11. The
results for 3DES were well within expectations, in that its
4.1 Simulation and System Setup encryption speeds were approximately three times faster than
A performance simulation of the algorithms described in the DES algorithm. Blowfish proved to have the fastest
section 2 was performed using the Python programming encryption speeds, encrypts a 100-MB text file in 3.193 s, for
language. The Crypto.Cipher package from example. The encryption times for Blowfish are shown in
Pycryptodome.org was used. This is a self-contained Figure 12. The encryption times for Twofish included 0.514 s
cryptographic library for Python that includes for a 1-MB file and 51.886 s for a 100-MB file. According to
implementations of the DES, 3DES, and Blowfish the simulation results, Twofish was the slowest of the five
cryptographic algorithms [25]. For the Twofish algorithm, an algorithms tested, as shown in Figure 13. The Threefish
implementation found in Python called twofish was used [26]. algorithm achieved relatively fast encryption speeds, given the
The Threefish cryptographic algorithm’s implementation was complexity of the algorithm and the key size used. Figure 14
carried out using the Python package Pyskein-1.0 [27]. illustrates the encryption speeds for the Threefish algorithm.
The encryption speeds of the five cryptographic algorithms
were tested using generated text files 1 Mb, 5 MB, 10 Mb, 50
MB, and 100 MB in size. For the DES algorithm, the key size
used in the simulation was 64 bits. For the 3DES, Blowfish,
and Twofish algorithms, the key size used in the simulation
was 128 bits. For the Threefish algorithm, the key size was
256 bits , and the tweak size was 128 bits. The EAX mode was
used in the simulations with the DES, 3DES, and Blowfish
57
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

Figure 10. Encryption speed for DES algorithm

Figure 11. Encryption speed for 3DES algorithm


58
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

Figure 12. Encryption speed for Blowfish algorithm

Figure 13. Encryption speed for Twofish algorithm


59
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

Figure 14. Encryption speed for Threefish algorithm

Figure 15. Comparison of encryption speed for DES, 3DES, Blowfish, Twofish, and Threefish.
60
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022

Table 2. Comparison of Encryption Time Measured in Seconds


Algorithm Key size in bits 1 MB 5 MB 10 MB 50 MB 100 MB

DES 64 0.042 0.209 0.418 2.087 4.163

3DES 128 0.139 0.74 1.355 6.176 11.973


Blowfish 128 0.031 0.152 0.331 1.713 3.193
Twofish 128 0.514 2.644 5.232 26.725 51.886
Threefish 256 0.076 0.397 0.793 3.993 8.125

The results show that the Blowfish algorithm is the fastest in [3] A. Kahate, Cryptography and Network Security. Tata
terms of encryption. It should be noted that these results Mcgraw-Hill Publishing Company Limited, 2003. [Online].
pertain to the particular experimental setup and the algorithm Available:
packages as described in IV-A. DES, 3DES, and Blowfish https://books.google.com.kw/books?id=SWbn3lBe2FcC
[4] H. Zodpe and P. Wani, “Design and implementation of
were tested in EAX operating mode. Applying other modes of algorithm for des cryptanalysis,” International Conference on
operation may yield slightly different results. Twofish and Hybrid Intelligent Systems (HIS), pp. 278–282, 2012, India.
Threefish are tested without a mode of operation. For real- [5] B. J. Saha and K. Kabi, “Digital image encryption using ecc
world applications, an operating mode such as CBC or CTR and des with chaotic key generator,” International Journal of
is highly recommended by the twofish Python library author. Engineering Research & Technology (IJERT), Vol. 2, No. 11,
With regard to Threefish algorithm, not all modes of operation pp. 2593–2597, 2013.
may work, as many of the standard modes offer incomplete [6] P. Patil, P. Narayankar, D. Narayan, and S. M. Meena, “A
support for wide-block cipher algorithms [28]. Therefore, comprehensive evaluation of cryptographic algorithms: Des,
choosing an appropriate mode of operation for the Twofish 3des, aes, rsa and blowfish,” Procedia Computer Science, Vol.
78, pp. 617–624, 2016.
and Threefish algorithms, as well as the rest of the algorithms, [7] M. Panhwar, S. Ali Khuhro, G. Panhwar, and K. Ali, “Saca: A
is left to the discretion of the user, depending on the study of symmetric and asymmetric cryptographic
requirements of the application. algorithms,” IJCSNS International Journal of Computer
Science and Network Security, Vol. 19, No. 1, pp. 48-55, 2019.
5. Conclusion and Future Work [8] C. Rahmad, K. Arai, A. Prasetyo, and N. Arizki, “Noble
method for data hiding using steganography discrete wavelet
In this research, we compared the encryption speeds of five transformation and cryptography triple data encryption
symmetric key algorithms: DES, 3DES, Blowfish, Twofish, standard: Des,” International Journal of Advanced Computer
and Threefish. The results show that Blowfish outperforms the Science and Applications, Vol. 9, No. 11, pp. 261-266, 2018.
other algorithms tested. These results should be interpreted in [9] R. Patel and P. Kamboj, “Security enhancement of blowfish
light of the particular experimental setup used and nature of block cipher,” International conference on smart trends for
the implementations, as described earlier. Potential users of information technology and computer communications, pp.
cryptographic algorithms should consider several factors— 231–238, 2016, India.
not just encryption speed—before deciding on an algorithm to [10] E.Jeevalatha and S.SenthilMurugan, “Evolution of aes,
employ. Factors such as the type and size of file, the system blowfish and two fish encryption algorithm,” International
Journal of Scientific and Engineering Research, Vol. 9, No. 4,
in which the cryptographic algorithm will be executed, and the pp. 115-118, 2018.
level of security needed must all be taken into consideration [11] P. Gehlot, S. R. Biradar, and B. P. Singh, “Implementation of
before a decision is made. Several algorithms, including DES, modified twofish algorithm using 128 and 192-bit keys on
have been proven to be vulnerable to attacks and therefore vhdl,” International Journal of Computer Applications, Vol.
might not be suitable for use when highly confidential data is 70, No. 13, pp. 37–42, 2013.
at stake. [12] B. Schneier, “The twofish encryption algorithm,”
In future work, we would like to investigate the algorithms we https://www.schneier.com/academic/archives/1998/12/the_tw
tested with respect to several performance measures other than ofish_encrypti.html, Dec. 1998, [Online; accessed 11 Nov
encryption speed. We would also like to test the performance 2021].
[13] R. Bhanot and R. Hans, “A review and comparative analysis
of various encryption algorithms using different file types, of various encryption algorithms,” International Journal of
such as images, audio, and video files. Finally, we would like Security and Its Applications, Vol. 9, No. 4, pp. 289-306, 2015.
to explore the effects of particular implementations of [14] N. Ferguson, S. Lucks, B. Schneier, D. Whiting, M. Bellare, T.
cryptographic algorithms on encryption speed, as well as on Kohno, J. Callas, and J. Walker. "The Skein hash function
other performance measures. family." Submission to NIST (round 3) 7, no. 7.5, 2010.
[15] D. Bujari and E. Aribas, “Comparative analysis of block cipher
References modes of operation,” International Advanced Researches &
Engineering Congress, pp. 1-4, 2017, Turkey.
[1] M. Mushtaq, S. Jamel, A. Disina, Z. Pindar, N. Shakir, and M. [16] M. Bellare, P. Rogaway, and D. Wagner, “The eax mode of
Mat Deris, “A survey on the cryptographic encryption operation,” International Workshop on Fast Software
algorithms,” International Journal of Advanced Computer Encryption. Springer, pp. 389–407, 2004, Berlin, Heidelberg.
Science and Applications, Vol. 8, No. 11, pp. 333–344, 2017.
[17] E. B. Kavun, H. Mihajloska, and T. Yalcin, “A survey on
[2] A. Shorman and M. Qatawneh, “Performance improvement of
authenticated encryption–asic designer’s perspective,” ACM
double data encryption standard algorithm using parallel
Computing Surveys (CSUR), Vol. 50, No. 6, pp. 1-21, 2019.
computation,” International Journal of Computer Applications,
vol. 179, No. 25, pp. 1–6, 2018.
61
International Journal of Communication Networks and Information Security (IJCNIS) Vol. 14, No. 1, April 2022
[18] M. N. A. Wahid, A. K. Ali, B. Esparham, and M. Marwan, “A
comparison of cryptographic algorithms: Des, 3des, aes, rsa
and blowfish for guessing attacks prevention,” Journal
Computer Science Applications and Information Technology,
Vol. 3, No. 2, pp. 1-7, 2018.
[19] N. Tyagi and A. Ganpati, “Comparative analysis of symmetric
key encryption algorithms,” International Journal of Advanced
Research in Computer Science and Software Engineering, Vol.
4, No. 8, pp. 348-354, 2014.
[20] P. Princy, “A comparison of symmetric key algorithms des,
aes, blowfish, rc4, rc6: A survey,” International Journal of
Computer Science & Engineering Technology (IJCSET), Vol.
6, No. 5, pp. 328-331, 2015.
[21] M. Mathur and A. Kesarwani, “Comparison between des, 3des,
rc2, rc6, blowfish and aes,” Proceedings of National
Conference on New Horizons in IT-NCNHIT, Vol. 3, pp. 143-
148, 2013, India.
[22] P. Nema and M.A.Rizvi, “Critical analysis of various
symmetric key cryptographic algorithms,” International
Journal on Recent and Innovation Trends in Computing and
Communication, Vol. 3, No. 6, pp. 4301-4306, 2015.
[23] A. Nadeem and M. Y. Javed, “A performance comparison of
data encryption algorithms,” 2005 international Conference
on information and communication technologies. IEEE, pp.
84–89, 2005, Pakistan.
[24] M. N. Alenezi, H. Alabdulrazzaq, and N. Q. Mohammed,
“Symmetric encryption algorithms: review and evaluation
study,” International Journal of Communication Networks and
Information Security, Vol. 12, No. 2, pp. 256-272, 2020.
[25] L. GitHub, “Crypto.cipher package,”
https://pycryptodome.readthedocs.io/en/latest/src/cipher/ciph
er.html, Jun. 2014, [On- line; accessed 12 Dec 2021].
[26] N. Ferguson, “twofish 0.3.0,” https://pypi.org/project/twofish/,
Nov. 2013, [Online; accessed 12 Dec 2021].
[27] H. Fu¨rstenau, “Pyskein 1.0 - the skein hash algorithm for
python,” https://pythonhosted.org/pyskein/index.html, Aug.
2013, [Online; accessed 12 Dec 2021].
[28] C. wiki, “Threefish,”
https://www.cryptopp.com/wiki/Threefish, Sep. 2021,
[Online; accessed 14 Dec 2021].

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy