SlideShare a Scribd company logo
DATA ENCRYPTION & DECRYPTION
A REPORT
Submitted by
Mr. Bhautik Chovatiya
Submitted to
Prof. Bansi Kotecha
In partial fulfillment for the subject Computer Networks
of
4TH
SEMESTER
IN
INFORMATION TECHNOLOGY
At
DEPARTMENT OF COMPUTER ENGINEERING
MARWADI UNIVERSITY
RAJKOT
APRIL 2018
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 2
Acknowledgment
I would like to thank Prof. Bansi Kotecha , Marwadi University, Rajkot for providing her
precious time to carry out this mini project along with its report and also for their valuable
guidance and useful suggestions, which helped me a lot in completing this report, on time.
Finally , and importantly I would like to express gratitude to my beloved parents for their
blessings and Marwadi University for the successful completion of this report.
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 3
ABSTRACT
Data security is a major issue which we are facing today in this digital world of
communication. As we know that today hackers are almost at every corner in search of our
useful data which can be hacked by them for their different purposes. Even the risk gets
doubled when come to the data of any country’s government. So, a system or terminology is
must required to make that data safe forever by any means during communication.
Data protection can be accomplished by changing the original data by any means to some
other un useful data so that if someone gets that data then also it must remain in un useful
bits. This process can be achieved by Encrypting that data by some means of algorithms
which are known to the sender and the similar Decryption algorithms to be known to only
the desired receiver so that it can convert that encrypted data back to the user understandable
form. Today as it is a need to develop such kind of applications which performs the specified
task but along with it should be very much user friendly so that no special skills need to be
required to learn in order to use that application or project.
In the application the user has to select either wants to send something by encrypting or
wants to receive by decrypting . If it wants to send then it have to select source file
previously designed or type some message which is to Encrypt and then transfer. Whereas on
the receiver side again the receiver have to select the file which is to be received from the
sender along with a decryption key to decrypt that message. Decryption key can be selected
either manually if told by the sender or selecting key sent by the sender along with the
encrypted data to avoid further delay in processing the message.
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 4
List of Content
Sr. No. Content Page No.
1. Introduction 1
2. Requirement gathering and Analysis of existing similar work 1
3. Design Solution development and validation against original requirement 3
4. Project Implementation 4
5. Conclusion 16
6. Future Work 16
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 5
1. Introduction
Data security is a major issue which we are facing today in this digital world of
communication. As we know that today hackers are almost at every corner in search of our
useful data which can be hacked by them for their different purposes. Even the risk gets
doubled when come to the data of any country’s government.
Data protection can be accomplished by changing the original data by any means to some
other un useful data so that if someone gets that data by means of hacking then also it must
remain in un useful bits of data for that person. This process can be achieved by Encrypting
that data by some means of algorithms which are known to the sender and on the other side
the similar Decryption algorithms must be known to only the desired receiver so that it can
convert that encrypted data back to the user understandable form.
Today as it is a need to develop such kind of applications which performs the specified task
but along with it should be very much user friendly so that no special skills need to be
required to learn in order to use that application or project.
This is a Java based project with inbuilt hard disk storage unit as a database. This report
contains in depth demonstration of Data Encryption and Decryption system along with its
working architecture which contains brief introduction, features, prototype, information
about other similar projects, outputs, source code and at last references.
2. Requirement gathering and Analysis of existing similar work
2.1 Name: Data Encryption and Decryption in Java Cryptography
Programming Environment: Linux
Features: Choosing algorithm, Padding, Encryption, uses Block cipher etc.
Link:https://www.veracode.com/blog/research/encryption-and-decryption-java-
cryptography
Explanation: In this project there are plenty of options available for encrypting data like
AES,SHA-1 etc algorithms. It uses complex programming language along with reserved
functions which are designed especially for security kind of purpose.
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 6
2.2 Name: Encrypt and Decrypt data using AES algorithm
Programming Environment: Linux
Features: uses AES algorithm for encryption etc.
Link: https://www.quickprogrammingtips.com/java/how-to-encrypt-and-decrypt-data-in-
java-using-aes-algorithm.html
Explanation: This Java project shows how to encrypt data using AES encryption
algorithm. In this project, the KeyGenerator is initialized with a 128 bit secret key. Many
helper classes of java are used for AES encryption such as Cipher (for
encryption/decryption), SecretKey (represents the shared secret key) and KeyGenerator
(generates the shared secret key).
2.3 Name: Encryption and Decryption using DES algorithm
Programming Environment: Linux
Features: uses DES algorithm, uses swing module for GUI.
Link: http://slogix.in/how-to-encrypt-and-decrypt-data-using-des-in-java
Explanation: This project contains modules of swing applets which are used to make user
friendly GUI for simple feel. DES algorithm is very complex and used for very large
secure piece of data.
2.4 Name: Simple Password Encryption & Decryption in C++
Programming Environment: Windows
Features: Uses simple algorithm to encrypt the password.
Link:https://codereview.stackexchange.com/questions/77519/simple-password-
encryption- decryption-in-c
Explanation: This Project includes the concept of random combinations which is used to
generate a random password. After generation of that password ,it is decrypted with the
simple cipher text algorithm so that no other person than the authorized one can be able
to view the details regarding the login forum of the user.
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 7
3. Design prototype development & validation against original
requirement
The prototype of Data Encryption & Decryption is shown below which was made on a
chart paper. It describes the flow of the project along with the sample output screens
which will look like after each and every options pressed by any user.
Figure-3.1 Data Encryption and Decryption
4. Project Implementation
4.1 Tool Required and Requirements :
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 8
 Linux Environment
 Latest version of JDK(Java Development Kit)
 Terminal (In case of not having other platforms like Eclipse etc)
 RAM Minimum 512MB
