You are on page 1of 88

Ministry of Higher Educa on

Modern Academy Computer


Science and Management
Technology in Maadi Computer
Science Department

Project Name
"Steganography"

BY

-‫ﻧﻮرا ﺟﻤﺎل ﻣﺤﻤﺪ‬

-‫ﻋﻤﺮ ﺧﺎﻟﺪ ﺷﺮارة‬

-‫ﺣﺎزم ﺻﻼح ﺻﺎﺑﺮ اﺣﻤﺪ‬

-‫اﺣﻤﺪ ھﺸﺎم ﻣﺤﻤﺪ ﺻﻼح ﻋﺒﺪاﻟﮭﺎدي‬

-‫اﻻء اﺣﻤﺪ ﻋﺒﺪ اﻟﺤﻜﯿﻢ اﺣﻤﺪ‬

-‫ھﺎﺟﺮ ﺧﺎﻟﺪ ﻣﺤﻤﺪ ﻋﺒﺪاﻟﺒﺎﻗﻲ اﻟﻌﻮﺿﻲ‬

2023

1|Page

ti

Acknowledgement
We would like to express our gra tude to the following individuals
who have contributed to the development of this so ware project:
• Thanks all for providing valuable insights and feedback
throughout the project.
• Thanks to all for their technical exper se and assistance in
troubleshoo ng.
• Thanks to all for their support and encouragement throughout
the development process.
• Thanks to all for their contribu on to the design and user
interface of the so ware.
• Thanks to all for their assistance in tes ng and debugging the
so ware.

We would also like to thank the open-source community for their


contribu ons to the libraries and frameworks used in this project.

Finally, we would like to express our apprecia on to our families and


friends for their pa ence and support during the development of this
project.

All the help and support that we have received during the project
implementa on is very much appreciated and it is the reason we
were nally able to present our idea and make it real, hoping it helps
many people out there.

2 | Page
ft
fi

ti

ti
ti

ft
ti

ti
ti
ti
ti
ti
ft

Abstract
Text hiding in images, audio, and video using cryptography is a technique
known as steganography. It involves embedding a message or data within
an image, audio le, or video in a way that is not apparent to the viewer
or listener. The goal is to hide the data in plain sight, so that it can be
transmi ed without detec on.

Steganography techniques involve modifying the least signi cant bits of


the pixels or sound samples in the media le. This modi ca on is typically
very small and impercep ble to human senses, but can be detected and
decoded by computer algorithms. To encode the message, steganography
so ware takes the message and converts it into a binary format, then
embeds the binary data into the media le using the least signi cant bits
of the pixels or sound samples. To decode the message, the
steganography so ware extracts the least signi cant bits from the media
le and reassembles them into the original binary format, then converts
the binary data back into human-readable text.

Steganography is o en used in combina on with encryp on and other


security measures to ensure the secrecy and integrity of the data. There
are many steganography tools available online, including open-source
projects like Steg hide and Outguess, which allow users to hide messages
in images, audio, and video les using various encryp on methods.

In summary, text hiding in images, audio, and video with cryptography


and decode and encode project is a powerful technique for securing data
transmission. By hiding data in plain sight, it can be transmi ed without
detec on, and the use of encryp on and other security measures can
ensure the secrecy and integrity of the data.

3 | Page
fi
ft
ti
tt
 
 

 
 
fi
ft
ft
 
ti
 
ti
fi

 
ti
fi
ti
fi
 

fi

 
ti
fi
ti
 
ti
fi
tt
fi

Table of Contents:
Contents
Chapter 1 ................................................................................................................................................................8

1.1 Introduc on ..................................................................................................................................................8

1.2 Problem De ni on........................................................................................................................................9

1.3 Solu on Approach ........................................................................................................................................9

1.4 Objec ves of the project ............................................................................................................................10

1.5 Advantages .................................................................................................................................................11

Chapter 2 Survey & Historical Data ......................................................................................................................12

2.1 Historical data .............................................................................................................................................12

Chapter 3 So ware life cycle & Analysis ...............................................................................................................15

3.1 Project Development Methodology (phases): ............................................................................................15

3.2 Planning ......................................................................................................................................................17

3.3 Analysis .......................................................................................................................................................18

3.4 System Design .............................................................................................................................................24

3.4.1 UML diagrams ..........................................................................................................................................24

3.5 System Design: ............................................................................................................................................28

Chapter 4 Data Encryp on Techniques.................................................................................................................29

4.1 Introduc on: ...............................................................................................................................................29

4.2 Plain-text to Ciphertext Encryp on: ...........................................................................................................29

4.3 Communica ons Encryp on (SSL/TLS): ......................................................................................................31

4.4 Email Encryp on (PGP and S/MIME): .........................................................................................................32

4.5: Hard Drive Encryp on: ..............................................................................................................................33


4 | Page
ti
ti


ti
ti

ft


fi
ti

ti



ti



ti
ti


ti

ti







4.6 Mobile Device Encryp on:..........................................................................................................................35

4.7 Wireless Encryp on: ...................................................................................................................................36

4.8 So ware Encryp on: ..................................................................................................................................38

4.9 Cloud Encryp on: .......................................................................................................................................39

4.10 Media Encryp on: ....................................................................................................................................41

4.11 Sensi ve Data Encryp on .........................................................................................................................42

Chapter 5 ..............................................................................................................................................................45

5.1 Tools ............................................................................................................................................................45

5.2 Applica on Func on: ..................................................................................................................................47

Chapter 6 ..............................................................................................................................................................49

System Implementa on........................................................................................................................................49

Introduc on: .....................................................................................................................................................49

Code of Video_steg: .........................................................................................................................................50

Code of Audio_steg: .........................................................................................................................................56

Code of Image_steg: .........................................................................................................................................59

Code of VideoSteg: ...........................................................................................................................................63

Run of the Code: ...............................................................................................................................................77

Chapter 7 ..............................................................................................................................................................85

Conclusions & Future Work ..................................................................................................................................85

Conclusion ........................................................................................................................................................85

Future work: .....................................................................................................................................................85

References: ...........................................................................................................................................................87

5 | Page
ft
ti




ti

ti




ti
ti

ti
ti
ti


ti







ti
ti



List of gures:
Figure 1: Audio Steganography .............................................................................................................................11

Figure 2: Video Steganography .............................................................................................................................12

Figure 3:Text Hiding ..............................................................................................................................................12

Figure 4: Image Encryp on ...................................................................................................................................13

Figure 5: Waterfall model .....................................................................................................................................15

Figure 6: OpenCV Library ......................................................................................................................................18

Figure 7: FFMPEG program ...................................................................................................................................18

Figure 8:NumPy Library ........................................................................................................................................19

Figure 9:Steghide ..................................................................................................................................................19

Figure 10: Context Diagram ..................................................................................................................................20

Figure 11: Use case Diagram.................................................................................................................................21

Figure 12: Level 1 ..................................................................................................................................................22

Figure 13: Sequence Diagram ...............................................................................................................................23

Figure 14:Class Diagram .......................................................................................................................................23

Figure 15:C# logo ..................................................................................................................................................25

Figure 16:Visual Studio code ................................................................................................................................26

Figure 17: OpenSSL ...............................................................................................................................................26

Figure 18:OpenCV, FFmpeg, and PIL .....................................................................................................................26

Figure 19: JavaFX, WPF, Qt, and Tkinter ...............................................................................................................27

Figure 20:Git .........................................................................................................................................................27

Figure 21: JUnit, NUnit, and PyTest ......................................................................................................................27

Figure 22:code 1 of Video_steg ............................................................................................................................29

Figure 23:code 2 of Video_steg ............................................................................................................................30

Figure 24:code 3 of Video_steg ............................................................................................................................31

Figure 25:code 4 of Video_steg ............................................................................................................................32

Figure 26:code 5 of Video_steg ............................................................................................................................33

Figure 27:Code 1 of Audio_steg............................................................................................................................34

6 | Page
fi






ti




Figure 28:Code 2 of Audio_steg............................................................................................................................35

Figure 29:Code 3 of Audio_steg............................................................................................................................36

Figure 30:Code 1 of Image_steg ...........................................................................................................................37

Figure 31:Code 2 of Image_steg ..........................................................................................................................37

Figure 32:Code 3 of Image_steg ..........................................................................................................................38

Figure 33: Code 4 of Image_steg .........................................................................................................................38

Figure 34:Code 1 of VideoSteg .............................................................................................................................40

Figure 35: Code 2 of VideoSteg ............................................................................................................................41

Figure 36: Code 3 of VideoSteg ............................................................................................................................42

Figure 37: Code 4 of VideoSteg ............................................................................................................................43

Figure 38: Code 5 of VideoSteg ............................................................................................................................44

Figure 39: Code 6 of VideoSteg ............................................................................................................................45

Figure 40: Code 7 of VideoSteg ............................................................................................................................46

Figure 41:Code 8 of VideoSteg .............................................................................................................................47

Figure 42:Code 9 of VideoSteg .............................................................................................................................48

Figure 43:Code 10 of VideoSteg ..........................................................................................................................49

Figure 44:Code 11 of VideoSteg ..........................................................................................................................50

Figure 45: Run of the Code1 .................................................................................................................................51

Figure 46: Run of the Code2 .................................................................................................................................52

Figure 47: Run of the Code3 .................................................................................................................................53

Figure 48: Run of the Code4 .................................................................................................................................54

Figure 49: Run of the Code5 .................................................................................................................................55

Figure 50: Run of the Code6 .................................................................................................................................56

Figure 51: Run of the Code7 .................................................................................................................................57

Figure 52: Run of the Code8 .................................................................................................................................58

7 | Page

























Chapter 1
1.1 Introduc on

The transmission of sensi ve informa on over communica on channels is


a common prac ce in today's digital world. However, the transmission of
such informa on poses a signi cant risk of intercep on, as the data is
vulnerable to eavesdropping and intercep on by unauthorized third
par es. To overcome this risk, various techniques have been developed to
secure the transmission of data. One such technique is steganography -
the art and science of hiding informa on within other informa on in a
way that does not reveal the presence of the hidden informa on.

Steganography techniques have been used for centuries, with examples


da ng back to ancient Greece, where secret messages were hidden under
wax tablets. In modern mes, steganography has found applica ons in
digital media, speci cally in images, audio, and video les, where
messages can be hidden in plain sight.

Text hiding in images, audio, and video using cryptography is a powerful


