Hardware Software Co-Simulation of An AES-128 Based Data Encryption in Image Processing Systems For The Internet of Things Environment
Hardware Software Co-Simulation of An AES-128 Based Data Encryption in Image Processing Systems For The Internet of Things Environment
Abstract—Security of the data is a major challenge in the unauthorized person cannot access the image data. Image
deployment and management of the Internet of Things (IoT)
systems in the heterogeneous environment, where data gets
security has many application areas such as- biomedical
transferred very widely and rapidly in multiple modes across the imaging, multimedia systems, military communication,
globe. Concomitant with the advancement of the technology, the internet communication, telemedicine, defense maps, and
number of devices and systems which are involved in mobile computing, etc. Cryptography algorithms are of two
transferring the image data has increased in the heterogeneous types one which uses the same key for encryption and
IoT environment. At present, image processing devices have decryption i.e. Symmetric key cryptography and the second
become an integral part of the IoT edge devices which can collect
one in which each user have different key for encryption and
the images and automatically share with the network. Because of
the multifaceted usage of images in multimedia applications in decryption i.e. Public key cryptography.
the IoT environment, it is essential to protect the data from Advanced Encryption Standard (AES) algorithm is a
unauthorized access. The Advanced Encryption Standard (AES) symmetric key cryptography algorithm that overcomes the
is a well-established cryptography algorithm used in numerous
applications to protect digital data. In this paper, we present a
disadvantages of small block size and less security in the Data
Hardware-Software Co-Simulation with Xilinx System Encryption Standard (DES) algorithm. AES algorithm is
Generator of an AES-128 bit encryption and decryption for IoT published by Rijndael and standardized by Federal
Edge devices. Hardware Co-Simulation makes it possible to Information Processing Standard in 2000 by the National
integrate a design running in an FPGA directly into Simulink Institute of Standards and Technology (NIST) and adopted by
simulation. AES-128 bit algorithm has been implemented on the U.S Government [4], [5]. According to the standard given by
SPARTAN-6 (XC6SLX45-CSG324) FPGA board with XILINX- NIST, AES uses a block cipher of a minimum of 128 bit and
ISE software. Authors can get the successful results for image key of 128/192/256 bits. AES algorithm can encrypt and
encryption and decryption both while implementing on grey and decrypt data. Encryption converts the plaintext block into a
colored images. For Hardware Co-Simulation of AES-128 bit
algorithm with Xilinx system generator, a point-to-point Ethernet
ciphertext block and decryption converts that ciphertext block
approach is used. This implementation is done using Xilinx into the original plaintext block. The ciphertext is generated
ISE14.2 and MATLAB 2011a for both grey image and colored by encoding the input plaintext in such a way that only the one
image of size 448*298. who has its key can decrypt it and get the original data on the
receiver side. In cryptography algorithms, larger key length
Keywords— Cryptography, FPGA, AES-128, VHDL, Image provides higher security but requires more rounds.
encryption, Image decryption, Hardware Co-Simulation, Internet of
Thing, Image Processing For secured image data transfer, AES, and chaos-based
image encryption method is proposed and fast and highly
I. INTRODUCTION secure images can be transferred for Earth Observation
In the era of heterogeneous IoT environment around us Satellites (EOS) using this approach [6]. This improved AES
where data transmission continues to happen every single encryption method can also be used for normal secured images
second, the Protection of these data is a daunting task; transfer. Image encryption using AES and RSA has been done
however, with proper use of cryptography, these security [7] and it is found that AES performance is better for RSA for
challenges can be alleviated. Cryptography algorithms are securing the images. Based on the chaos system and AES
image encryption is done and reported as performing better
generally used where security is essential such as bank
than the existing work [8]. A modified AES by changing the
services, military services, ATM cards, computer passwords,
shift row operations of the original AES for image encryption
online money transaction, and e-commerce; it is also used in
is presented [9]. AES algorithm implementation is done using
the wireless device [1], [2], Bluetooth low energy application Xilinx System Generator inbuilt boxes on the Virtex-6
[3] where encryption and decryption needed on the transmitter xc6vsx315t-3ff1156 FPGA board [10].
and receiver side respectively. As industries are widely using
image data for communication, so it is important to protect the A. Contribution and Outline
data from the intruder. Image security means sending the In this paper, Hardware Software Co-Simulation of AES-
image securely over a transmission medium so that, an 128 based data encryption towards Image Processing
261
Authorized licensed use limited to: Cummins Inc.. Downloaded on November 09,2023 at 09:22:54 UTC from IEEE Xplore. Restrictions apply.
Fig. 2. Simulink Model of AES-128 bit Algorithm for grey image input
Fig. 4. Simulink Model of AES-128 bit Algorithm for colored image input
262
Authorized licensed use limited to: Cummins Inc.. Downloaded on November 09,2023 at 09:22:54 UTC from IEEE Xplore. Restrictions apply.
Case 2: Hardware co-simulation of AES-128 bit algorithm for B. Hardware Software Co-simulation Results for Grey and
Grey Image with Xilinx System Generator and SPARTAN- Colored Images
6(XC6SLX45-CSG324) FPGA: The mentioned design is an integral part of the Xilinx
Implementation of grey image AES encryption and System Generator based design. The experiment is performed
decryption on SPARTAN-6(XC6SLX45-CSG324) FPGA on both types of images i.e. grey images and colored images.
board using the Xilinx system generator is shown in Fig. 3. In Fig. 5 shows the encrypted and decrypted image for a grey
this Simulink model final_aes_hardware_cosim is the netlist color image by performing the hardware software co-
generated for the FPGA board. simulation using Xilinx System Generator.
Case 3: Hardware co-simulation of AES-128 bit algorithm for
Colored Image with Xilinx System Generator and SPARTAN-
6(XC6SLX45-CSG324) FPGA:
The model for a colored image in the Xilinx system
generator is shown in Fig. 4. In this model, the input image is
taken colored of size 448*298 pixels. After resizing the image
in image preprocessing the image resolution becomes Fig. 5. Original, encrypted, and decrypted grey image through
Hardware Software Co-simulation
224*298, which goes for further processing. This whole thing
Hardware Software Co-simulation results for colored
is used for R, G, and B separately.
images using Xilinx System Generator are shown in Fig. 6.
IV. RESULTS AND ANALYSIS
This section presents the two types of the results here: A)
VHDL implementation of AES-128 using loop unrolled
architecture and using FSM on Virtex-5 FPGA board and its
comparison with the similar existing work in terms of area and
throughput. B) Successfully encrypted and decrypted results of
grey and colored images.
Fig. 6. Original, encrypted, and decrypted colored image through
A. Resource Utilization and Throughput Hardware Software Co-simulation
AES-128 is implemented using loop unrolled architecture V. CONCLUSION
as well as using FSM. Table I shows the resource utilization of
the implemented architecture. In this paper, Hardware-Software Co-Simulation with
Throughput for both the cases is calculated as follows for Xilinx System Generator of an AES-128 crypto-module is
the implemented AES-128. presented which is used for encryption and decryption of the
images for IoT Edge devices. It is an important feature that
Number of processed bits helps the IoT devices to transfer the images securely over the
Throughput=
Critical path delay present heterogeneous IoT environment. AES-128 crypto-
module is designed using two architectures i.e. loop unrolled
The maximum frequency is achieved as 332.34 MHz and
architecture and FSM based architecture. It is found that FSM
throughput is calculated as 4.254 Gbps for loop unrolled
based architecture is giving better performance when it is
architecture whereas throughput comes out to be as 3.485
compared with the similar existing implementations. For
Gbps for the frequency of 272.33 MHz. Table II presents the
performing the co-simulation Xilinx System Generator is
comparison results with the existing work and shows that the
used. Simulink model has been developed for simulating the
designed implementation is working better in terms of area
grey and colored images. Then, hardware Co-Simulation is
and throughput.
also presented with the Xilinx system generator and
Table II: Comparison with the existing work
SPARTAN-6(XC6SLX45-CSG324) FPGA kit. This
Design Device Through Slices Throughput/ implementation is done using Xilinx ISE14.2 and MATLAB
-put Area 2011a for both grey image and colored image of size 448*298.
(Mbps) (Mbps/slices) We can get the successful results for both the schemes which
[22] Virtex- 1604 1857 0.867 AES-128 bit algorithm encryption and decryption. Results for
EBG860 grey and colored images are presented in the result section.
[23] XC3S40 2059 1403 1.467 This work can be extended for the various schemes of image
0-FG456 security as well as the modified version of the implemented
[24] Kintex-7 1670 5110 0.327 algorithms.
Loop Virtex-5- 4342 8704 0.488 ACKNOWLEDGEMENT
Unrolled 3ff1738
FSM Virtex-5- 3485 1345 2.591 Simulation results are the part of the M.Tech. Thesis work
Arch. 3ff1738 carried out by Ms. Niharika Agarwal. She is graduated from
the Department of Electronics and Communication
263
Authorized licensed use limited to: Cummins Inc.. Downloaded on November 09,2023 at 09:22:54 UTC from IEEE Xplore. Restrictions apply.
Engineering, The LNM Institute of Information Technology Eng., vol. 4, no. 5, p. 877, 2012.
Jaipur. [13] E. Thambiraja, G. Ramesh, and D. R. Umarani, “A survey on
various most common encryption techniques,” Int. J. Adv.
REFERENCES Res. Comput. Sci. Softw. Eng., vol. 2, no. 7, 2012.
[1] F. Vater and P. Langendörfer, “An Area Efficient Realisation [14] P. Mahajan and A. Sachdeva, “A study of encryption
of AES for Wireless Devices (Eine flächeneffiziente AES algorithms AES, DES and RSA for security,” Glob. J.
Hardwarerealisierung für drahtlose Geräte),” it-Information Comput. Sci. Technol., 2013.
Technol., vol. 49, no. 3, pp. 188–193, 2007. [15] S. S. Dhanda, B. Singh, and P. Jindal, “Lightweight
[2] A. Toubal, B. Bengherbia, M. O. Zmirli, and A. Guessoum, Cryptography: A Solution to Secure IoT,” Wirel. Pers.
“FPGA Implementation of a wireless sensor node with built- Commun., vol. 112, no. 3, pp. 1947–1980, 2020, DOI:
in security coprocessors for secured key exchange and data 10.1007/s11277-020-07134-3.
transfer,” Measurement, vol. 153, p. 107429, 2020. [16] D. A. F. Saraiva, V. R. Q. Leithardt, D. de Paula, A. Sales
[3] S. Yechangunja, “Low power implementation of AES Mendes, G. V. González, and P. Crocker, “Prisec:
algorithm for Bluetooth low energy applications,” Master Comparison of symmetric key algorithms for IoT devices,”
Technol. VLSI Des. Tools Technol. Indian Inst. Technol. Sensors, vol. 19, no. 19, p. 4312, 2019.
Delhi, India, 2009. [17] A. Msolli, A. Helali, and H. Maaref, “Image encryption with
[4] D. Joan and R. Vincent, “The design of Rijndael: AES-the the AES algorithm in wireless sensor network,” in 2016 2nd
advanced encryption standard,” in Information Security and International Conference on Advanced Technologies for
Cryptography, Springer, 2002. Signal and Image Processing (ATSIP), 2016, pp. 41–45.
[5] M. J. Dworkin et al., “Advanced encryption standard [18] S. Kotel, M. Zeghid, A. Baganne, T. Saidani, Y. I. Daradkeh,
(AES)(FIPS PUB 197),” Nat. Inst. Stand. Technol. (NIST), and T. Rached, “FPGA-based real-time implementation of
Gaithersburg, MD, USA, Tech Rep, vol. 197, 2001. AES algorithm for video encryption,” Recent Adv.
[6] Y. Bentoutou, E.-H. Bensikaddour, N. Taleb, and N. Telecommun. Informatics Educ. Technol., pp. 27–36, 2014.
Bounoua, “An improved image encryption algorithm for [19] R. Dhumne, S. Salankar, R. V Singh, and P. Morghade, “A
satellite applications,” Adv. Sp. Res., vol. 66, no. 1, pp. 176– Hardware-Software Co-designed Low Latency AES-RC4
192, 2020, DOI: https://doi.org/10.1016/j.asr.2019.09.027. Cryptosystem,” in 2019 9th International Conference on
[7] D. M. Alsaffar et al., “Image Encryption Based on AES and Emerging Trends in Engineering and Technology - Signal and
RSA Algorithms,” in 2020 3rd International Conference on Information Processing (ICETET-SIP-19), 2019, pp. 1–6.
Computer Applications Information Security (ICCAIS), 2020, [20] M. Zeghid, M. Machhout, L. Khriji, A. Baganne, R. Tourki,
pp. 1–5. and others, “A modified AES based algorithm for image
[8] A. Arab, M. J. Rostami, and B. Ghavami, “An image encryption,” Int. J. Comput. Sci. Eng., vol. 1, no. 1, pp. 70–
encryption method based on chaos system and AES 75, 2007.
algorithm,” J. Supercomput., vol. 75, no. 10, pp. 6663–6682, [21] S. Chhabra and K. Lata, “Hardware software co-simulation of
2019. obfuscated 128-bit AES algorithm for image processing
[9] A. A. Shtewi, B. E. M. Hasan, and A. E. F. Hegazy, “An applications,” 2018, DOI: 10.1109/iSES.2018.00049.
efficient modified advanced encryption standard (MAES) [22] Shuenn-Shyang Wang and Wan-Sheng Ni, “An efficient
adapted for image cryptosystems,” in The International FPGA implementation of advanced encryption standard
Conference on Electrical Engineering, 2010, vol. 7, no. 7th algorithm,” in 2004 IEEE International Symposium on
International Conference on Electrical Engineering ICEENG Circuits and Systems (IEEE Cat. No.04CH37512), 2004, vol.
2010, pp. 1–11. 2, pp. II–597.
[10] A. Arshad, K. Aslam, A. Aziz, and others, “FPGA [23] Y. J. Minal and M. A. Sayyad, “Implementation of AES on
Implementation of Advance Encryption Standard Using FPGA,” IOSR J. VLSI Signal Process., vol. 4, no. 5, pp. 65–
Xilinx System Generator,” Asian J. Appl. Sci., vol. 2, no. 2, 69, 2014.
2014. [24] M. Rao, A. Kaknjo, E. Omerdic, D. Toal, and T. Newe, “An
[11] T. Eisenbarth, S. Kumar, C. Paar, A. Poschmann, and L. Efficient High-Speed AES Implementation Using Traditional
Uhsadel, “A survey of lightweight-cryptography FPGA and LabVIEW FPGA Platforms,” in 2018
implementations,” IEEE Des. Test Comput., vol. 24, no. 6, pp. International Conference on Cyber-Enabled Distributed
522–533, 2007. Computing and Knowledge Discovery (CyberC), 2018, pp.
[12] M. Agrawal and P. Mishra, “A comparative survey on 93–937.
symmetric key encryption techniques,” Int. J. Comput. Sci.
Table I: Resource utilization for AES-128 loop unrolled architecture implementation on Virtex-5
Device: Virtex5 xc5vlx110t-3ff1738
Logic Utilization Loop Unrolled Architecture FSM Architecture
(Number of) Used Available Utilization % Used Available Utilization %
Slice Registers 8704 69120 12 1345 69120 1
Slice LUTs 20402 69120 29 14798 69120 21
Fully Used Bit Slices 6175 22931 26 934 22931 4
Bonded IOBs 514 680 75 524 680 77
BUFG/BUFGCTRLs 2 32 6 1 32 3
264
Authorized licensed use limited to: Cummins Inc.. Downloaded on November 09,2023 at 09:22:54 UTC from IEEE Xplore. Restrictions apply.