4.2 Output Screens with code snippet of project:
4.2.1 Main Screen
Figure 4.2.1
Main screen consists of two options as shown in above figure. Choosing option 1 will led to
encryption and option 2 will led to decryption. Code snippet is provided below so that one
can easily understand how to design Main screen. The feel of main menu is kept so simpler
so that if anyone who doesn't have prior knowledge about the concept of encryption and
decryption can also be able to use this application easily.
Code Snippet:
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 9
4.2.2 Sub-Screen 1
Figure 4.2.2
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 10
This sub menu asks the user for two choices. 1st option provides a input stream which lets
the user to enter the data which is to be encrypted and the 2nd option provides a file stream
buffer which will take the name of the file form which the data needs to be encrypted.
Code Snippet:
4.2.3 Sub- Screen 1.1
Figure 4.2.3
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 11
This menu screen performs the encryption on the inputted text by user. It asks to enter a
string and then displays the encrypted text which is ready to share with anyone. .
Code Snippet:
4.2.4 Sub- Screen 1.2
This screen performs the encryption of data which is present in a text file. It asks to enter the
name of text file which the user wants to encrypt & after processing it creates a new file
named as "ENCRYPTED.txt" in the same directory which will contain the encrypted data.
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 12
Figure 4.2.4
code snippet:
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 13
4.2.5 Sub-Screen 2
Figure 4.2.5
This screen asks the user to choose from the two options given for decrypting the data. 1 for
directly enter the encrypted text and decrypt it and the 2 for enter the file name which
contains the encrypted data.
code snippet:
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 14
4.2.6 Sub-Screen 2.1
Figure 4.2.6
This screen performs the decryption of the encrypted data which is entered by user. Here
only one decryption algorithm is used which is Ceaser Cipher text algorithm.
code snippet:
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 15
4.2.7 Sub-Screen 2.2
Figure 4.2.7
code snippet:
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 16
4.3 Overall flow of project:
MAIN MENU
CHOICE
ENCRYPTION
SUB-MENU 1
CHOICE
ENCRYPT
DATA
DIRECTLY
ENCRYPT
DATA OF
A TEXT FILE
SUB-MENU 2
CHOICE
DECRYPT
DATA
DIRECTLY
DECRYPT DATA
FROM A
ENCRYPTED FILE
DECRYPTION
EXIT
Figure-4.3.1 Flowchart of Project
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 17
This project starts with a main page that is shown in Figure-4.2.1. After proceeding further,
two options will pop-up asking about the choice of the user i.e. wants to encrypt the data or
wants to decrypt the data. Now if the user chooses the 1st option then a new screen will
appear which is shown in Figure-4.2.2 This window will again put two new options ,one for
manually entering the text which the user wants to encrypt & the other one which will ask the
user to enter the file name in which the data is stored which is having (.txt) format. These
screens are shown in Figure-4.2.3 and Figure-4.2.4.
The flow chart is shown in figure 4.3.1. Now the second option of main menu i.e. decryption
will get you to the screen which is shown in Figure 4.2.5. It will again ask you to enter your
choice i.e. whether you want to manually enter the encrypted data which you got from the
sender and then generate the original data , and the second option will let you to enter the file
name (.txt) which has been encrypted earlier to convert it again into user understandable
form.
DATA ENCRYPTION AND DECRYPTION
Prepared By: Bhautik Chovatiya [91600103130] Page 18
5. Conclusion
It can be concluded that this project works efficiently for offline purpose at any place
provided the requirements for running environment remains same. Users need not to worry
about how the algorithm actually works inside the instruction set performed by the compiler.
6. Future Work
1. In Future, Data Encryption and Decryption system can be updated further which can
provide more secured encryption algorithms like DES , AES etc.
2. This project can be made more attractive and easy to use by implementing
GUI(Graphical User Interface) with the help of many coding platforms like Netbeans
etc.