technique for securing data transmission. By hiding data in plain sight, it
can be transmi ed without detec on, and the use of encryp on and
other security measures can ensure the secrecy and integrity of the data.

In this project, we aim to develop a text hiding system


using steganography techniques in images, audio, and video les. The
system will u lize cryptography to secure the hidden data and provide a
robust and secure method for transmi ng sensi ve informa on. The
system will also include decoding and encoding func onality to ensure
that the data can be extracted and converted back to its original form by
authorized par es.

Overall, text hiding in images, audio, and video with cryptography and
decode and encode project is an important technique for securing data
transmission, and this project aims to develop a robust and secure system
for this purpose.

8 | Page
ti
ti
 
ti

ti
ti

ti
 
ti
tt

fi
ti
ti
fi
 
ti
ti

ti
 
tti
ti
ti
ti
ti
ti
ti
fi
 
ti
fi

ti
ti
ti

1.2 Problem De ni on

The transmission of sensi ve informa on over communica on channels is


vulnerable to intercep on, as the data can be intercepted and accessed
by unauthorized third par es. Tradi onal encryp on techniques can
provide secure transmission of data, but they do not address the issue of
data detec on. This is where steganography techniques come into play.
Steganography techniques can hide data within other data in a way that
does not reveal the presence of the hidden data, providing a secure and
covert method for transmi ng sensi ve informa on.

Text hiding in images, audio, and video using cryptography is a technique


that can provide addi onal security for data transmission. The use of
cryptography ensures that the hidden data is encrypted, providing an
added level of security. However, developing a robust and secure text-
hiding system can be challenging. The system must be able to embed and
extract the hidden data without a ec ng the quality of the media le.
The system must also be able to withstand various a acks, including
sta s cal a acks and visual a acks that can reveal the presence of hidden
data.

Therefore, the problem de ni on for text hiding in images, audio, and


video with cryptography and decode and encode project is to develop a
system that can securely embed and extract hidden text within images,
audio, and video les using steganography techniques and cryptography.
The system must be able to withstand various a acks and ensure that the
hidden data is not detectable without the proper decryp on key.
Addi onally, the system must be e cient and user-friendly to enable
widespread adop on and usage.

1.3 Solu on Approach

To develop a robust and secure text hiding system using steganography


techniques and cryptography, we propose the following solu on
approach:

9 | Page
ti
ti

ti
ti

ti
tt
fi
ti
ti
fi

ti
ti
ti
tti
fi
ti
tt
ti

ff
ti
ffi
ti
ti
ti
tt
ti
ti

tt
ti
ti
ti
fi
Data Encryp on: The message to be hidden will be encrypted using a
symmetric or asymmetric encryp on algorithm to ensure that the
message is secure and cannot be accessed by unauthorized third par es.

Embedding the encrypted message: The encrypted message will be


embedded within the least signi cant bits of the pixels or sound samples
in the media le using steganography techniques. The embedding process
must be performed in such a way that the media le's quality is not
degraded, and the presence of the hidden data is not detectable.

Decoding the hidden message: The hidden message will be decoded by


extrac ng the least signi cant bits from the media le and performing a
reverse encryp on process to obtain the original message. The decoding
process must be e cient and accurate, and the correct decryp on key
must be provided to access the original message.

Robustness against a acks: The system must be designed to withstand


various a acks, including visual a acks and sta s cal a acks that can
reveal the presence of the hidden data. The system must also be able to
detect any modi ca ons made to the media le to ensure the integrity of
the hidden data.

User-friendly interface: The system must be user-friendly and easy to use


to enable widespread adop on and usage. The system's interface should
allow users to select the media le and message to be hidden and provide
feedback on the success of the embedding and decoding process.

1.4 Objec ves of the project

To develop a text-hiding system that can securely embed and .1


extract hidden text within images, audio, and video les using
.steganography techniques and cryptography

To ensure that the hidden text is encrypted using a symmetric or .2


asymmetric encryp on algorithm to ensure that the message is
.secure and cannot be accessed by unauthorized third par es
10 | Page
ti
ti
tt
ti
fi
ti
fi

ffi
ti
ti
tt
fi

ti
fi
fi
tt
ti
fi

ti
ti
fi
fi
fi
ti
tt

ti
ti

To develop an e cient and accurate decoding process that can .3


extract the hidden text from the media le using the correct
.decryp on key

To ensure that the system is robust against various a acks, .4


including visual a acks and sta s cal a acks that can reveal the
.presence of the hidden data

To provide a user-friendly interface that enables users to select the .5


media le and message to be hidden and provides feedback on the
.success of the embedding and decoding process

To conduct extensive tes ng to ensure that the system is e cient, .6


.accurate, and secure

To evaluate the system's performance in terms of speed, accuracy, .7


.and security and compare it with exis ng steganography systems

1.5 Advantages

1. Enhanced security: The project will provide an addi onal layer of


security by encryp ng the hidden data using symmetric or
asymmetric encryp on algorithms.

2. C o v e r t c o m m u n i c a o n : T h e u s e o f s t e g a n o g r a p h y
techniques allows for covert communica on, where the hidden
data is not detectable without the proper decryp on key.

11 | Page
fi
ti
 

ffi
tt
ti
ti
ti
ti
ti
ti

ti
tt
ti
fi
 
ti
ti

ffi
tt
3. Robustness against a acks: The system is designed to withstand
various a acks, including sta s cal a acks and visual a acks that
can reveal the presence of the hidden data.

4. E cient and accurate: The system's embedding and decoding


process is e cient and accurate, ensuring that the media le's
quality is not degraded, and the hidden data is not corrupted.

5. User-friendly interface: The system's interface is user-friendly,


allowing users to easily select the media le and message to be
hidden and providing feedback on the success of the embedding
and decoding process.

6. Versa lity: The system can be used to hide data within images,
audio, and video les, providing versa lity in the types of media
that can be used for covert communica on.

7. Widespread adop on: The use of steganography techniques and


cryptography in the system provides a secure and covert method
for transmi ng sensi ve informa on, making it suitable for
widespread adop on in various industries.

Chapter 2
Survey & Historical Data
2.1 Historical data

The art of steganography, or hiding messages within other messages, can be


traced back to ancient Greece, where people used to write secret messages on
wax tablets, cover them with wax, and then write a non-secret message on top
of the wax. The recipient would then scrape o the wax to reveal the hidden
message.

In modern mes, steganography has found applica ons in digital media,


speci cally in images, audio, and video les, where messages can be hidden in
plain sight. The rst known digital steganography technique was developed in

12 | Page
ffi
fi
ti
 

tt
ti

tti
ffi
fi

ti
ti
fi
tt

ti
ti

ti
ti
fi
tt
ti
ti

fi

ff
ti
 
tt
 

fi
1985 by a group of researchers at the University of Southern California, who
introduced the concept of least signi cant bit (LSB) steganography.

Since then, many steganography techniques have been developed, including


methods for hiding data within audio and video les. In the early 2000s,
steganography techniques were used by terrorists and other criminal
organiza ons to communicate covertly, leading to increased interest and
research in steganography techniques by law enforcement agencies.

Today, steganography techniques con nue to evolve, with new methods being
developed to improve the security and e ciency of hiding data within media
les. The use of cryptography in steganography techniques has become
increasingly popular, providing an addi onal layer of security for hidden data.

In recent years, steganography techniques have found applica ons in various


industries, including military and intelligence, healthcare, nance, and digital
media. The development of text hiding in images, audio, and video with
cryptography and decode and encode project builds upon this historical
background, providing a robust and secure method for transmi ng sensi ve
informa on.

1. Audio Steganography using Cryptography: This project involves hiding


audio data within another audio le using steganography techniques
and encryp ng the hidden data using cryptography. It aims to provide
secure and covert communica on for audio data transmission.

Figure 1: Audio Steganography

2. Video Steganography using Cryptography: This project involves


hiding video data within another video le using steganography
techniques and encryp ng the hidden data using cryptography. It
13 | Page
fi
ti
ti
 
 
ti

 
 
ti
 
ti
 
fi
fi
ti
 
 
ti
 
 
ffi
fi
fi
fi

ti
tti

ti

aims to provide secure and covert communica on for video data


transmission.

Figure 2: Video Steganography

3. Text Hiding in Documents using Cryptography: This project involves


hiding text data within document les, such as PDFs or Microso
Word documents, using steganography techniques and encryp ng
the hidden data using cryptography. It aims to provide secure and
covert communica on for text data transmission within
documents.

Figure 3:Text Hiding

4. Image Encryp on using Steganography: This project involves


encryp ng image data using steganography techniques to hide the
14 | Page
ti

ti

 
ti
 
 
fi
 
ti
 
 
 
ti

ft
image within another image le. It aims to provide an addi onal
layer of security by making the hidden image undetectable without
the proper decryp on key.

Figure 4: Image Encryp on

Chapter 3
So ware life cycle & Analysis
3.1 Project Development Methodology (phases):

The Waterfall model is characterized by a sequen al progression through


various stages of a project, beginning with ini a on and concluding with
delivery. However, this model has certain limita ons, which has led to the
development of several spin-o models over the years. The Waterfall
model comprises six phases: Introduc on, Analysis, Design, Coding,
Tes ng, and Implementa on and Maintenance. In the context of
the So ware Development Life Cycle (SDLC), the Waterfall model

15 | Page
ft
ti
 
 
ft

 
ti

ti

ti
fi
 
ff

ti
 
 

ti
ti
ti
ti
ti
 

progresses through these six phases in a sequen al manner, with each


phase owing into the next, much like a waterfall.

1. Requirements Analysis: The rst phase of the project development


methodology is to de ne the requirements of the system. This
involves iden fying the stakeholders, determining their needs and
expecta ons, and de ning the system's func onal and non-
func onal requirements.

2. Design: The design phase involves crea ng a detailed design of the


system, including the system architecture, algorithms, and data
structures. In this phase, the design team will create a system
design that meets the requirements iden ed in phase one.

3. Implementa on: The implementa on phase involves coding the


system using the design speci ca ons created in phase two. The
implementa on team will also create unit tests to ensure that the
system func ons correctly and meets the requirements.

4. Tes ng: The tes ng phase involves tes ng the system to ensure
that it meets the requirements and func ons correctly. This
includes tes ng the system's func onality, performance, and
security.

5. Deployment: The deployment phase involves deploying the system


