Analysis and Comparison of Symmetric Key Cryptographic Algorithms On FPGA
Analysis and Comparison of Symmetric Key Cryptographic Algorithms On FPGA
Abstract— Data security is considered as one of the prime symmetric key is comparatively less than the Asymmetric
concern for every communication systems. Cryptography has key. Eg: Rivest-Shamir Adelman (RSA), Diffie-Hellman
come up as a resolution which plays a dynamic role in data
security against various data attacks. The cryptography is most II. LITERATURE SURVEY
significant feature of communications security and becoming an Shetty, Vaishnavi S. et al.[3] Surveyed on extensively used
vital building block for network security. This security symmetric key algorithms such as DES, Blowfish, TDES,
mechanism uses some algorithms to convert readable data into PRESENT and KLEIN. On the basis of no. of rounds, size
unreadable data text which can be only accessed by intended
of key, algorithm structure, size of block, and data attacks, a
receiver. In this paper the implementation of some algorithms is
done such as Triple Data Encryption Standard ( TDES), comparison of block cipher cryptographic algorithms is
International Data Encryption Algorithm (IDEA), Data made. DES does not provide long-term security because of
Encryption Standard (DES) and Blowfish algorithm block its small key size length and is easily hacked. When
ciphers for encryption as well as decryption process using compared to DES with a large key size, Triple DES is more
Xilinx 14.5 tool in Verilog as programming language and secure and resistant to brute force attacks. The Blowfish
comparison of algorithms is carried out with performance method has a high level of security due to its large key size,
parameters such as area utilization, power consumption, and is resistant to both linear and differential assaults. The
encryption and decryption time using Spartan6 FPGA device. various lengths of KLEIN deals with giving state-of-the-art
outcomes in their industry while maintaining flexibility and a
Keywords— Data Encryption Standard, Triple Data
Encryption Standard, International Data Encryption reasonable security level for global-based applications.
Algorithm, Blowfish, Field Programmable Gate Array.
Ruziq, F. and Sihombing, P. [4] carried out the combination
I. INTRODUCTION analysis of the LUC algorithm and DES algorithm on data file
Cryptography is a technique for safeguarding data from security. The message will be encrypted with the DES
cyber-attacks. The plaintext in cryptography refers to the algorithm, while the DES external key will be encrypted with
original data, whereas the ciphertext is referred to as secured the LUC algorithm before being sent to the receiver.
data. The encryption method and decryption method are the According to the findings, the length of a file character is
two steps of cryptography. Encryption method is the process directly related to the time it takes to encrypt and decrypt it.
of changing plaintext to ciphertext. The process of The LUC key generation procedure is extremely dependent
transforming ciphertext to plaintext is referred to as on the DES and LUC algorithms when used together. The
decryption. Private key and Public key cryptography [1] are LUC algorithm produces alternative cipher keys when the
the two types of cryptography. The key required for the same DES external keywords are used multiple times. The
encryption and decryption processes in private key cipher key generated by DES external key encryption is
cryptography is same. As a result, before sending any form of different and longer, which improves message security when
data, the key distribution must be finished.. This key acts as utilizing hybrid DES and LUC algorithm cryptography.
vital role in cryptography because of the effect of key size on
security. Examples are Blowfish, Triple DES, DES and Anusha, R. et al. [5] presented an overview of the Blowfish
Blowfish Algorithm [2]. In Asymmetric Cryptography, two algorithm and compares it to DES and IDEA in terms of key,
different types of keys are used: Private key and Public Key. block, rounds, data attack, performance, and flexibility. In
The public key is freely given to the public without any comparison to other algorithm, the Blowfish cryptographic
protection and is necessary to encrypt data, while the private
method is fast and versatile, and provides good security.
key, which is only known by the sender, is necessary to decode
data. Encryption using symmetric key is substantially faster
compared to asymmetric key. The memory requirement of a Damrudi, M. and K. Jadidy Aval [6] presented an innovative
idea to achieve higher security by using cryptography and
steganography. Huffman is the compression algorithm, RSA, be employed in a variety of applications, including military
AES, TDES, DES, and Blowfish are the cryptography surveillance, environmental monitoring, industrial control,
methods, and LSB is the steganography technique. The data and medical monitoring. Smart grids, mobile phones, RFID
is first compressed using Huffman coding, and then tags, smart cards, and microchips are examples of wireless
encrypted using the above-mentioned encryption techniques. sensor networks that use limited resources. The many ultra-
The confidential message's encrypted text is then inserted in lightweight block ciphers whose purpose is to be software
the cover image using the LSB technique in MATLAB and hardware efficient have been illustrated in this study.
R2016a. The PSNR and MSE error measurements are used to Some factors, such as key size, block size, rounds, and cycles,
compare the strength of the proposed approach. The findings have been used to compare different block ciphers and
show a high PSNR and a low MSE, indicating that the pre- concluded that they must have high throughput and low
processing of the approach using compression and encryption complexity, according to a comparison of various block
methods was successful. In addition, the histograms of the ciphers.
main and enclosed images show that the algorithms achieve
the desired stego- image quality. Shakir, A.N. [12] proposed an encryption technique and
applied it for transmitting data across a network, with the
Asassfeh, M.R. et al. [7] presented the performance software written in the c language. To verify the quality of
estimation of blowfish cryptography algorithm on a parallel security message, the Rivest-Shamir-Adleman (RSA)
platform. The algorithm was developed using the MPI method and the International Data Encryption Algorithm
library, and the experimentation was run on the IMAN1 (IDEA) are considered as a mixture of symmetric and
supercomputer. The experimental results display that asymmetric cryptographic techniques. The following results
increasing the amount of processors reduces the run time of were obtained in the test lab: an algorithm containing more
the blowfish algorithm, as well as rising the speed. It attained than a partial method was adopted, resulting in greater
the best value when the amount of processors is 32 for a confidentiality and complexity as well as the elimination of
plaintext block size of 160Mbyte, and the parallel efficiency the key supply problem. Because the secret is in the
is the greatest. When the processors amount is 2,4,8, the encryption key, which is unpredictable and difficult to detect.
parallel efficiency is up to 99%, 98%, and 66% individually, Furthermore, the use of the RSA method in combination with
when the number of processors is 16, 32, 64, 128, the parallel the IDEA method is recommended for increased security and
efficiency is up to 42%, 24% t, 10%, and 5%, respectively. increased encryption efficiency. It also increased the key
space without increasing the operating time, which is
Shakya, Subarana [8] provides a data security analysis and promising in the field of information and communication
solution for a data migration privacy protection framework. technology.
A Secure Socket Layer (SSL) is installed, and migration
tickets with the bare minimum of permissions are introduced. Mitra, S. et al. [13] proposed TDES cryptographic algorithm
Furthermore, Prediction Based Encryption is used to encrypt to secure widely used e-Transactions such as Electronic Fund
data (PBE). This solution will be useful for healthcare and e- Transfer (EFT), Credit or Debit Cards, e-Wallets, mobile
commerce systems that need to store credit card information. banking. Typically, many assaults on cashless e-Commerce
transactions have been detected, in which intruders attempt to
Anusha R et al. [9] proposed a near field communication modify data for malicious purposes. One popular method of
(NFC) approach that allows users to do touchless processes avoiding such data attacks and preventing cross site grabbing
using their mobile devices. The use of an algorithm in NFC susceptibilities, insecure permissions, and additional
creates complications, and it may lead to possible encryption potential risks is to use cryptographic techniques. TDES is a
for challenging cryptographic algorithms, which is optimal security strategy that outperforms the other most often used
for security, but does not provide communication for future algorithms in terms of security. TDES is a billion times
applications that require streaming data. stronger than DES in terms of security, but is slower in terms
of encryption time.
Hara, T.K., et al. [10] proposed a technique that combined the
concepts of the Diffie Hellman and Blowfish algorithms.
Initially , a computer user will encode a data file using a III. . OVERVIEW OF SYMMETRIC KEY ALGORITHMS
secret- key created by the blowfish method. The Diffie- A. DATA ENCRYPTION STANDARD (DES)
Hellman procedure is then used to generate a common
Data Encryption Standard is a digital encryption
private- key for two computer users attempting to connect
standard that has been accepted as a national security
through an unsecure network. If the second computer user
standard since 1976. It was standardized in 1977 by the
needs to decrypt the data file encrypted by the first computer
National Bureau of Standards which is currently called as
user, then he or she must appeal permission using the shared
National Institute of Standards and Technology. For the past
key. The file can be decrypted using the blowfish algorithm
30 years, it has been the most widely used block cipher.
once the permission has been granted. Thus, by offering a two
level security mechanism and eliminating utmost of the flaws
of present algorithms, the suggested system seeks to confirm
that data is accessed by only the designated user.
• Key Expansion
Blowfish algorithm key expansion starts through S-
boxes and P- array, which contains a lot of sub-keys
and necessitate precomputation before data
Figure 4. Structure of IDEA Algorithm [17]
encryption or decryption. 𝑃1 , 𝑃2 , . . . 𝑃18 are the
eighteen 32-bit sub-keys that make up the P-array.
From Figure 4 , the 64-bit block of plaintext is broken into Each of the four 32-bit S-boxes has 256 entries:
four 16-bit plaintext parts, referred to as 𝑋1 through 𝑋4 . As a 𝑆1,0 , 𝑆1,1 , 𝑆1,2 … , 𝑆1,254 , 𝑆1,255 ;
result, the first round of the algorithm's inputs are 𝑋1 to𝑋4 . 𝑆2,0 , 𝑆2,1 , 𝑆2,2 … , 𝑆2,254 , 𝑆2,255 ;
There are a total of eight of these rounds. In each round, 6 sub 𝑆3,0 , 𝑆3,1 , 𝑆3,2 … , 𝑆3,254 , 𝑆3,255 ;
keys (each of 16 bits) are created from 128 bit original key. 𝑆4,0 , 𝑆4,1 , 𝑆4,2 … , 𝑆4,254 , 𝑆4,255 ;
These sub keys are assigned to the four initial input blocks
numbered 𝑋1 through 𝑋4 . Thus, there are six sub-keys in the • Initiating the sub keys:
first round, 𝑍1 to 𝑍6 . Keys 𝑍7 to 𝑍12 are available for the
second round. Finally, 𝑍43 to 𝑍48 are the keys that remain. 1.The P-array is first initialized, then the four S-
The final step is an Output Transformation, which only boxes with a fixed string containing the hexadecimal
requires four sub-keys. The Output Transformation round digits of pi.
produces the final output 𝑌1 to 𝑌4 . 2.XOR 𝑃1 with the first 32 bits of the key, XOR𝑃2 with the
second 32 bits, and so on until the key's bits reach 𝑃14 . The
• Key Schedule cycle is repeated for each key bit until the full P-array has
The original 128 bit key is used to produce the first six been XORed with key bits.
sub-keys, 𝑍1 to 𝑍6. Out of the initial 128 bits, the first 96 3.Using the sub-keys stated in steps 1 and 2, the Blowfish
bits are used for the first round since the sub-keys are algorithm is then used to encrypt the all-zero string.
each 16 bits long. As a result, bits 97–128 of the original 4. 𝑃1 and 𝑃2 are replaced with the step 3 output.
key are left unused at the end of the first round. The first 5.Encrypt the output of step 3 with the modified subkeys
round's unused 32 bits are utilized in the second round. using the blowfish technique.
For the second round, 64 additional bits are necessary to 6.Replace 𝑃3 and 𝑃4 with the output of step 5
construct the remaining sub-keys. This is accomplished 7.The procedure is repeated, with all components of the P-
by moving the original key 25 bits to the left in a cyclical array replaced first, followed by all four S-Boxes, and the
fashion. The changed key is then used to create the result changing continually.
remaining four sub-keys in the same manner as the first
round keys. For the rest of the rounds, the sub-key The Blowfish architecture with 16 number of rounds is
creation is carried out in the same manner as shown in depicted in Figure 6. The input is a 64-bit plaintext, which is
Figure 5. split into two 32 bits parts called 𝐿𝐸0 and 𝑅𝐸0. Decryption
method is alike to encryption method, but the numbers
𝑃1 , 𝑃2 , . . . 𝑃18 are given in reverse order.
• F function
The important block in the Blowfish algorithm is F
function. It takes a 32-bit input and divides it into
Figure 9. DES Decryption Process
four 8-bit portions equally. The equivalent of each
sub-division S-box is used to convert each 8-bit sub- B. TRIPLE DATA ENCRYPTION STANDARD
division into a 32-bit data block. Using addition Encryption simulation waveform of Triple DES algorithm is
modulo 232 and XOR final 32-bit outputs are shown in Figure 10. The input key, plaintext as shown below
generated as shown in Figure 7. Key1 (in hex): “0352020767208217”
Key2 (in hex): “8602876659082198”
Key3 (in hex): “64056abdfea93457”
Plaintext /data_in (in hex): “7371756967676C65”
V. COMPARATIVE ANALYSIS
The comparison analysis of symmetric key algorithms are
shown in Table 1. This study is useful for determining the
structure, size of block, size of key, number of rounds, S-
boxes, and vulnerability to different data attacks of
Figure 12. IDEA Encryption Process
encryption and decryption algorithms such as DES, TDES,
Decryption simulation waveform of IDEA algorithm is Blowfish, and IDEA.
shown in Figure 13. The input key, plaintext as shown below.
Key(in hex):“7ca110454a1a6e5701a1d6d039776742” Table 1. Comparison List Of Different Attributes Considering for
Ciphertext / data_in (in hex): “1bddb24214237ec7”
Algorithms Using Symmetric Key
boxes Numbe 185 58% 304 96% 256 81% 192 60%
r of out out out out
Possible Brute Chosen Brute Differen
bonded of of of of
Attacks force - force tial IOBs 316 316 316 316
attack, plainte attack, attack,
Differenti xt or Known- biclique
B. Timing Analysis
al Known plaintext attack
Encryption Time: This is defined as the total time taken by
cryptoana plainte attack the encryption algorithm to generate a ciphertext from a
lysis, xt plaintext.
Decryption Time: The decryption time is the inverse of
linear attack encryption time that can be defined as the total time taken by
cryptoana the decryption algorithm to create a plaintext from a
ciphertext. The timing summary of symmetric key algorithms
lysis are shown in Table 3.