More Related Content

What's hot

Online votingsystem
Online votingsystemOnline votingsystem
Online votingsystem
Manish Kumar
 
A project report on chat application
A project report on chat applicationA project report on chat application
A project report on chat application
Kumar Gaurav
 

What's hot (20)

15 puzzle problem using branch and bound
15 puzzle problem using branch and bound15 puzzle problem using branch and bound
15 puzzle problem using branch and bound
 
EULER AND FERMAT THEOREM
EULER AND FERMAT THEOREMEULER AND FERMAT THEOREM
EULER AND FERMAT THEOREM
 
Public Key Cryptosystem
Public Key CryptosystemPublic Key Cryptosystem
Public Key Cryptosystem
 
Principles of public key cryptography and its Uses
Principles of  public key cryptography and its UsesPrinciples of  public key cryptography and its Uses
Principles of public key cryptography and its Uses
 
SECRY - Secure file storage on cloud using hybrid cryptography
SECRY - Secure file storage on cloud using hybrid cryptographySECRY - Secure file storage on cloud using hybrid cryptography
SECRY - Secure file storage on cloud using hybrid cryptography
 
Security services and mechanisms
Security services and mechanismsSecurity services and mechanisms
Security services and mechanisms
 
Working principle of Turing machine
Working principle of Turing machineWorking principle of Turing machine
Working principle of Turing machine
 
Online Voting System Project File
Online Voting System Project FileOnline Voting System Project File
Online Voting System Project File
 
secure file storage on cloud using hybrid Cryptography ppt.pptx
secure file storage on cloud using hybrid Cryptography  ppt.pptxsecure file storage on cloud using hybrid Cryptography  ppt.pptx
secure file storage on cloud using hybrid Cryptography ppt.pptx
 
IP Security
IP SecurityIP Security
IP Security
 
Product Cipher
Product CipherProduct Cipher
Product Cipher
 
Online votingsystem
Online votingsystemOnline votingsystem
Online votingsystem
 
Secure Hash Algorithm
Secure Hash AlgorithmSecure Hash Algorithm
Secure Hash Algorithm
 
Passport automation system
Passport automation systemPassport automation system
Passport automation system
 
ELEMENTS OF TRANSPORT PROTOCOL
ELEMENTS OF TRANSPORT PROTOCOLELEMENTS OF TRANSPORT PROTOCOL
ELEMENTS OF TRANSPORT PROTOCOL
 
A project report on chat application
A project report on chat applicationA project report on chat application
A project report on chat application
 
Chat Application
Chat ApplicationChat Application
Chat Application
 
E learning project report (Yashraj Nigam)
E learning project report (Yashraj Nigam)E learning project report (Yashraj Nigam)
E learning project report (Yashraj Nigam)
 
SQL INJECTION
SQL INJECTIONSQL INJECTION
SQL INJECTION
 
OSI Security Architecture
OSI Security ArchitectureOSI Security Architecture
OSI Security Architecture
 

Similar to Mini Project on Data Encryption & Decryption in JAVA

Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235
Editor IJARCET
 
Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235
Editor IJARCET
 
1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info
MdjunaidAli3
 
Hybrid Cloud Approach for Secure Authorized Deduplication
Hybrid Cloud Approach for Secure Authorized DeduplicationHybrid Cloud Approach for Secure Authorized Deduplication
Hybrid Cloud Approach for Secure Authorized Deduplication
Prem Rao
 
Narrative of digital signature technology and moving forward
Narrative of digital signature technology and moving forwardNarrative of digital signature technology and moving forward
Narrative of digital signature technology and moving forward
Conference Papers
 