in a produc on environment. This includes installing the system,
con guring it, and tes ng it in the produc on environment.

6. Maintenance: The maintenance phase involves maintaining the


system a er deployment. This includes xing any bugs or issues
that arise, upda ng the system to meet changing requirements,
and providing ongoing support to users.

Throughout the project development methodology, the team will also


use project management techniques, such as project planning, risk
management, and quality assurance, to ensure the project's success.

Overall, the project development methodology for text hiding in images,


audio, and video with cryptography and decode and encode project is a
comprehensive approach that ensures the system meets the

16 | Page
ti
 
fi
ti
 
fl
ti

ft
ti
ti
ti
ti
 
ti
ti
 
ti
ti
 
 
 
ti
fi
fi

 
fi
fi
ti
ti
 
ti
ti

ti
 
ti
ti
fi
fi
 
 
ti
 

 
ti
ti

 
requirements, is secure and e cient, and provides a user-friendly
interface. The methodology also ensures that the system is maintainable
and scalable, enabling it to adapt to changing requirements and
technologies.

Figure 5: Waterfall model

3.2 Planning

1. De ne Project Scope: De ne the scope of the project, including the


goals, objec ves, and deliverables. Iden fy the stakeholders and
their roles in the project.

2. Requirements Gathering and Analysis: Gather and analyze the


requirements of the system, including func onal and non-
func onal requirements. De ne the system's architecture,
algorithms, and data structures.

3. Design: Create a detailed design of the system, including the user


interface, system architecture, algorithms, and data structures.

4. Implementa on: Implement the system design, including


coding, unit tes ng, and integra on tes ng.

5. Tes ng: Test the system to ensure that it meets the requirements
and func ons correctly. This includes tes ng the system's
func onality, performance, and security.
17 | Page
fi
ti
ti
ti
 
ti

ti
ti

ti
fi

ti

fi
ffi
 
ti

ti

 
ti
ti

6. Deployment: Deploy the system in a produc on environment,


including installa on, con gura on, and tes ng.

7. Maintenance: Maintain the system a er deployment, including bug


xes, updates, and ongoing support.

8. Risk Management: Iden fy and mi gate risks that could a ect the
success of the project.

9. Project Management: Develop a project plan, including melines,


milestones, and resources. Monitor and control project progress to
ensure it remains on track.

10. Documenta on: Create documenta on for the system,


including user manuals, technical documenta on, and system
speci ca ons.

11. Training and Support: Provide training and support to users to


ensure they can use the system e ec vely.

12. Evalua on: Conduct an evalua on of the system to ensure that it


meets the requirements and func ons correctly. This includes
benchmarking the system's performance and comparing it to
exis ng steganography systems.

3.3 Analysis

3.3.1 Requirements Analysis:

• The system must be developed using programming languages and


frameworks suitable for steganography and cryptography
techniques.
• The system must be able to run on mul ple pla orms, including
Windows, macOS, and Linux.
• The system must be able to integrate with third-party libraries and
tools for steganography and cryptography techniques.

18 | Page
fi
ti
fi
ti
ti
 

ti

ti

ti
fi
 

ti
ti

ff
ti

ft
ti
ti
 
ti
ti

ti

ti
ti
tf

ti
ff
 
• The system must be developed using programming languages and
frameworks suitable for steganography and cryptography
techniques.
• The system must be able to run on mul ple pla orms, including
Windows, macOS, and Linux.
• The system must be able to integrate with third-party libraries and
tools for steganography and cryptography techniques.
• Overall, the requirements analysis for text hiding in images, audio,
and video with cryptography and decode and encode project
ensures that the system meets the func onal and non-func onal
requirements of the stakeholders, is technically feasible, and meets
the opera onal requirements of the users. By de ning the
requirements, the project team can ensure that the system meets
the expecta ons of the stakeholders and users, providing a
valuable tool for securing the transmission of sensi ve informa on.

3.3.2 System Requirements:

• Hardware
• Processor: Intel Core i5 or higher
• RAM: 8 GB or higher
• Hard Disk: 256 GB or higher
• Graphics Card: Nvidia GeForce GTX 1050 or higher
• Monitor: 1080p resolu on or higher

• So ware
• Opera ng System: Windows 10, macOS, or Linux
• Development Environment: Visual Studio Code, Eclipse, or
JetBrains IntelliJ IDEA

19 | Page
ft
 
ti
 
 

 
ti

ti
 
 
 

ti
 

 
ti
ti

tf
ti

 
fi
ti
ti

• Programming Languages: Python, Java, or C++


• Libraries: OpenCV, NumPy, Pillow, and PyCrypto

3.3.3 So ware Requirements Speci ca on

Func onal Requirements


• The system must be able to embed text data within images, audio,
and video les using steganography techniques.
• The system must be able to encrypt the hidden text data using
symmetric or asymmetric encryp on algorithms.
• The system must be able to extract the hidden text data from
the media les using the correct decryp on key.
• The system must be able to detect any modi ca ons made to the
media les to ensure the integrity of the hidden data.
• The system must be able to provide feedback on the success of the
embedding and decoding process.

Nonfunc onal Requirements


• The system must be secure and able to withstand various a acks,
including visual a acks and sta s cal a acks that can reveal the
presence of the hidden data.
• The system must be e cient and accurate, ensuring that the media
le's quality is not degraded, and the hidden data is not corrupted.
• The system must be user-friendly, allowing users to easily select
the media le and message to be hidden and providing feedback
on the success of the embedding and decoding process.
• The system must be scalable and maintainable, enabling it to adapt
to changing requirements and technologies.

20 | Page
fi
 
ti
fi
ft
ti
 
fi
fi
fi
 
tt
 
ffi

 
 

ti
ti
 

ti
fi
 
ti
ti
tt

fi

ti

 
tt

3.3.4 System Users

In the system, we have two main users:

1. Senders: These are the users who want to hide their sensi ve
informa on within media les using steganography techniques and
encrypt the hidden data using cryptography. They will use the
system's user interface to select the media le and the message to
be hidden and specify the encryp on algorithm and key.

2. Receivers: These are the users who receive the media les and
need to extract the hidden data using the correct decryp on key.
They will use the system's user interface to select the media le
and provide the decryp on key to extract the hidden message.

3.3.5 Tools

1. OpenCV: OpenCV is an open-source computer vision library that


can be used for steganography techniques. It provides a wide range
of image processing func ons that can be used to embed and
extract hidden data within images.

Figure 6: OpenCV Library

2. FFMPEG: FFMPEG is a command-line tool that can be used for audio and video
processing. It provides a wide range of func ons that can be used for steganography
techniques, including audio and video encryp on.

21 | Page
 
ti
 

 
 
 

ti
 
fi
ti
 
 
 
ti

ti
 
ti
 
 

fi
 
 

fi
ti
 

 
ti
fi
Figure 7: FFMPEG program

3. PyCrypto: PyCrypto is a Python library that can be used for encryp on and
decryp on of data. It provides a wide range of cryptographic algorithms, including
symmetric and asymmetric encryp on, that can be used to encrypt the hidden data
within media les.

4. NumPy: NumPy is a Python library that can be used for numerical compu ng. It
provides a wide range of func ons that can be used for steganography techniques,
including image manipula on and data extrac on.

Figure 8:NumPy Library

5. Steghide: Steghide is a command-line tool that can be used for steganography


techniques. It provides func ons for embedding and extrac ng hidden data
within media les, including images, audio, and video.

22 | Page
 
ti
 
fi
fi
 

ti
 
 
ti
ti
ti

 
ti
 

 
ti
ti
ti

Figure 9:Steghide

23 | Page

3.4 System Design


3.4.1 UML diagrams
3.4.1.1 Context Diagram

Figure 10: Context Diagram

24 | Page

3.4.1.2 Use case Diagram

Figure 11: Use case Diagram

25 | Page

3.4.1.3 Level 1

Figure 12: Level 1

26 | Page

3.4.1.4 Sequence Diagram

Encrypt Receiver
Sender

Figure 13: Sequence Diagram

3.4.1.5 Class Diagram

Figure 14:Class Diagram

27 | Page

3.5 System Design:

System design is the process of de ning the architecture, components,


modules, interfaces, and data for a system to sa sfy speci ed
requirements. In the context of text hiding in images, audio, and video
with cryptography, the purpose of the design phase is to create a plan for
implemen ng the system that meets the project's requirements.

The overall goal of the project is to develop a system that can encode and
decode text messages in images, audio, and video les using
cryptography. The primary objec ve is to ensure that text messages are
hidden in such a way that they cannot be detected by unauthorized
individuals.
1. Data Encoding and Decoding: The system should be able to encode text
messages into images, audio, and video les using cryptographic
techniques such as AES or RSA. Similarly, the system should be able to decode
the hidden messages from these les.

2. User Interface: The system should have a user interface that allows users to
input text messages to be encoded and to view the decoded messages. The
interface should also provide op ons for selec ng the type of le to be used
for encoding.

3. Security: The system should ensure the security and protec on of the text
messages using a strong encryp on algorithm. The system should also provide
a secure key management system to protect the encryp on keys.

4. File Management: The system should be able to manage the les used for
encoding and decoding. The system should maintain an organized database of
the les used for encoding and decoding.

5. Tes ng: The system should be tested to ensure that it meets the requirements
and speci ca ons of the project. The tes ng process should include func onal
tes ng, performance tes ng, and security tes ng.

6. When designing the system, it is essen al to ensure that the solu on is


e cient, scalable and maintainable. The system should also be designed with
security in mind, ensuring that all sensi ve data is well protected.

28 | Page
 
ffi
ti
ti
fi
fi
 
ti
ti

 
 

 
 
ti
ti
ti
fi
 
 
 

ti
ti
ti

fi
ti
ti
ti

fi
 
 
ti
 
ti
 
fi
fi

 
ti
ti
fi
ti

 
fi
Chapter 4
Data Encryp on Techniques
4.1 Introduc on:

Data encryp on is a crucial process used to transform data from a readable format
into an unintelligible format, ensuring protec on against unauthorized access. In this
chapter, we will explore various encryp on techniques that are employed to secure data in
di erent contexts. Each technique plays a unique role in safeguarding sensi ve informa on
and maintaining data con den ality and integrity.

Figure 15: symmetric cryptology

4.2 Plain-text to Ciphertext Encryp on:

One of the fundamental encryp on techniques is conver ng plain-


