0% found this document useful (0 votes)
93 views21 pages

Project Report

The document describes a project to securely transfer images over a network using AES encryption and decryption. The project aims to encrypt images before sending them over the network and decrypt them once received. AES encryption and decryption is used to securely encrypt and decrypt images. The system was developed using Python's Tkinter module for the graphical user interface and the crypto library for the AES encryption and decryption functions. Testing showed that encrypted images were successfully decrypted back to their original form.

Uploaded by

Sudharson K
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)
93 views21 pages

Project Report

The document describes a project to securely transfer images over a network using AES encryption and decryption. The project aims to encrypt images before sending them over the network and decrypt them once received. AES encryption and decryption is used to securely encrypt and decrypt images. The system was developed using Python's Tkinter module for the graphical user interface and the crypto library for the AES encryption and decryption functions. Testing showed that encrypted images were successfully decrypted back to their original form.

Uploaded by

Sudharson K
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/ 21

SOFTWARE ENGINEERING

IMAGE ENCRYPTION AND DECRYPTION USING AES


ALGORITHM

Group Member Names

18BCE0582 – Aditya Ruhatiya

18BCE0586 – Aditya Agrawal

Faculty Name

Dr. AKILA VICTOR

Associate Professor, SCOPE, VIT


Vellore

Winter Semester

Dec 2019 – June 2020


Abstract
Now a day the use of devices such as computer, mobile and many more other devices for
communication as well as for data storage and transmission has increased. As a result, there is
increase in number of users. Along with these users, there is also increase in number of
unauthorized users which are trying to access a data by unfair means. This arises the problem
of data security. Images are sent over an insecure transmission channel from different sources,
some image data contains secret data, some images itself are highly confidential hence,
securing them from any attack is essentially required.
To solve this problem, we are using AES algorithm for encrypting and decrypting image. This
encrypted data is unreadable to the unauthorized user. This encrypted data can be sent over
network and can be decrypted using AES at the receiving end. Hence it ensures secure
transmission of image.

Aim of the project


The project aims to develop a secure transfer of images between sender and receiver. Image
should be encrypted before it is sent on a network and it should be correctly decrypted on the
receiver side.

Objective of the project


• Encryption of an Image to unreadable format
• Decryption of encrypted image to original image
• Secure transfer of an image over the network such as internet
• Ensure no modifications are made while transferring over the network.

Scope of the project


Product scope
The project works by encrypting the given image using AES algorithm so that this
image can be sent securely over the network. At the receiver side, the receiver has code
for decrypting the image so that he can get the original image. This helps in sending
confidential and sensitive information securely over the internet. Main application of
this can be very helpful in medical and military fields.

Figure 1
Design and Implementation constraints
• Python must be used for front end
• Encryption and Decryption should be done using AES algorithm
• Original Image must be in .jpeg/.png format.

Assumptions and Dependencies


• Sender and Receiver are connected on a network

Functional Requirements
 The system shall encrypt the given image to an unreadable format. This is done using
AES encryption function.
 The system shall decrypt the received encrypted image to a readable format. This is
done using AES decryption function. The output image should be same as the original
image.
 The system ensures that the image is securely sent over any transmission medium. Third
party system cannot make modifications to the file being sent since unauthorised access
is not supported.

Non-Functional Requirements
Performance Requirements
 For smooth & efficient encryption, image size must be less than 5MB.
 Decryption should not take more than 10 seconds.
Safety and Security Requirements
 If the decryption takes more than 10 seconds, then discard the message (because
the message might have been corrupted during transmission) and ask sender to
re-send it.
 Encryption is done using encryption key. Decryption will happen only when
same encryption key is used at the receiver side.

Software Quality Attributes


Reliability
External factors do not affect the system. AES algorithm is universally accepted
and generates consistent results therefore there are very less chances of errors.
Error can occur only if there is a transmission glitch (the probability of which
is very rare). So, the system is reliable.

Usability
It uses python based GUI which is user friendly and provides buttons for easy
navigation. A person with basic understanding of computer can easily use this
software for encrypting/decrypting image using key.
Testability
The system is easy to test and find defects. The system is divided into different
modules performing specific functions that can be tested individually.

External Interface Requirements


User Interfaces
The interface window gives us a box for entering the location of image. Along with this
box, it also contains two buttons for encoding and decoding the image. After clicking
on one of these button, next window has a textbox to enter the password and a submit
button. After submitting, it shows the filename of new image file generated.

Hardware Interfaces
 Sender Computer: for seeing the original and encrypted image
 Receiver Computer: for seeing the decrypted image

Software Interfaces
We have frontend made using python module named Tkinter(). This provides an
interactive window for the user. The user need to provide the location of the image to
be encoded/decoded. After this, user can either go for encoding or decoding the image.
It asks for a password, which is basically your encryption key. After these details are
entered, we use the python functions declared in the code to encode/decode the image
using AES file from crypto.cypher module of python. When this process is done, the
user will get encrypted/decrypted image as output which will be saved in the same
directory as input image file.
Scheduling Diagrams
Gantt Chart

Pert Chart
Timeline Chart

Work Breakdown Structure


Design Diagrams
Usecase Diagram:

Class Diagram:
Sequence Diagram:
Collaboration Diagram:

ER Diagram:
Dataflow Diagram:
Activity Diagram:
State Chart Diagram:
Screenshot of Implementation
Code
Original Image and terminal window:
Application’s first screen asking for key:

Key is entered:
After clicking Encrypt button:

Select the directory and then the original file to be encrypted:


Terminal and desktop before clicking ‘open’:

Terminal and desktop screen after clicking ‘open’:


This shows that Encryption is completed and a file named ‘images.jpeg.crypt’ is created. This
is our Encrypted file.
For decryption, enter same key:

After clicking decryption button:


Select the same directory and then select the file named ‘images.jpeg.crypt’
Terminal and desktop screen after clicking ‘open’:
Decryption is complete and file named ‘visual_decrypt.jpeg’ is the decrypted file

Matching Decrypted Image with the Original Image:


Conclusion
We have successfully developed a program that encrypts and decrypts the image files
accurately. This will help in minimising the problem of data theft and leaks of other sensitive
information. The file that we obtained after encryption is very safe and no one can steal data
from this file. So, this file can be sent on a network without worrying. Our developed solution
is a small contribution that can be very helpful for military or medical fields in future times.

Link to Demo Video


https://youtu.be/4l-pS8uPaJ4

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