File transfer using cryptography techniques
File transfer using cryptography techniquesFile transfer using cryptography techniques
File transfer using cryptography techniques
miteshkumar82
 

Similar to Mini Project on Data Encryption & Decryption in JAVA (20)

IRJET - A Novel Approach Implementing Deduplication using Message Locked Encr...
IRJET - A Novel Approach Implementing Deduplication using Message Locked Encr...IRJET - A Novel Approach Implementing Deduplication using Message Locked Encr...
IRJET - A Novel Approach Implementing Deduplication using Message Locked Encr...
 
Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235
 
Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235Ijarcet vol-2-issue-7-2232-2235
Ijarcet vol-2-issue-7-2232-2235
 
A Review on Key-Aggregate Cryptosystem for Climbable Knowledge Sharing in Clo...
A Review on Key-Aggregate Cryptosystem for Climbable Knowledge Sharing in Clo...A Review on Key-Aggregate Cryptosystem for Climbable Knowledge Sharing in Clo...
A Review on Key-Aggregate Cryptosystem for Climbable Knowledge Sharing in Clo...
 
Providing Secure Cloud for College Campus
Providing Secure Cloud for College CampusProviding Secure Cloud for College Campus
Providing Secure Cloud for College Campus
 
1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info1-160730050929.pptx dynamic hash table info
1-160730050929.pptx dynamic hash table info
 
A NETWORK CODING AND DES BASED DYNAMIC ENCRYPTION SCHEME FOR MOVING TARGET DE...
A NETWORK CODING AND DES BASED DYNAMIC ENCRYPTION SCHEME FOR MOVING TARGET DE...A NETWORK CODING AND DES BASED DYNAMIC ENCRYPTION SCHEME FOR MOVING TARGET DE...
A NETWORK CODING AND DES BASED DYNAMIC ENCRYPTION SCHEME FOR MOVING TARGET DE...
 
IRJET- Anchoring of Cloud Information under Key Presentation
IRJET- Anchoring of Cloud Information under Key PresentationIRJET- Anchoring of Cloud Information under Key Presentation
IRJET- Anchoring of Cloud Information under Key Presentation
 
Improving Efficiency of Security in Multi-Cloud
Improving Efficiency of Security in Multi-CloudImproving Efficiency of Security in Multi-Cloud
Improving Efficiency of Security in Multi-Cloud
 
IJSRED-V2I2P10
IJSRED-V2I2P10IJSRED-V2I2P10
IJSRED-V2I2P10
 
Inscibe and Squeeze
Inscibe and SqueezeInscibe and Squeeze
Inscibe and Squeeze
 
IRJET- Security in Ad-Hoc Network using Encrypted Data Transmission and S...
IRJET-  	  Security in Ad-Hoc Network using Encrypted Data Transmission and S...IRJET-  	  Security in Ad-Hoc Network using Encrypted Data Transmission and S...
IRJET- Security in Ad-Hoc Network using Encrypted Data Transmission and S...
 
IRJET - Data Security in Cloud Computing using Homomorphic Algoritham
IRJET - Data Security in Cloud Computing using Homomorphic AlgorithamIRJET - Data Security in Cloud Computing using Homomorphic Algoritham
IRJET - Data Security in Cloud Computing using Homomorphic Algoritham
 
Attribute-Based Data Sharing
Attribute-Based Data SharingAttribute-Based Data Sharing
Attribute-Based Data Sharing
 
Hybrid Cloud Approach for Secure Authorized Deduplication
Hybrid Cloud Approach for Secure Authorized DeduplicationHybrid Cloud Approach for Secure Authorized Deduplication
Hybrid Cloud Approach for Secure Authorized Deduplication
 
IRJET- Survey of Cryptographic Techniques to Certify Sharing of Informati...
IRJET-  	  Survey of Cryptographic Techniques to Certify Sharing of Informati...IRJET-  	  Survey of Cryptographic Techniques to Certify Sharing of Informati...
IRJET- Survey of Cryptographic Techniques to Certify Sharing of Informati...
 
Narrative of digital signature technology and moving forward
Narrative of digital signature technology and moving forwardNarrative of digital signature technology and moving forward
Narrative of digital signature technology and moving forward
 
Survey on Lightweight Secured Data Sharing Scheme for Cloud Computing
Survey on Lightweight Secured Data Sharing Scheme for Cloud ComputingSurvey on Lightweight Secured Data Sharing Scheme for Cloud Computing
Survey on Lightweight Secured Data Sharing Scheme for Cloud Computing
 