text data into ciphertext using advanced encryp on algorithms such as
AES (Advanced Encryp on Standard) or RSA (Rivest–Shamir–Adleman).
These algorithms provide robust encryp on and are widely used to secure
sensi ve informa on.

1. Advanced Encryp on Standard (AES):

29 | Page
ff
ti
ti

ti
ti
ti

ti
fi

ti
ti
ti
ti

ti
ti

ti

ti
ti
ti
ti

AES is a symmetric key encryp on algorithm widely adopted for its


e ciency and security. It operates on xed-length blocks of data and uses
a variable key length of 128, 192, or 256 bits. AES encryp on involves a
series of subs tu on, permuta on, and mixing opera ons known as
rounds. These rounds are performed itera vely to transform the plain-
text data into ciphertext.

AES has become the de facto encryp on standard for various applica ons,
including secure communica on, data storage, and protec ng sensi ve
informa on. It has been extensively analyzed and recognized by
cryptographic experts for its resistance to a acks and computa onal
e ciency.

2. Rivest–Shamir–Adleman (RSA):

RSA is an asymmetric key encryp on algorithm that relies on the


mathema cal proper es of large prime numbers. It uses two di erent
keys: a public key for encryp on and a private key for decryp on. The
strength of RSA lies in the di culty of factoring large numbers into their
prime factors.

To encrypt plain-text using RSA, the sender uses the recipient's public key
to transform the data into ciphertext. The encrypted ciphertext can only
be decrypted using the recipient's corresponding private key. This makes
RSA suitable for secure data exchange and digital signatures.

RSA is widely used for securing communica on, securing digital


cer cates, and establishing secure connec ons in various protocols like
HTTPS. It provides a robust mechanism for protec ng sensi ve data,
ensuring con den ality, integrity, and authen ca on.

Both AES and RSA are highly secure encryp on algorithms but are used in
di erent scenarios. AES is symmetric, meaning the same key is used for
encryp on and decryp on, making it more e cient for bulk data
encryp on. RSA, on the other hand, is asymmetric, providing secure key
exchange and digital signatures but being slower for large-scale data
encryp on.

30 | Page
ffi
ffi
ff
ti
fi
ti
ti
ti
ti
ti

fi

ti
ti
ti
ti
ti

ffi
ti
ti
ti

ti
ti
ti
fi
ti
ti
ti
ti
tt
ti
ffi
ti

ti
ti
ti

ti
ti
ti
ff
ti
ti
ti
4.3 Communica ons Encryp on (SSL/TLS):

Secure Sockets Layer (SSL) and its successor, Transport Layer


Security (TLS), are cryptographic protocols commonly used to secure
communica ons over the internet. They provide encryp on and
authen ca on mechanisms to ensure the con den ality, integrity, and
authen city of data transmi ed between a client and a server.

1. Secure Sockets Layer (SSL):

SSL was the original protocol developed by Netscape in the 1990s to


secure communica on between web browsers and servers. It establishes
an encrypted connec on between the client and the server, preven ng
eavesdropping and tampering with the data in transit.

SSL operates through a combina on of asymmetric and symmetric


encryp on. Ini ally, a secure session is established using asymmetric
encryp on, where the server presents its digital cer cate containing its
public key to the client. The client veri es the cer cate's authen city
and generates a session key to be used for symmetric encryp on. The
subsequent data exchange occurs using symmetric encryp on with the
session key, ensuring fast and e cient communica on.

2. Transport Layer Security (TLS):

TLS is the successor to SSL and is an updated and more secure version of
the protocol. It provides similar func onality to SSL and is widely used to
secure internet communica on. The terms SSL and TLS are o en used
interchangeably, although TLS is the more current and recommended
protocol.

TLS operates in a similar manner to SSL, using a combina on of


asymmetric and symmetric encryp on. It establishes a secure connec on
by verifying the server's iden ty through digital cer cates and
establishing session keys for symmetric encryp on. TLS has undergone
several itera ons and improvements to address vulnerabili es found in
earlier versions, ensuring stronger security for communica ons.

SSL/TLS is commonly used to secure various types of internet


communica on, including web browsing, email transmission (SMTP, IMAP,

31 | Page
ti
ti
ti
ti

ti
ti
ti
ti
ti
ti
ti
ti
tt
ti
ti

ffi

ti
ti
ti
ti
fi

fi
ti
ti
ti
ti
ti

fi
fi

ti
ti
ti
ti
fi

ft
ti
ti
ti
ti
ti
ti
POP), le transfer (FTP), and virtual private networks (VPNs). It protects
sensi ve data, such as login creden als, nancial informa on, and
personal data, from unauthorized access during transmission.

Websites and online services u lize SSL/TLS cer cates issued by trusted
cer cate authori es (CAs) to establish their server's authen city. This
allows clients to verify the iden ty of the server and ensure that their
communica on is encrypted and secure.

4.4 Email Encryp on (PGP and S/MIME):

Email encryp on techniques, such as Pre y Good Privacy (PGP) and


Secure/Mul purpose Internet Mail Extensions (S/MIME), are used to
secure email communica ons and protect them from unauthorized
access. These technologies ensure the con den ality, integrity, and
authen ca on of email messages.

1. Pre y Good Privacy (PGP):

PGP is an encryp on and decryp on program that provides cryptographic


privacy and authen ca on for email communica ons. It uses a
combina on of symmetric and asymmetric encryp on, along with digital
signatures, to secure the content and verify the authen city of email
messages.

When sending an encrypted email using PGP, the sender's email client
encrypts the message using a randomly generated symmetric key. This key
is then encrypted using the recipient's public key, making it accessible
only to the intended recipient. The encrypted message and the encrypted
symmetric key are then sent to the recipient, who uses their private key
to decrypt the symmetric key and subsequently decrypt the message.

PGP also supports the use of digital signatures to verify the authen city
and integrity of email messages. The sender can digitally sign the message
using their private key, and the recipient can verify the signature using the
sender's public key. This ensures that the message has not been tampered
with during transit and originates from the expected sender.

2. Secure/Mul purpose Internet Mail Extensions (S/MIME):


32 | Page
ti
fi
ti
tt
fi
ti
ti

ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti

ti

fi
tt
fi
ti
fi
ti
ti
ti
ti

ti
ti
ti

S/MIME is a standard for secure email communica on that is built into


most email clients. It provides encryp on, digital signatures, and
cer cate-based authen ca on for email messages.

S/MIME u lizes public key infrastructure (PKI) to secure email


communica ons. Each user has a digital cer cate containing their public
key, which is issued by a trusted cer cate authority (CA). When sending
an S/MIME encrypted email, the sender's email client encrypts the
message using the recipient's public key, ensuring that only the recipient
can decrypt it using their corresponding private key.

S/MIME also supports digital signatures, where the sender can sign the
email using their private key. The recipient can then verify the signature
using the sender's public key, con rming the authen city and integrity of
the message.

Both PGP and S/MIME are widely used to secure email communica ons,
especially when sending sensi ve or con den al informa on. They
provide end-to-end encryp on, ensuring that the content of the email
remains secure even if intercepted during transit. Addi onally, the use of
digital signatures helps verify the iden ty of the sender and detect any
tampering with the message.

4.5: Hard Drive Encryp on:

Hard drive encryp on is a technology used to encrypt data stored on a


hard drive and protect it from unauthorized access. It ensures the
con den ality of sensi ve informa on even if the hard drive is lost,
stolen, or accessed without proper authoriza on.
33 | Page
ti
fi
fi
ti
ti
ti

ti
ti

ti
ti
ti
ti

ti
fi
ti
ti
fi
ti
ti
ti
ti
fi
fi

ti

ti
ti
ti
ti
ti
There are two common types of hard drive encryp on:

1. Full Disk Encryp on (FDE):

Full Disk Encryp on, as the name suggests, encrypts the en re contents
of the hard drive. It uses encryp on algorithms to transform the data into
an unreadable form, and only authorized users with the encryp on key or
password can decrypt and access the data.

When a computer with FDE is powered on, the encryp on so ware


prompts the user to enter a password or authen ca on creden als. Once
authen cated, the encryp on so ware decrypts the data on-the- y as it
is read from the hard drive, making the data accessible to the user.
Similarly, when data is wri en to the hard drive, it is encrypted in real-
me.

FDE provides strong protec on for data at rest and ensures that even if
the hard drive is removed or stolen, the data remains encrypted and
inaccessible without the encryp on key.

2. File or Folder-Level Encryp on:

File or folder-level encryp on allows users to selec vely encrypt speci c


les or folders on the hard drive. With this approach, users can choose
which les or folders to encrypt, providing a more exible encryp on
solu on.

Users can encrypt sensi ve les or folders using encryp on so ware or


built-in opera ng system features. The encryp on so ware generates a
unique encryp on key for each le or folder and encrypts the data using
that key. To access the encrypted les, users must provide the correct
encryp on key or password.

File or folder-level encryp on is useful when there are speci c les or


folders that contain sensi ve informa on and need an extra layer of
protec on. It allows users to encrypt only the necessary data and leaves
the rest of the hard drive accessible without encryp on.

Hard drive encryp on protects data from various threats, including the ,
unauthorized physical access, or unauthorized access through malware or

34 | Page
ti
fi
ti

ti
ti
fi
ti

ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
tt
ti

ti
fi
ti
ti
fi
ft

fi
ti

ti
ti
ti
ti
ti
ti

ft
fl

ti
ti
ti
ti
fi
ti
ft
fl
fi
ft
ti
fi
ft
hacking. It is commonly used in laptops, desktop computers, and external
storage devices to safeguard sensi ve informa on.

4.6 Mobile Device Encryp on:

Mobile device encryp on is a technology used to encrypt the data


stored on mobile devices such as smartphones and tablets, protec ng it
from unauthorized access. It ensures the con den ality and security of
sensi ve informa on even if the device is lost, stolen, or compromised.

Mobile device encryp on works by encryp ng the data at rest on the


device's internal storage or external memory card. When encryp on is
enabled, all the les, documents, applica ons, and user data stored on
the device are transformed into an unreadable format using encryp on
algorithms. The encryp on key, which is required to decrypt the data, is
securely stored and ed to the user's device passcode or authen ca on
creden als.

Here are some key aspects of mobile device encryp on:

1. Full Device Encryp on:

Full device encryp on, similar to full disk encryp on for computers,
encrypts the en re storage of the mobile device. This includes the
opera ng system, applica ons, user data, and any addi onal storage
media, such as SD cards. All data is automa cally encrypted and
decrypted as needed when the user interacts with the device.

2. File-Level Encryp on:

File-level encryp on allows users to selec vely encrypt speci c les or


folders on their mobile devices. Users can choose to encrypt individual
les or folders containing sensi ve informa on, providing an extra layer of
protec on for speci c data. Encrypted les or folders can only be
accessed with the encryp on key or password.

35 | Page
fi
ti
ti
ti
ti

ti
fi
ti
ti
ti
ti
ti
ti
ti
fi
ti
ti

ti
ti
ti
ti
ti
ti
ti
fi
ti
ti
ti

fi

ti
ti
ti
ti

ti

fi
ti
fi
ti
ti
ti
ti

3. Authen ca on and Encryp on Key Protec on:

Mobile device encryp on relies on strong authen ca on mechanisms,


such as passcodes, PINs, ngerprints, or facial recogni on, to protect the
encryp on keys. The encryp on keys themselves are securely generated
and stored within the device's hardware or trusted execu on
environment. Accessing encrypted data requires proper authen ca on to
unlock and decrypt the informa on.

4. Secure Boot and Tamper Resistance:

Mobile devices o en include addi onal security features like secure boot
and tamper resistance. Secure boot ensures that the device's so ware
has not been tampered with or modi ed, preven ng unauthorized access
to the encryp on keys. Tamper resistance protects the encryp on keys
from being extracted or manipulated by physical a acks, such as chip-
level tampering or reverse engineering.

Mobile device encryp on provides a signi cant layer of protec on for


sensi ve data, especially on devices that are highly portable and prone to
loss or the . It helps prevent unauthorized access to personal
informa on, nancial data, private communica ons, and other
con den al data stored on the device.

It's worth no ng that most modern mobile opera ng systems, such as iOS
and Android, o er built-in encryp on features that users can enable to
secure their devices. These encryp on features are designed to be
transparent to users, ensuring data security without compromising
usability.

4.7 Wireless Encryp on:

Wireless encryp on is a technology used to secure Wi-Fi networks


and protect them from unauthorized access. It ensures the con den ality
and integrity of data transmi ed over wireless networks, safeguarding
sensi ve informa on from intercep on and unauthorized use.

Wireless encryp on primarily focuses on two aspects:

1. Authen ca on:
36 | Page
fi
ti
ti
ti
ti
ti

ti
ti
ti
ft
ti
ti
ti
fi
ff
ti
ti
ti
ft

ti
ti
ti
fi
ti
ti
tt
ti
ti
ti
ti

fi
ti

fi
ti

ti
ti
ti
tt

ti
ti
ti

fi
ti
ti
ti
ti
ft
ti
ti
Wireless networks u lize authen ca on protocols to verify the iden ty of
devices a emp ng to connect to the network. The most common
authen ca on protocol used in Wi-Fi networks is the Wi-Fi Protected
Access (WPA) protocol. WPA provides stronger security compared to its
predecessor, Wired Equivalent Privacy (WEP).

WPA employs a passphrase or preshared key (PSK) to authen cate


devices. Users must enter the correct passphrase to establish a
connec on with the wireless network. This ensures that only authorized
users with the correct passphrase can access the network.

2. Encryp on:

Once authen ca on is completed, wireless encryp on protocols are used


to encrypt the data transmi ed over the Wi-Fi network. These protocols
ensure that the data cannot be intercepted and understood by
unauthorized individuals.

The most widely used wireless encryp on protocol is Wi-Fi Protected


Access II (WPA2). It employs the Advanced Encryp on Standard (AES)
algorithm, which is a strong symmetric encryp on algorithm, to encrypt
the data transmi ed between the wireless router/access point and the
connected devices. WPA2 ensures that the data remains con den al and
protected from eavesdropping.

There is also a newer and more secure protocol known as WPA3, which
provides enhanced security features. WPA3 uses stronger encryp on and
introduces addi onal measures to protect against common Wi-Fi security
vulnerabili es.

Wireless encryp on protects Wi-Fi networks by making it extremely


di cult for unauthorized individuals to access and decipher the data
being transmi ed. It prevents unauthorized users from intercep ng
sensi ve informa on, such as passwords, credit card details, or personal
communica ons.

It is important for Wi-Fi network administrators and users to enable


strong wireless encryp on protocols, such as WPA2 or WPA3, and use

37 | Page
ffi
ti
ti
ti
ti
tt
ti
ti
ti
ti

tt
ti
ti
ti
ti

tt
ti
ti
ti

tt

ti
ti
ti

ti
ti
ti

fi
ti
ti
ti
ti
ti
complex, unique passphrases to strengthen the security of their networks.
Regularly upda ng Wi-Fi devices and routers with the latest rmware and
security patches is also crucial to address any poten al vulnerabili es.

4.8 So ware Encryp on:

So ware encryp on is a technology used to encrypt computer


programs and protect them from unauthorized access, tampering, and
unauthorized use. It ensures the con den ality and integrity of so ware
applica ons, preven ng unauthorized individuals from gaining access to
the program's code or using it for malicious purposes.

So ware encryp on employs various techniques to protect so ware


programs:

1. Code Obfusca on:

Code obfusca on is a technique used to make the source code of a


so ware program more di cult to understand or reverse engineer. It
involves transforming the code structure and logic to make it challenging
for a ackers to comprehend the program's func onality. Obfuscated code
makes it harder for hackers to analyze the program's inner workings and
extract sensi ve informa on or exploit vulnerabili es.

2. Encryp on of Sensi ve Data:

So ware encryp on can also be used to encrypt sensi ve data within a


program. This ensures that any sensi ve informa on stored within the
so ware, such as passwords, encryp on keys, or user data, is protected.
Encryp on algorithms, such as AES or RSA, are used to encrypt the data,
and the decryp on key is securely stored or provided by authorized users
or systems when needed.

3. Digital Rights Management (DRM):

Digital Rights Management is a so ware encryp on technique used to


protect intellectual property rights and control the distribu on and usage
of so ware applica ons. DRM systems employ encryp on and licensing
mechanisms to restrict unauthorized copying, sharing, or modi ca on of
so ware. It enables so ware vendors to enforce licensing terms, prevent
38 | Page
ft
ft
ft
ft
ft
tt
ft
ft
ti
ti
ti
ft

ti
ti
ti
ti
ti
ti
ti
ti
ti

ti

ti
ft
ti
ti

ffi

ft

ti
fi
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti
fi
fi
ti
ti
ft
ft

so ware piracy, and manage access to speci c features or content within


the program.

4. So ware Ac va on and Licensing:

So ware encryp on can also be used in conjunc on with ac va on and


licensing mechanisms. Ac va on typically involves registering and
ac va ng the so ware using a unique license key or ac va on code. The
ac va on process veri es the authen city of the so ware and ensures
that it is being used on authorized devices. So ware licensing may include
limita ons on the number of installa ons, the dura on of usage, or the
number of concurrent users.

By employing so ware encryp on techniques, developers and so ware


vendors can protect their programs from unauthorized access, reverse
engineering, and unauthorized usage. It helps safeguard intellectual
property, maintain so ware integrity, and protect sensi ve informa on
within the so ware.

However, it's important to note that while so ware encryp on provides


an addi onal layer of security, it is not a foolproof solu on. Skilled
a ackers may s ll a empt to bypass or crack the encryp on. Therefore, it
is crucial to implement other security measures, such as secure coding
prac ces, regular so ware updates, and vulnerability assessments, to
ensure comprehensive so ware security.

4.9 Cloud Encryp on:

Cloud encryp on is a technology used to encrypt data stored in the


cloud and protect it from unauthorized access. It ensures the
con den ality and integrity of sensi ve informa on stored in cloud-based
storage services, such as cloud servers, databases, or le storage
pla orms.

Cloud encryp on employs the following mechanisms to safeguard data:

1. Client-Side Encryp on:

39 | Page
tt
ti
ti
ft
ft
tf
fi
ti
ft
ti
ti
ti
ti
ti

ft

ti
ti
ti
ti
ti
ft
ft

ti
ti
tt

ti
ft
ft
fi

ft
ti

ti
ti
ti

ti
ti

fi
ft
ft
ti
ti
ti
ft
ti
ti
ti
ti
ti
ti
ti
fi
ti
ft
ti

Client-side encryp on involves encryp ng data on the client's side before


it is uploaded to the cloud. The client encrypts the data using encryp on
keys that are generated and managed locally. This ensures that the data
remains encrypted throughout its transmission and storage in the cloud.
Only authorized users with the corresponding decryp on keys can access
and decrypt the data.

2. Server-Side Encryp on:

Server-side encryp on is implemented within the cloud infrastructure


itself. The cloud service provider (CSP) is responsible for encryp ng the
data at rest, meaning when it is stored in the cloud. The encryp on keys
are managed by the CSP, and the data remains encrypted unless accessed
by authorized users with proper authen ca on and decryp on privileges.

There are two common server-side encryp on approaches:

a. Key Management by the CSP: The CSP generates and manages the
encryp on keys on behalf of the user. The encryp on process and key
management are transparent to the user, who can access the data using
their authen ca on creden als.

b. Bring Your Own Key (BYOK): With BYOK, the user generates and
manages their encryp on keys externally. The keys are securely provided
to the CSP, who uses them for data encryp on and decryp on. This
approach allows users to retain control over their encryp on keys and
ensures that the CSP cannot access the encrypted data without the user's
keys.

3. End-to-End Encryp on:

End-to-end encryp on provides the highest level of data protec on in the


cloud. It involves encryp ng the data on the client's side before
transmission, ensuring that it remains encrypted during storage and
transit. The encryp on keys are solely controlled by the client, and only
they possess the decryp on keys to access the data. This approach
guarantees that even the cloud service provider cannot access or decrypt
the data.

40 | Page

ti

ti
ti
ti
ti
ti
ti
ti
ti

ti

ti
ti
ti

ti
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti
ti
ti
ti

Cloud encryp on provides an addi onal layer of security to sensi ve data


stored in the cloud. It minimizes the risk of data breaches and
unauthorized access, even if the cloud infrastructure or storage service is
compromised. Cloud encryp on also helps organiza ons comply with
privacy regula ons and industry standards by ensuring the con den ality
of their data.

However, it's important to note that cloud encryp on also introduces


