a methodical observation of the resemblance and ... · rc4, rc5, cast 128, and so on [1][2] [3]...
TRANSCRIPT
A Methodical Observation of the Resemblance and
Performance Analysis of Cryptographic Algorithms:
DES, AES, Blowfish, RK 1Yegireddi Ramesh and
2Kiran Kumar Reddi
1Department of CSE,
Aditya Institute of Technology and Management,
AP, India.
[email protected] 2Department of CS,
Krishna University,
AP, India.
Abstract In these days, the proliferation of the digital devices enormously
increasing. In today's world internet is being used by almost everyone.
Numerous file exchanges take place online including many official
documents. These files require some sort of safetyphenomena while being
communicatedacross the internet. Cryptography means anindividual can
encrypt the information and dispatch it over the internet. Hence the data is
secure and illegible for the intruders. To interceptunwarrantedentry and
utilization of digital data requires security algorithms,a parallel approach
for improving data security. This research paper a explores the synoptic
study of almost frequently utilized encryption algorithms such as DES,
AES, Blowfish and a parallel algorithm called RK algorithm. The
experimental results exhibit performance analysis of DES, AES, Blowfish
and RK algorithm for different data sets. The RK algorithm is a parallel
algorithm and produces the efficient results in a less time as compared with
the other algorithms.
Key Words: Parallel, DES, AES, blowfish, RK algorithm, performance.
International Journal of Pure and Applied MathematicsVolume 119 No. 18 2018, 737-749ISSN: 1314-3395 (on-line version)url: http://www.acadpubl.eu/hub/Special Issue http://www.acadpubl.eu/hub/
737
1. Introduction
Cryptography includes a corollary for generating written or producing codes
that permit thedata to be retainconfidential. Cryptography can metamorphose
the data into a presentation that is indecipherable for an unwarranted user,
permitted it to be conveyed without unwarranted entities decipher it back into a
understandable format, Consequently compromising the information.
Cryptography is a technique of save and transferthe data in a specificstructure,
Hence only those for whom it is belonged can read and process it. Cryptography
is a part of science that handle with the depiction of algorithms for encryption
and decryption. There are two types of encryption and decryption techniques are
obtainable, those are conventional or symmetric, asymmetric or public key. The
conventional algorithms utilizes the same key to accomplish encryption and
decryption.
Asymmetric key make use of two key values one for encryption and other for
decryption. In cryptography themiscellany of the standard encryption
algorithms are available. Those are DES, AES, Blowfish, TDEA, IDEA, RC2,
RC4, RC5, CAST 128, and so on [1][2][3][4][5].
1.1. Data Encryption Standard
The Data Encryption Standard (DES) [6] developed by IBM prior to 1970’s and
espouse by U.S National Institute of Standards and Technology (NIST). It is
very prevalent symmetric and block cipher cryptography algorithm. DES
utilizes the Feistel cipher formation with 16 rounds of processing. It is a 64 bit
chunk cipher algorithm.
Everychunk of 64 bit plaintext is individually encrypted into a chunk of 64 bit
ciphertext. DES apply a 56 bit key (literally 64 bits of the key is utilized, 8 bits
are utilized as parity).
The first round accomplishes the initial permutation of 64 bits plaintext that is
maverick of the key. Following, the plaintext chunk is spiltinput into two
identical (32 bits) partitions called left and right.
The next 16 iterations DES algorithm performs the identical function but
utilizes a dissimilar key. In the 18th round the DES algorithm accomplish the
switching of left and right parts. The last round accomplishes the inverse
permutation and generates the 64 bits cipher text (that is also the independent of
the key).
The DES algorithm abide from elementary associations in its keys. The key
plan is that DES handles not in one-way.
This yields the assailant being skilful to obtain most of the master-key by
incriminating the sub-keys of few rounds. The DES algorithm is vulnerable to
International Journal of Pure and Applied Mathematics Special Issue
738
linear cryptanalysis attacks.Information can be obtained from cipher only by
utilizeentirely the same key utilized to encipher it. Unwarrantedreceivers of the
cipher who grasp the algorithm yet do not have the correct key cannot gain the
realinformation algorithmically.
However, it may be achievable to decide the key by a brute force “exhaustion
attack.” Also, people who does have the key and the algorithm can simply
decipher the cipher and get the realinformation. A quality algorithm build on a
secure key consequentlygives a premise for interchanging the encrypted
computer data by providing the key utilized to encipher it to those approved to
have the information. Cryptographic each set of standardized parts which
implement this standard shall follow the need of FIPS 140-1.
The algorithms stated in this level may be enact in software, firmware,
hardware, or any combination thereof. The particular execution may rely on
various factors such as the application and so on. The execution which may
follow with this measure whichcomprise electronic devices micro-processors
utilizing ROM, PROM, or EEROM, and mainframe computers utilizingRAM
[6].
1.2. Advanced Encryption Standard
Advanced Encryption Standard (AES) [7] is a symmetric key encryption
algorithm.
It is implemented by Joan Daemen and Vincent Rijmen. AES is a block cipher
deliberate to replace DES for commercial applications. AES was developed to
be methodical in both hardware and software, and reinforce a block span of 128
bits and key lengths of 128, 192, and 256 bits.
The input and output for the AES algorithm made up of sequences of 128 bits
(digits with values of 0 or 1). These sequences will sometimes be mentioned to
as blocks and the number of bits they hold will be referred to as their length.
The Cipher Key for the AES algorithm is a succession of 128, 192 or 256 bits.
Other input, output and Cipher Key lengths are not allow by this standard [7].
Table 1: Shows the Parameters of AES
Key Length
(Nk words)
Block Size
(Nb words)
Number of
Rounds (Nr)
AES – 128 4 4 10
AES – 192 6 4 12
AES – 256 8 4 14
1.3. Blowfish
Blowfish [8] is a symmetric block cipher, implemented by Bruce Schneier in
1993. The algorithm made up of two sections: a key extensionsection and a data
encryption section. Blowfish has a 64-bit block size and a variable key length
from 32 up to 448 bits. Key extensionmetamorphose a key of at most 448 bits
International Journal of Pure and Applied Mathematics Special Issue
739
into several sub-key arrays totalling 4168 bytes. Blowfish follows 16 rounds of
Feistel Network. Bruce Schneier subsequentlygenerated Twofish, which do a
similar function on 128-bit blocks. The Blowfish is implemented to point four
criteria known as Fast, Compact, Simple and Variably Secure. Blowfish has
some classes of weak keys. For these weak keys, separate rounds end up
utilizing the same round-keys. Keys belonging to these classes can be observed
only in reduced-rounds versions of the algorithm and not on the full blowfish
[8].
1.4. RK Algorithm
Parallel processing is a substantialset of circumstances that makes it feasible for
reinforce high performance systems and resolve large problems in numerous
application fields.
The Parallel algorithm is a set of concurrent actions mapped onto dissimilar
computing elements. This algorithm implemented by Ramesh and Kiran. RK
algorithm[9] is a parallel algorithm, this algorithmsplit the 64 character
plaintext into four sub-blocks B1, B2, B3 and B4 for parallel processing. The 16
characters from every block is metamorphosed into an equivalent binary, so
every block holds 128 bits.
Every sub-block is divided into two partitions (64 bits each) and passed to
Round Function (RF). The RF holds two shift registers. The first four bits from
first shift register (SR1) is concatenated with the first four bits of second shift
register (SR2).
The next four bits from first shift register (SR1) is concatenated with the next
four bits of second shift register (SR2). The two concatenated values are ex-
ored with first round key.
Two circular shift operations are executed to create the input for next round.
The same methodology is reiterate for 8 times (8 rounds of operation). The 8th
round output is the required ciphertext.
The results of all sub-blocks B1, B2, B3 and B4 are amalgamate to produce the
final output. Choose any random value as a Secret key. The size of key is 64
bits. The Secret key is usedto produce the 8 sub-keys, which are utilized in 8
dissimilar rounds of Round Function.
Every sub-key holds a complement and circular shift operation. Every sub-key
is produced from the previous sub-key [9].
International Journal of Pure and Applied Mathematics Special Issue
740
Figure 1: Block Diagram of RK Algorithm Encryption[9]
International Journal of Pure and Applied Mathematics Special Issue
741
2. Research Method
Having an established environment is needed prior to begin the experiments.
This paper covers the requirements that should be in place to start the
experiment. All these results are carried out on a computer having Windows 10
Pro as operating system, Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz 2.30
GHz as a processor, RAM 4 GB, x64-based 64 bit processor, Java SE 8 (JDK-
build 1.8.0_141-b15) [9][10].
The objective of this research paper is to get anentire analysis and an extensive
examination of currently accessibledistinct algorithms called DES, Blowfish
and AES with RK algorithm in terms of performance measuring and comparing.
The plaintext is having a block size of DES is 64 bits, Blowfish is 64 bits and
AES is either 128 or 192 or 256 bits only, but the block size ofRK algorithm is
512 bits (64 characters X 8 bits). Even though the block size is larger, the RK
algorithm exhibits the best performance, because it is implemented using
parallel approach. RK algorithm is symmetric and block cipher algorithm. RK
algorithm works on fixed-length groups of bits, called a block, with a
constantchange that is stated by a symmetric key. The block size 512 bits in this
algorithm and the key length is 64 bits and it will accomplish only 8 rounds to
finish the task. The table 2 exhibits the block size, key size and number of
rounds to be taken to finish the operation.
Table 2: parameter comparison of DES, AES, Blowfish and RK
DES AES Blowfish RK
Algorithm Type Symmetric,
Block Cipher
Symmetric,
Block Cipher
Symmetric, Block
Cipher
Symmetric, Block
Cipher
Block Size 64 bits 128/192/256 bits 64 bits 512 bits
Key Length 56 bits 128/192/256 bits 32 to 448 bits 64 bits
Rounds 16 10/12/14 16 8
3. Experimental Results
The presentation of DES, AES, Blowfish and RK algorithm are measured on
5KB, 16KB, 37KB, 178KB, 300KB, 750KB, 1000KB, 1500KB and 2000KB
data.The performance analysis of DES algorithm is manifested in the Table3
and its graphical portrayal is exhibited in the Figure 2. In this algorithm if the
length of the data size is increased then the execution time will also be
increased. The table 3 explores the performance analysis of this algorithm.
Table 3: Performance Analysis of DES for Different Data Values
DES Algorithm
Data Size (KB) 5 16 37
Execution Time (ms) 469 493 561
Data Size (KB) 178 300 750
Execution Time (ms) 624 658 716
Data Size (KB) 1000 1500 2000
Execution Time (ms) 769 815 863
International Journal of Pure and Applied Mathematics Special Issue
742
The Figure 3 depicts the performance analysis of the DES algorithm. In this
graph the X-axis stated the data in kilo bytes and Y-axis stated the time in
milliseconds. In this algorithm when the data size is grown, then the time taken
to finish the task will also increase. When the data size is 5KB then DES
algorithm will take 469 mill seconds and if the data size is 1000 KB then it will
take 769 milli seconds.
Figure 2: Performance Analysis of DES for Different Data Values
The performance analysis of AES algorithm is shown in the Table4 and its
graphical portrayal is shown in the Figure 3. In this algorithm if the length of
the data size is increased then the execution time will also be increased. Table4
explores the performance analysis of this algorithm.
Table 4: Performance Analysis of AES for Different Data Values
AES Algorithm
Data Size (KB) 5 16 37
Execution Time (ms) 136 187 218
Data Size (KB) 178 300 750
Execution Time (ms) 281 314 359
Data Size (KB) 1000 1500 2000
Execution Time (ms) 401 452 481
of the AES algorithm. In this graph the X-axis specifies the data in kilo bytes
and Y-axis specifies the time in milliseconds. In this algorithm when the data
size is increasing the time taken to complete the task will also increase. When
the data size is 16 KB then AES algorithm will take 187 mill seconds and if the
data size is 1500 KB then it will take 452 milli seconds.
International Journal of Pure and Applied Mathematics Special Issue
743
Figure 3: Performance Analysis of AES for Different Data Values
The performance analysis of Blowfish algorithm is exhibited in the Table 5 and
its graphical portrayal is exhibited in the Figure 4. In this algorithm if the length
of the data size grown then the execution time will also be increased. Table 5
explores the performance analysis of this algorithm.
Table 5: Performance Analysis of Blowfish for Different Data Values
Blowfish Algorithm
Data Size (KB) 5 16 37
Execution Time (ms) 369 384 413
Data Size (KB) 178 300 750
Execution Time (ms) 468 484 514
Data Size (KB) 1000 1500 2000
Execution Time (ms) 531 562 578
The Figure 4 depicts the performance analysis of the Blowfish algorithm. In this
graph the X-axis specifies the data in kilo bytes and Y-axis stated the time in
milliseconds. In this algorithm when the data size is increasing the time taken to
finish the task will also increase. When the data size is 37 KB then Blowfish
algorithm will take 413 mill seconds and if the data size is 2000 KB then it will
take 578 milli seconds.
Figure 4: Performance Analysis of Blowfish for different Data Values
International Journal of Pure and Applied Mathematics Special Issue
744
Now, The performance analysis of RK(Ramesh and Kiran) algorithm is
exhibited in the Table 6 and its graphical portrayal is exhibited in the Figure 5.
In this algorithm if the length of the data size is grown then the execution time
will also be increased. Table 5 explores the performance analysis of this
algorithm. But as compared with the algorithms when the data size is 5 KB it
only takes 32 milli seconds to finish the task. And when the data size is
increased then the execution time is very less as compared with other
algorithms.
Table 6: Performance Analysis of RK Algorithm for Different Data Values
RK Algorithm
Data Size (KB) 5 16 37
Execution Time (ms) 32 47 63
Data Size (KB) 178 300 750
Execution Time (ms) 186 219 313
Data Size (KB) 1000 1500 2000
Execution Time (ms) 353 401 442
The Figure 5 depicts the performance analysis of the RK algorithm. In this
graph the X-axis specifies the data in kilo bytes and Y-axis stated the time in
milliseconds. In this algorithm when the data size is increasing the time taken to
complete the task will also increase. When the data size is 37 KB then AES
algorithm took 218 milliseconds, DES algorithm took 561 milliseconds and
Blowfish algorithm will take 413 mill seconds. But RK algorithm took only 63
milliseconds to complete the task.
Figure 5: Performance Analysis of RK algorithm for Different Data Values
The table 7 will describe the experimental results of each algorithm takes the
time to complete dissimilar data size. When comparing the encryption
International Journal of Pure and Applied Mathematics Special Issue
745
algorithms such as AES, DES, Blowfish with RK algorithm. The RK algorithm
produces the better results in terms of the efficiency of time for different data
sets. Hence RK algorithm is the best encryption algorithm to perform the task
even the size of the data is increasing.
Table 7: Comparative Performance Analysis of DES, AES, Blowfish and
RK Algorithm for Different Data Values
RKA AES Blowfish DES
5KB 32 136 369 469
16KB 47 187 384 493
37KB 63 218 413 561
178KB 186 281 468 624
300KB 219 314 484 658
750KB 313 359 514 716
1000KB 353 401 531 769
1500KB 401 452 562 815
2000KB 442 481 587 863
The Figure 6 and Figure 7 shows the performance analysis of the AES, DES,
Blowfish and RK algorithm. The Figure 6 and Figure 7 explores RK algorithm
will take less amount of time to finish the task as compared with the other
algorithms.
Figure 6: Comparative Performance Analysis of DES, AES, Blowfish and
RK Algorithm for Different Data Values
International Journal of Pure and Applied Mathematics Special Issue
746
Figure 7: Comparative Performance Analysis of DES, AES, Blowfish and
RK Algorithm for Different Data Values
4. Conclusion
RK algorithm is more complex and suitable for conventional encryption. RK
algorithm will take less amount of time to finish the encryption procedure as
compared with the AES, DES and Blowfish algorithms. RK algorithm utilizes
the parallel approach to accomplish the encryption procedure. Hence it produces
the desired output in a less amount of time. In terms of time complexity the RK
algorithm is better algorithm to perform the encryption procedure.
References
[1] William Stallings, Cryptography and Network Security Principles and Practice, 5th Edition, 2011, Pearson Education.
[2] Ramesh Yegireddi, R Kiran Kumar, “A survey on Conventional Encryption Algorithms of Cryptography”, 978-1-5090-5515-9/16/ ©2016 IEEE
[3] How-Shen Chang, “International Data Encryption Algorithm” ,CS-627-1, Fall 2004
[4] https://www.ietf.org/rfc/rfc2040.txt
[5] https://people.csail.mit.edu/rivest/Rivest-rc5rev.pdf
[6] http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf
[7] http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
[8] B. Schneier, Description of a New Variable Length Key, 64Bit Block Cipher (Blowfish), Fast Software Encryption, Cambridge
International Journal of Pure and Applied Mathematics Special Issue
747
Security Workshop Proceedings (December 1993), Springer Verlag, 1994, pp. 191-204.
[9] Ramesh Yegireddi, R Kiran Kumar, “RK Algorithm: A Novel Parallel Methodology for Symmetric Key Cryptography” JARDCS,09-Special Issue, 2018.
[10] Manas Paul, Jyotsna Kumar Mandal, A Novel Symmetric Key Cryptographic Technique at Bit Level Based on Spiral Matrix Concept, International Academic and Industrial Research Solutions (IAIRS)
International Journal of Pure and Applied Mathematics Special Issue
748
749
750