File transfer using cryptography techniques
File transfer using cryptography techniquesFile transfer using cryptography techniques
File transfer using cryptography techniques
 
IMPLEMENTATION TWOFISH ALGORITHM FOR DATA SECURITY IN A COMMUNICATION NETWOR...
IMPLEMENTATION TWOFISH ALGORITHM FOR DATA  SECURITY IN A COMMUNICATION NETWOR...IMPLEMENTATION TWOFISH ALGORITHM FOR DATA  SECURITY IN A COMMUNICATION NETWOR...
IMPLEMENTATION TWOFISH ALGORITHM FOR DATA SECURITY IN A COMMUNICATION NETWOR...
 

Recently uploaded

Paint shop management system project report.pdf
Paint shop management system project report.pdfPaint shop management system project report.pdf
Paint shop management system project report.pdf
Kamal Acharya
 
Teachers record management system project report..pdf
Teachers record management system project report..pdfTeachers record management system project report..pdf
Teachers record management system project report..pdf
Kamal Acharya
 
School management system project report.pdf
School management system project report.pdfSchool management system project report.pdf
School management system project report.pdf
Kamal Acharya
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
AbrahamGadissa
 
Online blood donation management system project.pdf
Online blood donation management system project.pdfOnline blood donation management system project.pdf
Online blood donation management system project.pdf
Kamal Acharya
 

Recently uploaded (20)

Electrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission lineElectrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission line
 
Paint shop management system project report.pdf
Paint shop management system project report.pdfPaint shop management system project report.pdf
Paint shop management system project report.pdf
 
Teachers record management system project report..pdf
Teachers record management system project report..pdfTeachers record management system project report..pdf
Teachers record management system project report..pdf
 
İTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering WorkshopİTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering Workshop
 
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationKIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
 
An improvement in the safety of big data using blockchain technology
An improvement in the safety of big data using blockchain technologyAn improvement in the safety of big data using blockchain technology
An improvement in the safety of big data using blockchain technology
 
ENERGY STORAGE DEVICES INTRODUCTION UNIT-I
ENERGY STORAGE DEVICES  INTRODUCTION UNIT-IENERGY STORAGE DEVICES  INTRODUCTION UNIT-I
ENERGY STORAGE DEVICES INTRODUCTION UNIT-I
 
retail automation billing system ppt.pptx
retail automation billing system ppt.pptxretail automation billing system ppt.pptx
retail automation billing system ppt.pptx
 
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamKIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
 
School management system project report.pdf
School management system project report.pdfSchool management system project report.pdf
School management system project report.pdf
 
Supermarket billing system project report..pdf
Supermarket billing system project report..pdfSupermarket billing system project report..pdf
Supermarket billing system project report..pdf
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
 
Online blood donation management system project.pdf
Online blood donation management system project.pdfOnline blood donation management system project.pdf
Online blood donation management system project.pdf
 
Construction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptxConstruction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptx
 
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdfRESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
 
internship exam ppt.pptx on embedded system and IOT
internship exam ppt.pptx on embedded system and IOTinternship exam ppt.pptx on embedded system and IOT
internship exam ppt.pptx on embedded system and IOT
 
1. Henrich Triangle Safety and Fire Presentation
1. Henrich Triangle Safety and Fire Presentation1. Henrich Triangle Safety and Fire Presentation
1. Henrich Triangle Safety and Fire Presentation
 
Lect 2 - Design of slender column-2.pptx
Lect 2 - Design of slender column-2.pptxLect 2 - Design of slender column-2.pptx
Lect 2 - Design of slender column-2.pptx
 
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical EngineeringIntroduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-4 Notes for II-II Mechanical Engineering
 
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
 