challenges, such as key management, scalability, and performance
considera ons. Organiza ons must carefully plan their encryp on
strategy, including key genera on, rota on, and secure storage, to
maintain data accessibility and mi gate risks e ec vely.

4.10 Media Encryp on:

Media encryp on is a technology used to encrypt audio and video


data to protect it from unauthorized access. It ensures the con den ality
and integrity of media content, preven ng unauthorized individuals from
intercep ng, viewing, or tampering with the audio and video streams.

Media encryp on employs the following techniques to safeguard audio


and video data:

1. Symmetric Encryp on:

Symmetric encryp on algorithms, such as Advanced Encryp on Standard


(AES), are commonly used to encrypt media les. With symmetric
encryp on, the same key is used for both encryp on and decryp on. The
encryp on key is securely shared between the sender and the intended
recipient. This ensures that only authorized par es with the key can
decrypt and access the encrypted media content.

2. Secure Real-Time Transport Protocol (SRTP):

Secure Real-Time Transport Protocol (SRTP) is a popular protocol used for


securing real- me audio and video communica ons over IP networks.
SRTP combines encryp on algorithms, such as AES, with authen ca on
mechanisms to protect the con den ality, integrity, and replay protec on
of media streams. It ensures that audio and video data exchanged
41 | Page
ti
ti
ti
ti

ti
ti
ti
ti
ti

ti

ti
ti
ti

ti
ti
fi
ti
ti
ti
ti
ti
ti
ff

ti
ti
ti
fi
ti
ti
ti

ti
fi
fi
ti
ti
ti
ti
ti

ti
ti
ti
between endpoints remains encrypted and protected from eavesdropping
or unauthorized manipula on.

3. Digital Rights Management (DRM):

Digital Rights Management techniques can be applied to encrypted media


content to control access, distribu on, and usage rights. DRM systems
typically combine encryp on with licensing mechanisms to enforce
restric ons on how media can be consumed. This includes limita ons on
copying, sharing, or viewing the content on authorized devices or within
speci c meframes. DRM helps protect copyrighted media and ensures
compliance with licensing agreements.

4. Watermarking:

Watermarking is a technique used to embed unique iden ers into media


content, such as audio or video les. These iden ers can be used to
trace the origin of the content and verify its authen city. Watermarking
does not directly encrypt the media but adds a layer of protec on against
unauthorized distribu on or tampering. It acts as a deterrent and helps in
iden fying unauthorized copies or leaks.

Media encryp on is widely used in various scenarios, including secure


video conferencing, streaming services, digital broadcas ng, and
surveillance systems. By encryp ng audio and video data, sensi ve
informa on within the media content remains con den al, and the
media's integrity is preserved.

It's important to note that media encryp on alone does not protect
against all poten al threats. Other security measures, such as secure
transmission protocols, user authen ca on, and secure storage of
encryp on keys, should be implemented to ensure comprehensive
protec on of media content.

4.11 Sensi ve Data Encryp on

Sensi ve data encryp on is a cri cal aspect of data protec on, focusing
speci cally on securing con den al and private informa on. Sensi ve
data includes personal iden able informa on (PII), nancial data,
42 | Page
ti
fi
fi
ti
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti
ti

ti
ti
fi
ti
fi

ti
ti
ti
fi
ti

ti

ti
ti
ti
ti
fi
fi
ti
fi
ti
ti
ti
fi
ti
ti
ti
ti
ti
ti
healthcare records, and any other informa on that, if compromised,
could lead to severe consequences or privacy breaches.

Encryp on plays a crucial role in safeguarding sensi ve data from


unauthorized access and poten al misuse. By encryp ng sensi ve data,
even if it is intercepted or accessed without authoriza on, it remains
unintelligible and unusable to unauthorized individuals. Let's explore
some common techniques and prac ces for sensi ve data encryp on:

1. Data-at-Rest Encryp on: This technique involves encryp ng sensi ve


data when it is stored in databases, le systems, or other storage
mediums. Encryp on keys are used to convert the data into an
unreadable format, making it inaccessible without the appropriate
decryp on keys.

2. Data-in-Transit Encryp on: This method ensures the secure


transmission of sensi ve data over networks or communica on channels.
Encryp on protocols like SSL/TLS are employed to encrypt the data during
transmission, protec ng it from eavesdropping or intercep on.

3. Database Encryp on: Database encryp on secures sensi ve data


stored in databases, providing an addi onal layer of protec on.
Encryp on can be applied at the column-level, where speci c elds
containing sensi ve data are encrypted, or at the en re database level,
encryp ng the en re database le.

4. Tokeniza on: Tokeniza on is a technique that replaces sensi ve data


with a non-sensi ve placeholder, known as a token. The original sensi ve
data is stored securely in a separate loca on, and the token is used for
processing or referencing purposes. Tokeniza on helps reduce the risk
associated with handling and storing sensi ve data.

5. Key Management: E ec ve key management is essen al for sensi ve


data encryp on. Strong encryp on relies on secure key storage,
distribu on, rota on, and revoca on processes. Encryp on keys should
be protected using secure key management prac ces, such as key
encryp on and strict access controls.

6. Mul -factor Authen ca on: In addi on to encryp on, implemen ng


mul -factor authen ca on (MFA) adds an extra layer of security for
43 | Page
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti
ti
ti
ti
ti
ti
ti
ti
ff
ti
ti
ti
ti
ti
ti
ti
fi
ti

ti
fi

ti
ti
ti
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti
ti
ti

ti
ti
ti
ti
ti
fi
ti
fi
ti
ti

ti
ti
ti
ti
ti

accessing sensi ve data. MFA requires users to provide mul ple forms of
iden ca on, such as a password and a one- me passcode, ensuring that
only authorized individuals can decrypt and access sensi ve informa on.

7. Compliance and Regula ons: Organiza ons handling sensi ve data


must adhere to industry-speci c regula ons and compliance standards,
such as the General Data Protec on Regula on (GDPR) or the Health
Insurance Portability and Accountability Act (HIPAA). These regula ons
o en require the encryp on of sensi ve data to protect individuals'
privacy and ensure data security.

Sensi ve data encryp on is crucial in mi ga ng the risks associated with


unauthorized access, data breaches, and privacy viola ons. Organiza ons
must implement robust encryp on prac ces and adhere to industry best
prac ces to safeguard sensi ve data throughout its lifecycle, from storage
to transmission and processing. By doing so, they can ensure data
con den ality, integrity, and compliance with privacy regula ons,
ul mately fostering trust with customers and stakeholders.

44 | Page
ft
ti
fi
ti
ti
ti
fi
ti
ti
ti
ti
ti
ti
ti
fi
ti
ti

ti
ti
ti
ti
ti
ti
ti
ti
ti
ti

ti
ti
ti
ti
ti
ti

Chapter 5
5.1 Tools

1. Programming Languages: The choice of programming language depends on the


developer's preference and the requirements of the project. Some
popular programming languages for desktop applica on development include Java,
Python.

2. Integrated Development Environment (IDE): An IDE is an essen al tool for developing


desktop applica ons. Some popular IDEs for desktop applica on development
include Visual Studio, Eclipse, NetBeans, and IntelliJ IDEA.

Figure 16: Visual Studio code

3. Cryptography Libraries: Cryptography libraries provide developers with the necessary


tools for implemen ng encryp on and decryp on algorithms. Some popular
cryptography libraries include Bouncy Castle, OpenSSL, and Cryptlib.

Figure 17: OpenSSL

45 | Page

ti
ti

 
 
ti
 
 
ti
ti

ti
ti

 
 

4. Mul media Libraries: Mul media libraries provide developers with the necessary
tools for manipula ng mul media les such as images, audio, and video les. Some
popular mul media libraries include OpenCV, FFmpeg, and PIL.

Figure18: OpenCV, FFmpeg, and PIL

5. User Interface (UI) Frameworks: UI frameworks provide developers with the


necessary tools for developing the graphical interface of the desktop applica on.
Some popular UI frameworks include JavaFX, WPF, Qt, and Tkinter.

Figure 19: JavaFX, WPF, Qt, and Tkinter

6. Version Control Systems: Version control systems enable developers to manage


changes to the source code of the applica on. Some popular version control systems
include Git, SVN, and Mercurial.

Figure 20: Git

46 | Page
ti
 

 
ti
 
ti
 

ti
ti
 

 
fi
 
 
ti
 
 
 
 

fi

ti

7. Tes ng Frameworks: Tes ng frameworks provide developers with the necessary tools
for tes ng the applica on to ensure that it meets the requirements and
speci ca ons of the project. Some popular tes ng frameworks include JUnit, NUnit,
and PyTest.

Figure 21: JUnit, NUnit, and PyTest

It is important to note that these tools are not exhaus ve, and there may be other tools that
could be used to develop a desktop applica on for text hiding in images, audio, and video
with cryptography and decode and encode project. Addi onally, to avoid plagiarism, it is
important to use your own words and ideas when discussing tools and to properly reference
any sources used.

5.2 Applica on Func on:

1. Encode Text into Mul media Files: The app should allow the user
to encode text messages into images, audio, and video les
using cryptographic techniques like AES or RSA.

2. Decode Text from Mul media Files: The app should allow the user
to decode hidden text messages from mul media les.

3. Select Mul media Files: The app should allow the user to select the
mul media les to be used for encoding and decoding.

4. Select Cryptographic Algorithm: The app should allow the user to


select the cryptographic algorithm to be used for encoding and
decoding.

5. Key Management: The app should provide a secure key


management system to protect the encryp on keys used for
encoding and decoding.

47 | Page
ti
ti
fi
 
 
ti
ti

ti
ti
fi

ti
ti
ti

 
ti
ti

 
 
ti
ti
 
ti
 
ti
ti
ti

fi

 
fi

6. User Interface: The app should have a user-friendly interface that


allows the user to input text messages to be encoded and to view
the decoded messages. The interface should also provide op ons
for selec ng the type of le to be used for encoding.

7. File Management: The app should be able to manage the les used
for encoding and decoding. The app should maintain an organized
database of the les used for encoding and decoding.

8. Security: The app should ensure the security and protec on of text
messages using a strong encryp on algorithm and by
implemen ng secure key management.

9. Tes ng: The app should be thoroughly tested to ensure that it


meets the requirements and speci ca ons of the project.
The tes ng process should include func onal tes ng, performance
tes ng, and security tes ng.