Mini Project on Data Encryption & Decryption in JAVA

  • 1. DATA ENCRYPTION & DECRYPTION A REPORT Submitted by Mr. Bhautik Chovatiya Submitted to Prof. Bansi Kotecha In partial fulfillment for the subject Computer Networks of 4TH SEMESTER IN INFORMATION TECHNOLOGY At DEPARTMENT OF COMPUTER ENGINEERING MARWADI UNIVERSITY RAJKOT APRIL 2018
  • 2. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 2 Acknowledgment I would like to thank Prof. Bansi Kotecha , Marwadi University, Rajkot for providing her precious time to carry out this mini project along with its report and also for their valuable guidance and useful suggestions, which helped me a lot in completing this report, on time. Finally , and importantly I would like to express gratitude to my beloved parents for their blessings and Marwadi University for the successful completion of this report.
  • 3. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 3 ABSTRACT Data security is a major issue which we are facing today in this digital world of communication. As we know that today hackers are almost at every corner in search of our useful data which can be hacked by them for their different purposes. Even the risk gets doubled when come to the data of any country’s government. So, a system or terminology is must required to make that data safe forever by any means during communication. Data protection can be accomplished by changing the original data by any means to some other un useful data so that if someone gets that data then also it must remain in un useful bits. This process can be achieved by Encrypting that data by some means of algorithms which are known to the sender and the similar Decryption algorithms to be known to only the desired receiver so that it can convert that encrypted data back to the user understandable form. Today as it is a need to develop such kind of applications which performs the specified task but along with it should be very much user friendly so that no special skills need to be required to learn in order to use that application or project. In the application the user has to select either wants to send something by encrypting or wants to receive by decrypting . If it wants to send then it have to select source file previously designed or type some message which is to Encrypt and then transfer. Whereas on the receiver side again the receiver have to select the file which is to be received from the sender along with a decryption key to decrypt that message. Decryption key can be selected either manually if told by the sender or selecting key sent by the sender along with the encrypted data to avoid further delay in processing the message.
  • 4. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 4 List of Content Sr. No. Content Page No. 1. Introduction 1 2. Requirement gathering and Analysis of existing similar work 1 3. Design Solution development and validation against original requirement 3 4. Project Implementation 4 5. Conclusion 16 6. Future Work 16
  • 5. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 5 1. Introduction Data security is a major issue which we are facing today in this digital world of communication. As we know that today hackers are almost at every corner in search of our useful data which can be hacked by them for their different purposes. Even the risk gets doubled when come to the data of any country’s government. Data protection can be accomplished by changing the original data by any means to some other un useful data so that if someone gets that data by means of hacking then also it must remain in un useful bits of data for that person. This process can be achieved by Encrypting that data by some means of algorithms which are known to the sender and on the other side the similar Decryption algorithms must be known to only the desired receiver so that it can convert that encrypted data back to the user understandable form. Today as it is a need to develop such kind of applications which performs the specified task but along with it should be very much user friendly so that no special skills need to be required to learn in order to use that application or project. This is a Java based project with inbuilt hard disk storage unit as a database. This report contains in depth demonstration of Data Encryption and Decryption system along with its working architecture which contains brief introduction, features, prototype, information about other similar projects, outputs, source code and at last references. 2. Requirement gathering and Analysis of existing similar work 2.1 Name: Data Encryption and Decryption in Java Cryptography Programming Environment: Linux Features: Choosing algorithm, Padding, Encryption, uses Block cipher etc. Link:https://www.veracode.com/blog/research/encryption-and-decryption-java- cryptography Explanation: In this project there are plenty of options available for encrypting data like AES,SHA-1 etc algorithms. It uses complex programming language along with reserved functions which are designed especially for security kind of purpose.
  • 6. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 6 2.2 Name: Encrypt and Decrypt data using AES algorithm Programming Environment: Linux Features: uses AES algorithm for encryption etc. Link: https://www.quickprogrammingtips.com/java/how-to-encrypt-and-decrypt-data-in- java-using-aes-algorithm.html Explanation: This Java project shows how to encrypt data using AES encryption algorithm. In this project, the KeyGenerator is initialized with a 128 bit secret key. Many helper classes of java are used for AES encryption such as Cipher (for encryption/decryption), SecretKey (represents the shared secret key) and KeyGenerator (generates the shared secret key). 2.3 Name: Encryption and Decryption using DES algorithm Programming Environment: Linux Features: uses DES algorithm, uses swing module for GUI. Link: http://slogix.in/how-to-encrypt-and-decrypt-data-using-des-in-java Explanation: This project contains modules of swing applets which are used to make user friendly GUI for simple feel. DES algorithm is very complex and used for very large secure piece of data. 2.4 Name: Simple Password Encryption & Decryption in C++ Programming Environment: Windows Features: Uses simple algorithm to encrypt the password. Link:https://codereview.stackexchange.com/questions/77519/simple-password- encryption- decryption-in-c Explanation: This Project includes the concept of random combinations which is used to generate a random password. After generation of that password ,it is decrypted with the simple cipher text algorithm so that no other person than the authorized one can be able to view the details regarding the login forum of the user.
  • 7. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 7 3. Design prototype development & validation against original requirement The prototype of Data Encryption & Decryption is shown below which was made on a chart paper. It describes the flow of the project along with the sample output screens which will look like after each and every options pressed by any user. Figure-3.1 Data Encryption and Decryption 4. Project Implementation 4.1 Tool Required and Requirements :
  • 8. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 8  Linux Environment  Latest version of JDK(Java Development Kit)  Terminal (In case of not having other platforms like Eclipse etc)  RAM Minimum 512MB 4.2 Output Screens with code snippet of project: 4.2.1 Main Screen Figure 4.2.1 Main screen consists of two options as shown in above figure. Choosing option 1 will led to encryption and option 2 will led to decryption. Code snippet is provided below so that one can easily understand how to design Main screen. The feel of main menu is kept so simpler so that if anyone who doesn't have prior knowledge about the concept of encryption and decryption can also be able to use this application easily. Code Snippet:
  • 9. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 9 4.2.2 Sub-Screen 1 Figure 4.2.2
  • 10. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 10 This sub menu asks the user for two choices. 1st option provides a input stream which lets the user to enter the data which is to be encrypted and the 2nd option provides a file stream buffer which will take the name of the file form which the data needs to be encrypted. Code Snippet: 4.2.3 Sub- Screen 1.1 Figure 4.2.3
  • 11. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 11 This menu screen performs the encryption on the inputted text by user. It asks to enter a string and then displays the encrypted text which is ready to share with anyone. . Code Snippet: 4.2.4 Sub- Screen 1.2 This screen performs the encryption of data which is present in a text file. It asks to enter the name of text file which the user wants to encrypt & after processing it creates a new file named as "ENCRYPTED.txt" in the same directory which will contain the encrypted data.
  • 12. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 12 Figure 4.2.4 code snippet:
  • 13. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 13 4.2.5 Sub-Screen 2 Figure 4.2.5 This screen asks the user to choose from the two options given for decrypting the data. 1 for directly enter the encrypted text and decrypt it and the 2 for enter the file name which contains the encrypted data. code snippet:
  • 14. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 14 4.2.6 Sub-Screen 2.1 Figure 4.2.6 This screen performs the decryption of the encrypted data which is entered by user. Here only one decryption algorithm is used which is Ceaser Cipher text algorithm. code snippet:
  • 15. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 15 4.2.7 Sub-Screen 2.2 Figure 4.2.7 code snippet:
  • 16. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 16 4.3 Overall flow of project: MAIN MENU CHOICE ENCRYPTION SUB-MENU 1 CHOICE ENCRYPT DATA DIRECTLY ENCRYPT DATA OF A TEXT FILE SUB-MENU 2 CHOICE DECRYPT DATA DIRECTLY DECRYPT DATA FROM A ENCRYPTED FILE DECRYPTION EXIT Figure-4.3.1 Flowchart of Project
  • 17. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 17 This project starts with a main page that is shown in Figure-4.2.1. After proceeding further, two options will pop-up asking about the choice of the user i.e. wants to encrypt the data or wants to decrypt the data. Now if the user chooses the 1st option then a new screen will appear which is shown in Figure-4.2.2 This window will again put two new options ,one for manually entering the text which the user wants to encrypt & the other one which will ask the user to enter the file name in which the data is stored which is having (.txt) format. These screens are shown in Figure-4.2.3 and Figure-4.2.4. The flow chart is shown in figure 4.3.1. Now the second option of main menu i.e. decryption will get you to the screen which is shown in Figure 4.2.5. It will again ask you to enter your choice i.e. whether you want to manually enter the encrypted data which you got from the sender and then generate the original data , and the second option will let you to enter the file name (.txt) which has been encrypted earlier to convert it again into user understandable form.
  • 18. DATA ENCRYPTION AND DECRYPTION Prepared By: Bhautik Chovatiya [91600103130] Page 18 5. Conclusion It can be concluded that this project works efficiently for offline purpose at any place provided the requirements for running environment remains same. Users need not to worry about how the algorithm actually works inside the instruction set performed by the compiler. 6. Future Work 1. In Future, Data Encryption and Decryption system can be updated further which can provide more secured encryption algorithms like DES , AES etc. 2. This project can be made more attractive and easy to use by implementing GUI(Graphical User Interface) with the help of many coding platforms like Netbeans etc.