10. Help and Support: The app should provide users with help
and support op ons, such as a user manual, FAQs, or a support
cket system.

48 | Page
ti
ti
ti
 
 
ti
ti
ti

ti
fi
 
ti
fi

 
 
 

fi
ti
ti
ti
 
ti

ti
 
fi
ti
Chapter 6

System Implementa on
Introduc on:

The goal of this System Implementa on document is to provide a detailed descrip on of the
development process for a text hiding project in images, audio, and video with cryptography
and decode and encode func onality. The project aims to implement cryptography
techniques and algorithms to hide text messages in media les and provide the ability to
encode and decode the hidden messages.

The project will be developed using Python various libraries for image, audio, and video
processing. Cryptography techniques such as LSB encoding will be used to encode and
decode hidden messages in the media les. The resul ng applica on will be user-friendly
and secure, with features such as password protec on and encryp on.

This document will provide an overview of the project's design and architecture, as well as
detailed descrip ons of the encoding and decoding func onality for images, audio, and
video les. It will also cover the tes ng and quality assurance processes, including
the tes ng methodology and tools used for tes ng.

Overall, this System Implementa on document will serve as a comprehensive guide for the
development and implementa on of the text hiding project in images, audio, and video with
cryptography and decode and encode func onality.

49 | Page
 
ti
fi
ti
 

ti
 
ti
ti
ti
ti
 
ti

fi
ti

ti
ti
 
ti
 
 
 

 
ti
ti
fi
 
 
ti
ti
 

 
ti
 
Code of Video_steg:

Figure 22:code 1 of Video_steg

This code is a Python script that imports the OpenCV library and several other
libraries to perform various tasks related to image and video processing.

The purpose of the func on "clearTemp" is to delete any temporary les or


folders that may have been created during the execu on of the script. It checks
for the existence of certain les and directories, and if they exist, it deletes
them.

Speci cally, it checks for the presence of an "audio.mp3" le, a "fps.txt" le,
and a "vid.txt" le, and deletes them if they exist. It also deletes any les or
folders in a "temp" directory.

The "os" and "shu l" libraries are used to interact with the le system and
delete les and folders. The "subprocess" library is used to execute external
commands, such as dele ng les or running other scripts.

The "img_steg" library is likely a custom library that contains func ons for
hiding data in images using steganography techniques.

50 | Page
fi

fi
 
fi
ti

ti
ti
 
fi

fi
 
ti

 
fi
 
fi
ti

fi
fi
fi
 

Overall, this code is a u lity func on that clears temporary les and folders to
ensure that the script can be run mul ple mes without interference from
previous runs.

Figure 23:code 2 of Video_steg

This code de nes a func on called "stegVideo" that takes ve parameters:


a window object, a progressbar object, a target le path, a cypher, and a
save loca on.

Inside the func on, the "FFPROBE_CMD" and "FFMPEG_CMD" variables


are set to the default values of " probe" and " mpeg", respec vely. If a
subdirectory called " mpeg/bin" exists in the current directory, the paths
to the " probe" and " mpeg" executables are updated to point to those
les.

51 | Page
fi

ff
ti
fi

ti

 
ff
ti
ff
ti
ti
ff
 
ti
 
ti
ff
fi
fi
fi
ti

The "clearTemp" func on is called to delete any temporary les or folders


that may exist from previous runs of the script.

The func on then uses the " probe" command to retrieve the frame rate
of the video le, and saves it to a le called "fps.txt". The frame rate is
extracted from the le and stored in a variable called "framerate".

The code then uses OpenCV to count the number of frames in the video
le by repeatedly calling the "read" method of a VideoCapture
object un l it returns False. The variable "totalNumberOfFrames" is
incremented for each successful read.

Overall, this code sets up the environment and gathers informa on about
the video le that will be used to perform steganography, which is the
hiding of data in the video le.

Figure 24:code 3 of Video_steg

52 | Page
fi
 
 
ti
ti
fi
fi

fi
 
ti
fi
ff
 

fi

 
 
fi
ti
 

This code con nues the "stegVideo" func on and is responsible for spli ng the
input text message into smaller chunks and hiding each chunk in a video frame
using steganography.

The variable "chrIndex" is ini alized to 0, which will be used to keep track of
the index of the current character in the input text message. The variable
"chrPerFrame" is calculated to determine the number of characters that will be
hidden in each frame. This is done by dividing the total length of the text
message by the number of frames in the video, and then rounding up to the
nearest integer using the "math.ceil" func on.

The code then opens the video le using OpenCV's VideoCapture object and
loops through all of its frames. For each frame, a chunk of the input text
message is extracted using the "chrIndex" variable and the "chrPerFrame"
variable. The "encodeImage" func on is then called to embed the chunk of text
message into the frame using steganography. The modi ed frame is saved as
a PNG image le in a temporary directory.

The "window" and "progressbar" objects are updated to show the progress of
the steganography process.

Finally, the progress bar value is updated based on the number of frames
processed so far, to give the user an indica on of how much of the video le
has been processed.

53 | Page
 
 
 
 
fi
ti
 

ti
 
fi
ti
 
ti
ti

ti

 
fi
 
tti
 
 
fi
Figure 25:code 4 of Video_steg

This code de nes two func ons: "stegVideo" and "destegVideo". This explana on will focus
on the la er func on.

The "destegVideo" func on takes three parameters: a window object, a progressbar object,
and a target le path.

The func on rst sets the "FFPROBE_CMD" and "FFMPEG_CMD" variables to the default
values of " probe" and " mpeg", respec vely. If a subdirectory called " mpeg/bin" exists in
the current directory, the paths to the " probe" and " mpeg" executables are updated to
point to those les.

The func on then opens a le called "vid.txt" and uses the " mpeg" command to extract the
frames from the input video le and save them as PNG image les in a temporary directory.
The output of the " mpeg" command is redirected to the "vid.txt" le. The total number of
frames is extracted from the "vid.txt" le and stored in the variable "totalframes".

The func on then proceeds to extract the hidden text from the steganographic frames. This
is done by looping through each frame and calling the "decodeImage" func on to extract
the hidden text from the frame. The extracted text is appended to the "hiddentext" string.

54 | Page
ti
ti
tt
ti
ff
fi
fi
fi
fi
 
ti

ff

ti
ff
fi
ti
fi
 
fi
ti
ff
 
ff
ff
fi
 
fi
ff
 
ti
ti

Figure 26:code 5 of Video_steg

This code is a con nua on of the "destegVideo" func on that extracts the hidden text from
the steganographic frames and returns the extracted text as a string.

The code rst nds the last occurrence of the string "frame=" in the "totalframes" variable
and adds 6 to the index to nd the star ng index of the frame count. It then nds the index
of the string "fps" to nd the end index of the frame count. The frame count is extracted as a
substring using the start and end indices, and converted to an integer. The value of
"totalframes" is updated to re ect the actual number of frames in the video.

The code then loops through each frame number and reads the corresponding PNG image
le from the temporary directory using OpenCV's "imread" func on. The "decodeImage"
func on is called to extract the hidden text from the image. If the extracted text is an empty
string, the loop is broken, as there is no more hidden text to extract. Otherwise,
the extracted text is appended to the "hiddentext" string.

The progress bar is updated to re ect the progress of the func on, and the temporary
les are deleted using the "clearTemp" func on.

Finally, the func on returns the "hiddentext" string, which contains all of the hidden text
extracted from the steganographic frames.

55 | Page
fi
fi
 
 
 
 
ti
fi
fi
ti
 
ti
 
 
fi
ti

fi
 
fl
 
 
fl
 
ti

ti
 

 
ti

ti
ti

fi
 
 

Code of Audio_steg:

Figure 27:Code 1 of Audio_steg

This code de nes a func on called "stegAudio" that performs steganography on an audio
le. The func on takes ve parameters: a window object, a progressbar object, a target le
path, a cypher (text to hide), and a save loca on. The code rst opens the target audio
le using the "wave" library and converts the audio data to an array of bytes. It then
combines the input text message with a padding of "#" characters to ll the remaining space
in the audio le. The text message is then converted to a list of bits, with each character
represented as an 8-bit binary string. The code then loops through each audio sample in the
byte array and replaces the least signi cant bit with the corresponding bit from the input
text message. This is done by masking out the least signi cant bit using the logical AND
operator and then adding the corresponding bit from the input text message using the
logical OR operator.

56 | Page
fi
fi
 
 
fi
ti
fi

fi

ti
fi
ti
fi
 
fi
fi
 
 
 
 
 
 
 
fi

Figure 28:Code 2 of Audio_steg

This code de nes a func on called "destegAudio" that extracts hidden text from an audio
le using steganography. The func on takes three parameters: a window object,
a progressbar object, and a target le path.

The func on rst opens the target audio le using the "wave" library and reads the audio
data as an array of bytes. It then loops through each byte in the array and extracts the least
signi cant bit of each byte using a bitwise AND opera on with the value 1 (i.e., "& 1"). The
resul ng bits are stored in a list called "extracted".

The extracted bits are then grouped into groups of 8 to reconstruct the original message.
This is done by conver ng the list of bits to a string and then spli ng the string into groups
of 8 using the "grouper" func on from the "itertools" library. Each group of 8 bits is then
converted to an ASCII character using the "chr" func on.

The resul ng string of ASCII characters is returned to the caller, and the progress bar value is
set to 100 to indicate that the func on has completed.

57 | Page
fi
 
 
fi
ti
ti
ti
fi
fi
 
ti

ti
 
ti
fi
ti
 
 
ti
fi

ti
ti

 
tti
 
 
 

Figure 29:Code 3 of Audio_steg

This code is a con nua on of the "destegAudio" func on that extracts the hidden text from
the audio le using steganography.

The code rst extracts the least signi cant bit of each byte in the audio data array using
a bitwise AND opera on with the value 1 (i.e., "& 1"). The resul ng bits are stored in a list
called "extracted".

The code then joins the extracted bits into a string by conver ng every 8 bits into an ASCII
character using the "chr" func on, then joining all the resul ng characters together. This
creates a binary string that represents the hidden text message.

The binary string is then split at the "###" marker to remove any padding characters that
were added during the steganography process.

58 | Page
 
 
 
fi
fi
ti

ti
 
ti

 
ti

fi

ti
ti
ti

ti
 
 
 
 
 

Code of Image_steg:

Figure 30:Code 1 of Image_steg

Figure 31:Code 2 of Image_steg


59 | Page

Figure 32:Code 3 of Image_steg

Figure 32: Code 4 of Image_steg

This code provides func ons for steganography on images, including


encoding and decoding messages within images, using the least
signi cant bit (LSB) technique. Steganography is the prac ce of hiding a
message within another message or medium, such as a digital image,
without changing the original message or medium's apparent
informa on.

The "messageToBinary" func on takes an input message and converts it


into binary format. If the input is a string, the func on converts each

60 | Page
fi
ti

ti
ti
 
 
ti
ti
 

character into its corresponding 8-bit ASCII binary representa on. If the
input is a byte array or numpy array, each element is converted into its
corresponding 8-bit binary representa on. If the input is an integer or
uint8, it is converted directly into its 8-bit binary representa on. The
func on returns the binary message.

The "encodeImage" func on takes an image and a secret message as


input and returns a steganographic image with the message encoded
within it. The func on rst calculates the maximum number of bytes that
can be encoded within the image, based on its dimensions. The maximum
number of bytes is calculated by mul plying the number of rows and
columns in the image by 3 (for the red, green, and blue color channels)
and dividing by 8 (since we are using 1 bit from each color channel to
encode the message). If the length of the secret message exceeds this
maximum, an error is raised. The secret message is padded with
a delimiter string ("#####") to indicate the end of the message.
Thefunc on then converts the secret message to binary format using the
"messageToBinary" func on and iterates through each pixel in the image.
For each pixel, the least signi cant bit of the red, green, and blue color
values are replaced with the corresponding bits from the binary secret
message. This is done using bitwise opera ons and the integer conversion
func on "int". The func on stops encoding data once the en re message
has been encoded.

The "decodeMsg" func on takes a binary data string as input, splits it into
groups of 8 bits, and converts each group into its corresponding ASCII
character. The func on stops decoding once the delimiter string ("#####")
is encountered.

The "decodeImage" func on takes a steganographic image as input and


extracts the hidden message from it. The func on iterates through each
pixel in the image and extracts the least signi cant bit of the red, green,
and blue color values. These bits are concatenated to form the binary
data string, which is then passed to the "decodeMsg" func on to extract
the hidden message. The func on stops decoding once the delimiter
string is encountered.

61 | Page
 
ti
ti
ti
 

ti

ti
 
 
 

ti
fi
ti
 
ti
ti
ti
 
fi
ti
 

ti
ti
ti
 
fi
 
ti
 
 
 
 
ti
ti
ti
 
ti
 
Overall, this code provides func ons for encoding and decoding messages
within images using steganography with the least signi cant bit
technique. The "messageToBinary" func on converts the input message
to binary format. The "encodeImage" func on encodes the message into
the image by replacing the least signi cant bit of each color channel. The
"decodeMsg" func on decodes binary data strings into ASCII text.
Finally,the "decodeImage" func on extracts the hidden message from the
steganographic image by extrac ng the least signi cant bit of each color
channel and decoding the resul ng binary data string.

It's worth no ng that the LSB technique is a simple and commonly


used steganographic technique, but it has its limita ons, such as the fact
that the encoded message can be easily destroyed by image processing
techniques or compression algorithms. Addi onally, this code assumes
that the image being used for steganography is a color image with three
color channels (red, green, and blue), which may not always be the case.

62 | Page
 
 
 
ti
ti
 
 
ti
ti
ti
ti
 
fi
ti
ti
 
ti
 
fi
ti

 
 
 
 
fi
 

Code of VideoSteg:

63 | Page

Figure 33: Code 1 of VideoSteg

64 | Page

Figure 34: Code 2 of VideoSteg

65 | Page

66 | Page

Figure 35: Code 3 of VideoSteg

67 | Page

Figure 36: Code 4 of VideoSteg

68 | Page

Figure 37: Code 5 of VideoSteg

69 | Page

Figure 38: Code 6 of VideoSteg

70 | Page

Figure 39: Code 7 of VideoSteg

71 | Page

Figure 40: Code 8 of VideoSteg

72 | Page

Figure 41: Code 9 of VideoSteg

73 | Page

74 | Page

Figure 42: Code 10 of VideoSteg

75 | Page

Figure 43: Code 11 of VideoSteg

76 | Page

Run of the Code:

Figure 44: Run of the Code1

77 | Page

Figure 45: Run of the Code2

78 | Page

Figure 46: Run of the Code3

79 | Page

Figure 47: Run of the Code4

80 | Page

Figure 48: Run of the Code5

81 | Page

Figure 49 : Run of the Code6

82 | Page

Figure 50: Run of the Code7

83 | Page

Figure 51: Run of the Code8

84 | Page

Chapter 7

Conclusions & Future Work

Conclusion
In conclusion, a desktop applica on for text hiding in images, audio, and video with
cryptography and decoding and encoding project is an important tool for protec ng
sensi ve informa on. The project involves developing an app that can encode text messages
into images, audio, and video les using cryptographic techniques like AES or RSA, and then
decode hidden text messages from those les.

The design phase of the project involves de ning the architecture, components, modules,
interfaces, and data for the system to meet the project's requirements. The app should have
a user-friendly interface that allows users to input text messages to be encoded and
decoded. The app should also provide op ons for selec ng the type of le to be used for
encoding and decoding, and secure key management to protect the encryp on keys used.

Developers can use various tools such as programming languages, IDEs, cryptography
libraries, mul media libraries, UI frameworks, version control systems, and tes ng
frameworks to develop the app. The app should be tested thoroughly to ensure that it
meets the requirements and speci ca ons of the project.

Overall, developing a desktop applica on for text hiding in images, audio, and video with
cryptography and decode and encode project is a challenging but important task that
requires careful planning and implementa on. By implemen ng strong encryp on and
secure key management, the app can provide an e ec ve way to protect sensi ve
informa on.

Future work:

1. Mul -Pla orm Support: The desktop applica on could be expanded to support
mul ple pla orms such as Windows, Mac, and Linux.

2. Cloud Integra on: The app could be integrated with cloud storage
services like Dropbox, Google Drive, or OneDrive to easily store and share encrypted
mul media les.

3. Advanced Cryptographic Algorithms: The app could be enhanced to support more


advanced cryptographic algorithms to provide even stronger encryp on and security.

85 | Page
ti
ti
ti
ti
ti
 
 
tf
tf
 
fi
 

ti

ti

 
ti
 
 
fi
 
fi
ti
ti
ti
 
 
 
fi

ti
 
ti
 
fi

ti
 

 
 
ti

ff
ti
ti
 
 
ti
 
 
fi
ti
 
 
 
ti
 

ti
ti
ti

4. Steganography Techniques: The app could be expanded to use steganography


techniques to hide text messages in mul media les, making it even more di cult
for unauthorized users to detect the hidden messages.

5. Mul -Language Support: The app could be enhanced to support mul ple languages,
allowing users from di erent regions to use the app in their preferred language.

6. Machine Learning Integra on: The app could be integrated with machine learning
algorithms to automa cally detect and hide text messages in mul media les,
making the process more e cient and accurate.

7. Mobile App Development: The desktop applica on could be expanded to develop


a mobile app for text hiding in images, audio, and video with cryptography and
decode and encode projects.

8. Social Media Integra on: The app could be integrated with social media pla orms
like Facebook, Twi er, or Instagram to allow users to share encrypted mul media
les with their friends and family.

86 | Page
fi
 
 
 
ti
 
 
 
tt
ti
ff
 
ti
 
ti
ffi

 
ti

ti
fi

 
ti
ti
ti
tf
ffi

fi
References:
1. Mul -Pla orm Support: The desktop applica on could be expanded to
support mul ple pla orms such as Windows, Mac, and Linux.

2. Cloud Integra on: The app could be integrated with cloud storage
services like Dropbox, Google Drive, or OneDrive to easily store and
share encrypted mul media les.

3. Advanced Cryptographic Algorithms: The app could be enhanced to


support more advanced cryptographic algorithms to provide even
stronger encryp on and security.

4. Steganography Techniques: The app could be expanded to use


steganography techniques to hide text messages in mul media les,
making it even more di cult for unauthorized users to detect the hidden
messages.

5. Mul -Language Support: The app could be enhanced to support mul ple
languages, allowing users from di erent regions to use the app in their
preferred language.

6. Machine Learning Integra on: The app could be integrated with machine
learning algorithms to automa cally detect and hide text messages in
mul media les, making the process more e cient and accurate.

7. Mobile App Development: The desktop applica on could be expanded to


develop a mobile app for text hiding in images, audio, and video with
cryptography and decode and encode project.

8. Social Media Integra on: The app could be integrated with social media
pla orms like Facebook, Twi er, or Instagram to allow users to share
encrypted mul media les with their friends and family.

87 | Page
tf
ti
ti
ti
tf

fi
ti
ti
ti

ti

tf
ti
ti
fi
ffi
ti
fi
tt
ti

ff
ffi
ti

ti

ti

fi
ti
9. Mul -Pla orm Support: The desktop applica on could be expanded to
support mul ple pla orms such as Windows, Mac, and Linux.

10.Cloud Integra on: The app could be integrated with cloud storage
services like Dropbox, Google Drive, or OneDrive to easily store and
share encrypted mul media les.

11.Advanced Cryptographic Algorithms: The app could be enhanced to


support more advanced cryptographic algorithms to provide even
stronger encryp on and security.

12.Steganography Techniques: The app could be expanded to use


steganography techniques to hide text messages in mul media les,
making it even more di cult for unauthorized users to detect the hidden
messages.

13.Mul -Language Support: The app could be enhanced to support mul ple
languages, allowing users from di erent regions to use the app in their
preferred language.

14.Machine Learning Integra on: The app could be integrated with machine
learning algorithms to automa cally detect and hide text messages in
mul media les, making the process more e cient and accurate.

15.Mobile App Development: The desktop applica on could be expanded to


develop a mobile app for text hiding in images, audio, and video with
cryptography and decode and encode project.

16.Social Media Integra on: The app could be integrated with social media
pla orms like Facebook, Twi er, or Instagram to allow users to share
encrypted mul media les with their friends and family.

88 | Page
tf
ti
ti
ti
tf

fi
ti
ti
ti
ti

tf
ti
ti
fi
ffi
ti
fi
tt
ti

ff
ffi
ti

ti

ti

fi
ti

You might also like