You are on page 1of 58

CHAPTER 1

INTRODUCTION

1.1 AIM OF THE PROJECT

The objective of the project is to hide a text file inside a video file
and send it to the receiver. This process is called steganography. DWT
compression and LSB methods are used to hide the text file inside the video.
The video file is splitted into frames. Then, the frames are compressed using
DWT compression technique. This is followed by hiding the data using the LSB
method. This is followed by decompressing the frame using inverse DWT. The
frames are rejoined to form the steganographed video. This video will be sent to
the receiver. There will be slight changes in the video. But, it can‟t be identified
by human eyes. The receiver will decompress the video and apply the DWT
compression technique. After that, LSB of each pixel of the steganographed
frame will be extracted. Every eight bits will form a character and this gives the
secret text. In this way, the original video and the secret text can be separately
viewed. Modern cover types can take many forms such as text documents,
audio tracks, digital images, and video streams. Extensive research has been
done on image steganography in the previous decade due to their popularity
on the internet. Nowadays, video files are drawing much more attention.
They are transmitted more and more frequent on internet websites such as
Facebook and YouTube imposing a larger practical significance on video
steganography

1
1.2 EXISTING SYSTEM

Over the past few decades, the art of secretly embedding and
communicating digital data has gained enormous attention because of the
technological development in both digital contents and communication. The
imperceptibility, hiding capacity, and robustness against attacks are three main
requirements that any video steganography method should take into
consideration. In this paper, a robust and secure video steganographic algorithm
in discrete wavelet transform (DWT) and discrete cosine transform (DCT)
domains based on the multiple objects tracking (MOT) algorithm and error
correcting codes is proposed. The secret message is preprocessed by applying
both Hamming and Bose, Chaudhuri, and Hocquenghem codes for encoding the
secret data.
First, motion-based MOT algorithm is implemented on host videos to
distinguish the regions of interest in the moving objects. Then, the data hiding
process is performed by concealing the secret message into the DWT and DCT
coefficients of all motion regions in the video depending on foreground masks.
Our experimental results illustrate that the suggested algorithm not only
improves the embedding capacity and imperceptibility. Unfortunately, most of
the existing algorithms do not discuss their computational complexity. Mainly,
there are four challenges: robustness, tamper resistance, hiding capacity and
perceptual transparency. A video file can simply be viewed as a sequence of
images, yielding video data hiding similar to image data hiding. However, there
are many aspects that differentiate between video steganography and image
steganography. As the video content is dynamic, lower chances of detection of
the hidden data compared with images. In addition to the image attacks that can
be applied on the separate frames of video; there are much more attacks for
videos such as lossy compression, change of frame rate, formats interchanging,
addition or deletion of frames during video processing.

2
1.3 PROPOSED SYSTEM
This paper will focus on hiding information in specific frames of the
by Discrete Wavelet Transform (DWT) Compression and Least Significant Bit
(LSB) substitution. The proposed method uses video based steganography
because of large size and memory requirements. The video is converted into
frames. Frames are splitted for every 0.05 secs. Then these frames are
compressed using DWT Haar compression technique. The frame that should be
used to hide the data is selected. Then the hiding of the text data in the selected
frame is done by LSB insertion technique. After data embedding, the frames are
decompressed using inverse DWT compression. The frames are rejoined to
form the steganographed video. This video will look alike the original video.
But few changes will be made. This can‟t be identified by human eyes. This will
be sent to the receiver.
The receiver will split the video into frames and then compress it
using DWT compression. Now the LSB of each pixel in the steganographed
frame will be extracted. Gather all the bits and make every eight bits as a
character. This will give the hidden data and the original video separately
Although substitution-based techniques are considered the simplest way for
information hiding, but their main disadvantage is the vulnerability to any cover
modification including compression, format change, etc. In addition, the
embedded data using these techniques can be easily destroyed by an attacker.
Transform domain techniques are more complex, but in return, they try to
enhance the robustness and the perceptual transparency of the produced stego-
objects. Basically, any transform-domain technique consists of at least the
following steps: First the cover is transformed into the frequency domain, then
secret message is embedded in some or all of the transformed coefficients, and
finally the modified coefficients are transformed back to the original form of the
cover. Examples of these transforms include: Discrete Fourier Transform
(DFT),
3
1.4 STEGANOGRAPHY CONCEPTS
Steganography is an art of convert communication, which offers secrete
and secure way of communication. It has many application areas such as audio-
video synchronization, copyright control, TV broadcasting, in defense forces
and digital watermarking etc. Broad band internet connections almost an
errorless transmission of data helps people to distribute large multimedia files
and makes identical data copies of them. Sending sensitive messages and files
over the internet are transmitted in an unsecured form but everyone has got
something to keep in secret. The aim of steganography is to hide the secret data
inside the cover medium without changing the overall quality of cover medium.
In steganography actual information is not maintained in its original
format but is converted in such a way that it can be hidden inside multimedia
file e.g. image, video, audio. The current industries mainly demands for digital
watermarking and finger printing of audio and video steganography. The
steganography remains intact under transmission and transformation allowing
us to protect our secret data. For this the image is converted into bit stream and
this bit stream is then embedded in the changing frame. The cybercrimes are
also reporting rapidly nowadays hence the steganographic methods should be
that much effective and secure so that crimes can be minimized for that
cryptography should be combined with steganography for the security of the
data come information.
Video based steganography can be done in two ways: either frame to
frame data storing or converting frame into frequency domain and then store the
result. First way is something like spatial domain and the second way is like
frequency domain. Whichever method is utilized for steganography, the video
steganography can be also classified into two types: lossless and lossy
steganography. In lossless steganography the hidden information and original
video file both can be retrieved without any error or modification, while in lossy
4
steganography the hidden information is retrieved correctly while the original
video will have some errors.
The lossless steganography requires storing hidden information in
specification location and will requires some time to run the algorithm in order
to find the specific location where hidden information can be get stored. Thus,
in real time application, the lossless algorithm is becoming tougher to
implement, and that depends on the system specifications. The lossy
steganography requires storing data at some LSB location or at specific pixel
locations. This is easy to implement and it can be apply in real time application
with any normal system specifications. The LSB (Least Significant Bit) is used
here to hide the data. The first frame is selected as index frame and it contains
the information regarding where the information is stored, in which form
information is getting stored, what is file type of the information, etc
information are stored in the index frame. If the first frame is received properly
and if the receiver recognized the information then it is very easy to get hidden
information from steganography video file.

USES OF STEGANOGRAPHY
Steganography can be a solution which makes it possible to send news
and information without being censored and without their fear of the messages
being intercepted and tracked back to us. It is also possible to simply use
Steganography to store information on a location. For example, several
information sources like our private banking information and some military
secrets can be stored in a cover source. Steganography can also be used to
implement watermarking. There are several steganographic techniques that are
being used to store watermarks in data. The main difference is that the purpose
of steganography is hiding information and watermarking is merely extending
the cover source with extra information. Since people will not accept noticeable
changes in images, audio or video files because of a watermark, steganographic
5
methods can be used to hide this. E-commerce allows for an interesting use of
Steganography. In current e-commerce transactions, most users are protected by
a username and password, with no real method of verifying that the user is the
actual card holder.
Biometric finger print scanning and images via steganography allow for a
very secure option to open e-commerce transaction verification. Paired with
existing communication methods, steganography be used to carry out hidden
exchanges.

1.5 TYPES OF STEGANOGRAPHY


Depending on the cover media there are different types of steganography
techniques.
i) Image steganography:
Taking image as a cover media in steganography is known as image
steganography. It uses pixel intensities to hide information.
ii) Video steganography:
It takes video as a cover media. Different video format such as AVI,
MPEG, MP4 etc. are used to hide information.
iii) Network steganography:
Network protocol is used as a cover media, is known as network
steganography. Protocols such as IP, TCP, UDP etc... can use.
iv) Text steganography:
Different techniques such as capital inter-word spacing, inter-paragraph
spacing, white spaces etc. are used to hide information in a text steganography.
v) Audio steganography:
Audio steganography uses audio as a cover video. Phase coding, echo
hiding, spread spectrum technique etc. are techniques used to hide information
in audio signal.

6
The objective of steganography is to hide a secret message within a
cover-media in such a way that others cannot discern the presence of the hidden
message. Technically in simple words “steganography means hiding one piece
of data within another”. Modern steganography uses the opportunity of hiding
information into digital multimedia files and also at the network packet level.

K K

C C

S
M Fe Fe M
Y

Fig 1.1 Encryption process

Hiding information into a media requires following elements


 The cover media(C) that will hold the hidden data
 The secret message (M), may be plain text, cipher text or any type of data
 The stego function (Fe) and its inverse (Fe-1)
 An optional stego-key (K) or password may be used to hide and unhide
the message.
The stego function operates over cover media and the message (to be hidden)
along with a stego-key (optionally) to produce a stego media (S).

7
CHAPTER 2
LITERATURE SURVEY

2.1 TITLE: ACCURATE OVERLAY TEXT EXTRACTION FOR


DIGITAL VIDEO ANALYSIS
This report describes a system to detect and extract the overlay texts in
digital video. Different from the previous approaches, the system used a
multiple hypothesis testing approach: The region-of-interests (ROI) probably
containing the overlay texts are decomposed into several hypothetical binary
images using color space partitioning. A grouping algorithm then is conducted
to group the identified character blocks into text lines in each binary image. If
the layout of the grouped text lines conforms to the verification rules, the
bounding boxes of these grouped blocks are output as the detected text regions.
Finally, motion verification is used to reduce false alarms. In order to achieve
real time speed, ROI localization is realized using compressed domain features
including DCT coefficients and motion vectors in MPEG videos. The proposed
method showed impressive results with average recall 96.9% and precision
71.6% in testing on digital News videos.
Videotext detection and recognition has been identified as one of the key
components for the video retrieval and analysis system. Videotext detection and
recognition can be used in many applications, such as semantic video indexing,
summarization, video surveillance and security, multilingual video information
access, etc. Videotext can be classified into two broad categories: Graphic text
and scene text. Graphic text or text overlay is the videotext added mechanically
by video editors, examples include the news/sports video caption, movie credits
etc. Scene texts are the videotexts embedded in the real-world objects or scenes.

8
2.2 TITLE: RANDOM PIXEL EMBEDDING FOR HIDING SECRET
TEXT OVER VIDEO FILE
Data hiding can be done using steganography technique. The secret
data is embedded in a carrier file such as video in such an invisible manner.
Video format is chosen due to its capacity to store large data within frames.
Moreover, because these frames are displayed rapidly, any tiny modification as
a result of data hiding process is hardly observed by human eye. This study
employed a Random Number Generator function into a method called Random
Pixel Embedding. This was implemented by developing an application to hide
text data in a video file as container. Quality testing for insertion phase result
was done by measuring Signal to Noise Ratio which yielded a value of 99%.
Meanwhile, testing for extraction phase result was done by measuring Character
Error Rate which yielded value of 0.06. Those tests proved that this research
produced a steganography application for hiding text message over video file
which is ready to use.
In this study, randomize the locations of data hiding is applied to improve
data security in steganography. The aims of this proposed method is to make
steganalysis difficult to locate the true pixels carrying the bits of hidden data.
The experiment works are tested objectively by measuring the Signal to Noise
Ratio and testing using Character Error Rate.

9
2.3 TITLE: DATA HIDING IN VIDEO STREAM BY TEXT
SUBSTITUTION
Our proposed approach is data hiding in video stream by text
substitution, it is divided into two parts data embedding and data extraction. To
hide text data file inside frames of video we propose higher least significant bit
algorithm. And to provide more security to the stego video proposed pixel
swapping encryption technique, which is use to encrypt stego video. For data
hiding inside frame, first divide single frame into four carrier images and hide
data into five LSB bits of each pixel of a carrier image, which satisfy
quantization error condition and leave other pixel as it is. Key generated while
hiding data is store into last pixel of carrier image. Data hiding key and
encryption key are used to preserve privacy. Our proposed approach tries to
improve payload capacity and provide more security to the stego video.
Information security is becoming important concern in today‟s world
because of widespread use of internet as a communication channel. We
generally need to communicate data in the form of text, image, audio or video.
This information is mostly communicated through the network. But in a
network, data is not secure, it can get eavesdrop. To protect transfer of sensitive
data in network from a third person steganography techniques can be used.
There are different steganography techniques such as image, audio, video, text,
network steganography. Steganography means hiding secret data inside a cover
medium such that no one other than the sender and intended recipient suspect
the existence of secret data. Our paper, Data Hiding in Video Stream by text
Substitution concerned with video steganography. Data embedding in videos
seems very similar to images. However, there are many differences between
data hiding in images and videos, where the first important difference is the size
of the host media.

10
2.4 TITLE: HIDING TEXT IN VIDEO USING STEGANOGRAPHIC
TECHNIQUE – A REVIEW
This paper presents the hiding of text in video using Haar wavelet
transform in particular frame and BCH codes. Haar wavelet transform is applied
to get the low frequency sub-band in an image to hide data. The frequency sub-
bands are (LL, LH, HL and HH). BCH codes are used to encrypt the data. The
work of various researchers is discussed about video steganography and their
techniques for embedding and extraction of data. With the advancement of
technology and multimedia information, Videos and digital images are
increasing very quickly. Steganography is hiding private or secret data within a
carrier in invisible manner. A lot of information can be stored in video files. It
contains number of frames played over a period of time. .Information can be
stored in any or number of frames. Moreover, Attacker or Human eye cannot
detect the presence of message in video because video frame is only visible for
a fraction of time.
Video Steganography is a very important task in real life where the users
want to keep data secret. Data is the heart of computer communication and over
the years, different methods have been proposed and created to accomplish the
goal of using steganography to hide data. The problem occurs when Traditional
Text and Image Based Steganography techniques is not plentiful .They are able
to carry only small files. So there is a problem, how to get much enough files to
hide our message. This becomes a very tedious task for carry large amount of
data. Here, comes the need of Video Steganography. The use of video as a
carrier cover for the secure message is overcame the capacity problem.
Information can be hidden in any frame of video. Video has a large Capacity to
store information. Added small enhancement to the security aspects. The
integration of Steganography and cryptography techniques provided powerful
systems for sharing secure messages.

11
2.5 TITLE: A NOVEL DATA EMBEDDING TECHNIQUE FOR HIDING
TEXT IN VIDEO FILE USING STEGANOGRAPHY
Today‟s internet applications require data to be transmitted in a secure
manner. Data transmission in public communication system is not secure
because of interception and improper manipulation by eavesdropper. So the
solution for this problem is Steganography. That has to do with secure data
transmission between a sender and a receiver; implementing Steganography is
the best way. Steganography is hiding private or secret data within a carrier in
an invisible manner, in such a way that no one, apart from the sender and intend
recipient. This paper focus on hiding text in a computer video file and to
retrieve the hidden information. Generally Video files are collection of both
images and audio. Hiding large amount of data in video is possible compare
with others. Video Steganography deals with hiding secret data or information
within a video. This can be done by using LSB technique.
The proposed system is depends on video Steganography for hiding
secret message into the video file, retrieving the hidden secret message from the
video using Least Significant Bit(LSB) mechanism. By using Data Encryption
Standard (DES) algorithm at the sender side the secret text message is
encrypted. The key which is used in DES is shared by both sender and receiver.
The encrypted message is passed to embedding phase. In embedding phase the
encrypted message will embedded into the cover file (video file) resulting in a
steganographed video file. The embedded steganographed video file contains
the encrypted text message which is extracted at the receiver side. At the
receiver side Stego‟d video file is passed to the de embedding phase. In
extraction process encrypted text will be extracted from embedded video file
and encrypted text is decrypted using decryption module.

12
2.6 TITLE: A COMPARATIVE STUDY ON VIDEO STEGANOGRAPHY
IN SPATIAL AND IWT DOMAIN
Steganography is a technique for embedding digital information inside
another digital medium such as text, images, audio signals or video signals,
without revealing its presence in the medium. In video steganography, a video
file will be used as a cover medium within which any secret message can be
embedded. In steganography, the secret information can be hidden either
directly by altering the pixel values of the images in the spatial domain or in the
frequency components of the images after transforming the images into
frequency domain by using transformation algorithms such as DCT (Discrete
Cosine Transform), DWT(Discrete Wavelet Transform) and IW(Integer
Wavelet Transform).. In this paper, secret data are embedded inside a video file
using both the methods, spatial and frequency, and the outcomes are analyzed
and compared. Results are compared based on PSNR (Peak Signal to Noise
Ratio), MSE (Mean Square Error), BER (Bit Error Rate) and Standard
Deviation. The findings of this study are given as suggestions for further
enhancement.
Spatial domain techniques are very simple and easy to implement. More
amount of information can be hidden without much difficulty. LSB (Least
Significant Bit) substitution is the most commonly used method for hiding data
in the spatial domain. In this method, few least significant bits of the pixels of
the cover image are replaced by the bits of secret data. Replacing few least
significant bits of the pixels does not create significant visual change in the
image. Since the change is very less it is invisible to the human visual system.
At the same time if a hacker suspects the presence of the message, then he can
trace the message without much

13
CHAPTER 3
SYSTEM SPECIFICATION

3.1 HARDWARE REQUIREMENTS


• Processor : Dual core processor 2.6.0 GHZ
• RAM : 1GB
• Hard disk : 160 GB
• Compact Disk : 650 Mb
• Keyboard : Standard keyboard
• Monitor : 15 inch color monitor

3.2 SOFTWARE REQUIREMENTS


• Operating System : Windows 7
• Language : .NET
• IDE : Microsoft Visual Studio 2010
• Back End : SQL Server

3.3 SOFTWARE DESCRIPTIONS


3.3.1 FRONT END - .NET
.NET Framework

The .NET Framework (pronounced dot net) is a software framework


developed by Microsoft that runs primarily on Microsoft Windows. It includes a
large library and provides language interoperability (each language can use code
written in other languages) across several programming languages. Programs
written for the .NET Framework execute in a software environment (as
contrasted to hardware environment), known as the Common Language

14
Runtime (CLR), an application virtual machine that provides services such as
security, memory management, and exception handling. The class library and
the CLR together constitute the .NET Framework.

The .NET Framework's Base Class Library provides user interface, data
access, database connectivity, cryptography, web application development,
numeric algorithms, and network communications. Programmers produce
software by combining their own source code with the .NET Framework and
other libraries. The .NET Framework is intended to be used by most new
applications created for the Windows platform. Microsoft also produces an
integrated development environment largely for .NET software called Visual
Studio

Design Features

Interoperability

Because computer systems commonly require interaction between newer


and older applications, the .NET Framework provides means to access
functionality implemented in newer and older programs that execute outside the
.NET environment. Access to COM components is provided in the System.
Runtime Interop Services and System. Enterprise Services namespaces of the
framework; access to other functionality is achieved using the P/Invoke feature.

Common Language Runtime engine

The Common Language Runtime (CLR) serves as the execution engine


of the .NET Framework. All .NET programs execute under the supervision of
the CLR, guaranteeing certain properties and behaviors in the areas of memory
management, security, and exception handling.

15
Language independence

The .NET Framework introduces a Common Type System, or CTS. The


CTS specification defines all possible data types and programming constructs
supported by the CLR and how they may or may not interact with each other
conforming to the Common Language Infrastructure (CLI) specification.
Because of this feature, the .NET Framework supports the exchange of types
and object instances between libraries and applications written using any
conforming .NET language.

Base Class Library

The Base Class Library (BCL), part of the Framework Class Library
(FCL), is a library of functionality available to all languages using the .NET
Framework. The BCL provides classes that encapsulate a number of common
functions, including file reading and writing, graphic rendering, database
interaction, XML document manipulation, and so on. It consists of classes,
interfaces of reusable types that integrate with CLR (Common Language
Runtime).

Simplified deployment

The .NET Framework includes design features and tools which help
manage the installation of computer software to ensure it does not interfere with
previously installed software, and it conforms to security requirements.

Security

The design addresses some of the vulnerabilities, such as buffer


overflows, which have been exploited by malicious software. Additionally,
.NET provides a common security model for all applications.

16
Portability

While Microsoft has never implemented the full framework on any


system except Microsoft Windows, it has engineered the framework to be
platform-agnostic, and cross-platform implementations are available for other
operating systems (see Silverlight and the Alternative implementations section
below). Microsoft submitted the specifications for the Common Language
Infrastructure (which includes the core class libraries, Common Type System,
and the Common Intermediate Language), the C# language, and the C++/CLI
language to both ECMA and the ISO, making them available as official
standards. This makes it possible for third parties to create compatible
implementations of the framework and its languages on other platforms.

Common Language Infrastructure (CLI)

The purpose of the Common Language Infrastructure (CLI) is to provide


a language-neutral platform for application development and execution,
including functions for Exception handling, Garbage Collection, security, and
interoperability. By implementing the core aspects of the .NET Framework
within the scope of the CL, this functionality will not be tied to a single
language but will be available across the many languages supported by the
framework. Microsoft's implementation of the CLI is called the Common
Language Runtime, or CLR.

The CIL code is housed in CLI assemblies. As mandated by the


specification, assemblies are stored in the Portable Executable (PE) format,
common on the Windows platform for all DLL and EXE files. The assembly
consists of one or more files, one of which must contain the manifest, which has
the metadata for the assembly

17
3.3.2 BACK END – SQL SERVER
SQL Server
It is a software developed by Microsoft, which is implemented from the
specification of RDBMS. It is also an ORDBMS. It is platform dependent. It is
both GUI and command based software. It supports SQL (SEQUEL) language
which is an IBM product, non-procedural, common database and case
insensitive language.

Usage of SQL Server


To create databases. To maintain databases. To analyze the data through
SQL Server Analysis Services (SSAS). To generate reports through SQL Server
Reporting Services (SSRS). To carry out ETL operations through SQL Server
Integration Services (SSIS).

SQL Server Components

SQL Server works in client-server architecture, hence it supports two types of


components: (a) Workstation and (b) Server.
 Workstation components are installed in every device/SQL Server
operator‟s machine. These are just interfaces to interact with Server
components. Example: SSMS, SSCM, Profiler, BIDS, SQLEM etc.
 Server components are installed in centralized server. These are
services. Example: SQL Server, SQL Server Agent, SSIS, SSAS, SSRS,
SQL browser, SQL Server full text search etc.

SQL Editions
SQL Server is available in various editions. This chapter lists the multiple
editions with its features.
 Enterprise: This is the top-end edition with a full feature set.

18
 Standard: This has less features than Enterprise, when there is no
requirement of advanced features.
 Workgroup: This is suitable for remote offices of a larger company.

 Web: This is designed for web applications.


 Developer: This is similar to Enterprise, but licensed to only one user for
development, testing and demo. It can be easily upgraded to Enterprise
without reinstallation.
 Express: This is free entry level database. It can utilize only 1 CPU and 1
GB memory, the maximum size of the database is 10 GB.
 Compact: This is free embedded database for mobile application
development. The maximum size of the database is 4 GB.
 Datacenter: The major change in new SQL Server 2008 R2 is Datacenter
Edition. The Datacenter edition has no memory limitation and offers
support for more than 25 instances.
 Business Intelligence: Business Intelligence Edition is a new
introduction in SQL Server 2012. This edition includes all the features in
the Standard edition and support for advanced BI features such as Power
View and PowerPivot, but it lacks support for advanced availability
features like AlwaysOn Availability Groups and other online operations.
 Enterprise Evaluation: The SQL Server Evaluation Edition is a great
way to get a fully functional and free instance of SQL Server for learning
and developing solutions. This edition has a built-in expiry of 6 months
from the time that you install it.

SQL Architecture

We have classified the architecture of SQL Server into the following parts for
easy understanding:

19
General Architecture
Client: Where the request initiated.
Query: SQL query which is high level language.
Logical Units: Keywords, expressions and operators, etc.
N/W Packets: Network related code.
Protocols: In SQL Server we have 4 protocols.
 Shared memory (for local connections and troubleshooting purpose).
 Named pipes (for connections which are in LAN connectivity).
 TCP/IP (for connections which are in WAN connectivity).
 VIA-Virtual Interface Adapter (requires special hardware to set up by
vendor and also deprecated from SQL 2012 version).
Server: Where SQL Services got installed and databases reside.
Relational Engine: This is where real execution will be done. It contains Query
parser, Query optimizer and Query executor.
Query Parser (Command Parser) and Compiler (Translator): This will
check syntax of the query and it will convert the query to machine language.
Query Optimizer: It will prepare the execution plan as output by taking query,
statistics and Algebrizer tree as input.
Execution Plan: It is like a roadmap, which contains the order of all the steps to
be performed as part of the query execution.
Query Executor: This is where the query will be executed step by step with the
help of execution plan and also the storage engine will be contacted.

20
CHAPTER 4
SYSTEM DESIGN
4.1 ARCHITECTURE DIAGRAM
A system architecture or systems architecture is the conceptual model that
defines the structure, behavior, and more views of a system. An architecture
description is a formal description and representation of a system, organized in
a way that supports reasoning about the structures and behaviors of the system.
System architecture can comprise system components, the externally visible
properties of those components, the relationships (e.g. the behavior) between
them. It can provide a plan from which products can be procured, and systems
developed, that will work together to implement the overall system. There have
been efforts to formalize languages to describe system architecture, collectively
these are called architecture description languages (ADLs).

Various organizations define systems architecture in different ways,


including:

 An allocated arrangement of physical elements which provides the design


solution for a consumer product or life-cycle process intended to satisfy
the requirements of the functional architecture and the requirements
baseline.
 Architecture comprises the most important, pervasive, top-level, strategic
inventions, decisions, and their associated rationales about the overall
structure (i.e., essential elements and their relationships) and associated
characteristics and behavior.
 If documented, it may include information such as a detailed inventory of
current hardware, software and networking capabilities; a description of

21
long-range plans and priorities for future purchases, and a plan for
upgrading and/or replacing dated equipment and software.

Fig 4.1 Text Embedding and Extracting


22
4.2 USE CASE DIAGRAM

Use case diagrams are usually referred to as behavior diagrams used to


describe a set of actions (use cases) that some system or systems (subject)
should or can perform in collaboration with one or more external users of the
system (actors). In software and systems engineering, a use case is a list of
actions or event steps typically defining the interactions between a role (known
in the Unified Modeling Language as an actor) and a system to achieve a goal.
The actor can be a human or other external system. An actor in the Unified
Modeling Language (UML) "specifies a role played by a user or any other
system that interacts with the subject." "An Actor models a type of role played
by an entity that interacts with the subject (e.g., by exchanging signals and
data), but which is external to the subject." UML Use Case Include. Use
case include is a directed relationship between two use cases which is used to
show that behavior of the included use case (the addition) is inserted into the
behavior of the including (the base) use case.

In this use case diagram, there were two actors namely Sender and
Receiver. The sender will do the actions like upload video, convert into frames,
he will do DWT compression to hide the data into the frame selected from the
video and then rejoins the frame. The receiver will receive the video, convert it
into frames, do the same operation as the sender, use the LSB coding algorithm
to extract the text from the steganographed video.

23
Fig 4.2 Use case diagram for Video steganography

24
4.3 SEQUENCE DIAGRAM

Sequence diagrams are sometimes called event diagrams or event


scenarios. A sequence diagram shows, as parallel vertical lines (lifelines),
different processes or objects that live simultaneously, and, as horizontal
arrows, the messages exchanged between them, in the order in which they
occur. A sequence diagram is an interaction diagram that shows how objects
operate with one another and in what order. It is a construct of a message
sequence chart. A sequence diagram shows object interactions arranged in time
sequence. It depicts the objects and classes involved in the scenario and the
sequence of messages exchanged between the objects needed to carry out the
functionality of the scenario. Sequence diagrams are typically associated with
use case realizations in the Logical View of the system under development.
Sequence diagrams are sometimes called event diagrams or event scenarios.

Objects as well as classes can be targets on a sequence diagram, which


means that messages can be sent to them. A target is displayed as a rectangle
with some text in it. Below the target, its lifeline extends for as long as the
target exists. The lifeline is displayed as a vertical dashed line.

25
Fig 4.3 Sequence diagram

Explains the sequence of activities were done in the software

26
4.4 COLLOBORATION DIAGRAM

Fig 4.4 Collaboration Diagram

Like sequence diagrams, collaboration diagrams are also interaction diagrams.


Collaboration diagrams convey the same information as sequence diagrams, but
focus on object roles instead of the times that messages are sent.
In a sequence diagram, object roles are the vertices and messages are the
connecting links. In a collaboration diagram, as follows, the object-role
rectangles are labeled with either class or object names (or both).

27
4.5 ACTIVITY DIAGRAM
Activity diagram is another important diagram in UML to describe the
dynamic aspects of the system. Activity diagram is basically a flowchart to
represent the flow from one activity to another activity. The activity can be
described as an operation of the system. The control flow is drawn from one
operation to another. An activity diagram visually presents a series of actions or
flow of control in a system similar to a flowchart or a data
flow diagram. Activity diagrams are often used in business process modeling.
They can also describe the steps in a use case diagram. Activities modeled can
be sequential and concurrent. Activity diagram is another important diagram in
UML to describe the dynamic aspects of the system. Activity diagram is
basically a flowchart to represent the flow from one activity to another activity.
The activity can be described as an operation of the system. The control flow is
drawn from one operation to another.

The basic purposes of activity diagrams is similar to other four diagrams.


It captures the dynamic behavior of the system. Other four diagrams are used to
show the message flow from one object to another but activity diagram is used
to show message flow from one activity to another.Activity is a particular
operation of the system. Activity diagrams are not only used for visualizing the
dynamic nature of a system, but they are also used to construct the executable
system by using forward and reverse engineering techniques. The only missing
thing in the activity diagram is the message part.

28
Fig 4.5 Activity Diagram

29
CHAPTER 5
MODULE DESCRIPTION

5.1 MODULES
• Video Upload & Frame Split
• DWT Compression
• Data Embedding
• Inverse DWT Compression
• Data Extraction

5.2VIDEO UPLOAD & FRAME SPLIT


The video that has to be steganographed should be uploaded. The video
can be any one of the supporting formats. The various supporting formats are
.flv, .wmv, .avi etc… The uploaded video will be converted into frames. The
frames will be generated for every 0.5 secs.

5.2.1 DWT COMPRESSION

Fig 5.1 DWT compression


30
Apply Haar two-dimensional (2D) DWT to the converted frames and
compute approximated coefficients and detailed coefficients. These coefficients
are places in sub matrices named as LL, LH, HL & HH. These are used in high
pass and low pass filters.

5.3 DATA EMBEDDING


Least Significant bit algorithm is used for data embedding. In this
technique, a cover frame is selected to embed the text data. The least significant
bit (ie) the 8th bit of the binary image is modified to form the secret message.
After embedding, the frames are decompressed. Then they are rejoined and the
video becomes a steganographed video. This video is sent to the receiver.
The video is firstly split into many frames as the user required or to
a considerable amount of frames. Now the user have to select any one of the
frame from the separated frames from the video where the text file is going to
be hidden. After selecting the video frame ,the DWT compression algorithm
will be used to inset the text data or a document any form as the user had given
to hide inside the video that he had selected. After embedding the data into a
single frame of the whole video , now the frames were merged to form a stego
video inside which the text data was inserted in one of the frame. The stego
video will be formed by using the process of IDWT .This stego video will be
sent to the receiver at the other end .This stego video can be playable like other
videos and it will have the same format as the other videos has. The text
document inside the video can‟t be identified or found by any means of
intrusion or attack.

5.4 DATA EXTRACTION


At the receiver end, the steganographed video will be splitted into frames.
These frames are compressed using DWT technique. Calculate the LSB for each
pixel of the steganographed frame. Retrieve the bits and convert every eight bits

31
into a byte to form a character. These characters form the secret text data. The
secret data and the original video can be viewed separately.
The receiver on receiving the stego video sent by the sender using
the DWT steganographic process will also separate the video into number of
frames. Then he will apply the same procedure done on the sender side in the
reverse order in order to extract the required data. The extraction process will
involves a key which will be sent to the receiver at the time of the embedding of
the text into the frame selected from the video. This key will be used to extract
the text from the frame in which the data is hidden. After the key applying
process, the receiver will get both the data and video in separate. The text may
be any size .Irrespective of the size, it can be easily embedded into the frame of
the video.

5.5 ALGORITHM DETAILS


2D DWT HAAR ALGORITHM
The two-dimensional DWT is of particular interest for image processing
and computer vision applications. It is a relatively straightforward extension of
the one-dimensional DWT. Two sets of operations is a transformed image with
four distinct bands: (1) LL, (2) LH, (3) HL and (4) HH. Here, L stands for low-
pass filtering, and H stands for high-pass filtering. The LL band corresponds
roughly to a down-sampled (by a factor of two) version of the original image.
The LH band tends to preserve localized horizontal features, while the HL band
tends to preserve localized vertical features in the original image. Finally, the
HH band tends to isolate localized high-frequency point features in the image.
Two-dimensional DWT extracts only the highest frequencies in the image.
Additional levels of decomposition can extract lower frequency features in the
image. These additional levels are applied only to the LL band of the
transformed image at the previous level.

32
LSB SUBSTITUTION ALGORITHM
In digital steganography, sensitive messages may be concealed by
manipulating and storing information in the least significant bits of an image or
a sound file. In the context of an image, if a user were to manipulate the last two
bits of a color in a pixel, the value of the color would change at most +/- 3 value
places, which is likely to be indistinguishable by the human eye. The user may
later recover this information by extracting the least significant bits of the
manipulated pixels to recover the original message. The steps used here were
given as following,
1. Input a video and convert into a 24-bit color image having JPG format.
2. Divide the columns of the input image in to sets
3. Number the pixels of a set in the RGB plane
4. Now input the secret message and key which is used to hide the message in
the input image.
5. If the secret message has the first character „A‟ and key used to hide this
message has the first value „4‟ then this character is hidden.
6. Similarly next character of the message is hided with the next value of the
key field. Key values are chosen in the circular way to hide the complete
message.

33
CHAPTER 6

SYSTEM TESTING

6.1 TYPES OF TESTING

6.1.1 UNIT TESTING

Unit testing is the testing of an individual unit or group of related units. It


falls under the class of white box testing. It is often done by the programmer to
test that the unit he/she has implemented is producing expected output against
given input.

6.1.2 INTEGRATION TESTING

Integration testing is testing in which a group of components are


combined to produce output. Also, the interaction between software and
hardware is tested in integration testing if software and hardware components
have any relation. It may fall under both white box testing and black box
testing.

6.1.3 FUNCTIONAL TESTING

Functional testing is the testing to ensure that the specified functionality


required in the system requirements works. It falls under the class of black box
testing.

6.1.4 SYSTEM TESTING

System testing is the testing to ensure that by putting the software in


different environments (e.g., Operating Systems) it still works. System testing is
done with full system implementation and environment. It falls under the class
of black box testing.
34
6.1.5 WHITE BOX TESTING

White box testing is a testing technique that takes into account the
internal mechanism of a system. It is also called structural testing and glass box
testing. White box testing is used for verification.

6.1.6 BLACK BOX TESTING

Black box testing is a testing technique that ignores the internal


mechanism of the system and focuses on the output generated against any input
and execution of the system. It is also called functional testing. Black box
testing is used for validation.

6.1.7 ACCEPTANCE TESTING

Acceptance testing is often done by the customer to ensure that the


delivered product meets the requirements and works as the customer expected.
It falls under the class of black box testing.

6.2 TEST RESULTS

All the above testing types are performed and no defect is found.

35
CHAPTER 7
CONCLUSION

There are various kinds of steganography techniques available to hide


data in video. In our approach, DWT Haar compression along with LSB
substitution is used. The above mentioned approach is used to hide message into
a video file which provides a robust and secure way of data transmission. The
proposed embedded video steganography has many advantages like user
friendliness, simple and successful process of embedding secret message with
more security.
In Spatial domain methods one can get high payload capacity. The edge
detection techniques which are used in the current methods do not recognizes
the shades of the edge region, which can also be considered to embed the extra
bits. The number of edge pixels can be increased by identifying the edges and
shades of edges. The Transform domain methods are highly robust. They embed
the message bits in the regions which are highly insensitive to compression,
filtration or transformation. But their payload capacity is low. Also the visual
qualities of the Stego-image are poor. Spatial domain is better compared to
transform domain.

36
CHAPTER 8
FUTURE ENHANCEMENT

In future, this method can be tested with other wavelet transform


techniques with various image quality measurements and also implemented for
videos of more length in less amount of time.
The following section describe areas for research which were offshoots of, or
tangential to, our main objectives.
1. Detecting Steganography in Image Files Can steganography be
detected in images files? This is difficult question. It may be possible to detect a
simple Stegnographic technique by simple analyzing the low order bits of the
image bytes.
2. How widespread is the Use of Steganography? If a technique or set
of techniques could be devised to detect steganography, it would be interesting
to conduct a survey of images available on the internet to determine if
steganography is used, by whom and for what purposes. Steganographic
applications are available on the Internet, but it is not known if they are being
used.
3. Steganography on the World Wide Web The world wide web(www)
makes extensive use of inline images.There are literally millions of images on
various web pages worldwide. It may be possible to develop an Jain University
2015Page 162 application to serve as a web browser to retrieve data embedded
in web page images. This “ stego-web” could operate on top of the existing
WWW and be a means of covertly disseminating information

37
CHAPTER – 9

APPENDICES

9.1.SOURCE CODE

TEXT HIDING MODULE:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using AForge.Video.FFMPEG;
using System.Data.SqlClient;
using System.Net;
using System.IO;
using System.Net.Mail;
namespace Video_Inpainting_With_Short_Term_Windows
{
public partial class Home : Form
{
public string sende123;
SqlConnection con = new SqlConnection(@"Data
Source=.\SQLEXPRESS;AttachDbFilename=E:\Project\TextHiding\Video

38
Inpainting With Short-Term Windows\capctha.mdf;Integrated
Security=True;User Instance=True");
SqlCommand cmd;
public Home()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
//AdminHome ah = new AdminHome();
//ah.Show();
}
private void button1_Click(object sender, EventArgs e)
{
//Camera c = new Camera();
//c.Show();
}
private void button3_Click(object sender, EventArgs e)
{
VideoCopyDetection v = new VideoCopyDetection();
v.Show();
}
int video;
private void button2_Click_1(object sender, EventArgs e)
{
if (textBox1.Text == "" || pictureBox1.Image == null || textBox3.Text == "")
{
MessageBox.Show("Please Enter Text Or Image");
}
39
else
{
string path =
System.IO.Path.GetDirectoryName(Application.ExecutablePath.ToString()) +
"\\Hide\\";
string path1 =
System.IO.Path.GetDirectoryName(Application.ExecutablePath.ToString()) +
"\\Hide\\";
Bitmap bmpp1 = new Bitmap(pictureBox1.Image);
bmpp1 = HideText.invisbleText(textBox1.Text, bmpp1);
pictureBox1.Image = bmpp1;
pictureBox1.Image.Save(path + filename);
MessageBox.Show("Data hide Completed!");
}
Random rr = new Random();
video = rr.Next(1111, 9999);
int width = pictureBox1.Image.Width;
int height = pictureBox1.Image.Height;
// create instance of video writer
VideoFileWriter writer = new VideoFileWriter();
// create new video file
writer.Open(video + ".avi", width, height, 25, VideoCodec.MPEG4);
// create a bitmap to save into the video file
DirectoryInfo di = new
DirectoryInfo(Path.GetDirectoryName(Application.ExecutablePath.ToString())
+ "\\Frame\\");
for (int i = 0; i < di.GetFiles("*.*").Length - 1; i++)
{
if (filename == i.ToString() + ".jpg")
40
{
//label3.Text = filename;
Bitmap image = new
Bitmap(Path.GetDirectoryName(Application.ExecutablePath.ToString()) +
"\\Hide\\" + i.ToString() + ".jpg");
writer.WriteVideoFrame(image);
}
else
{
Bitmap image = new
Bitmap(Path.GetDirectoryName(Application.ExecutablePath.ToString()) +
"\\Frame\\" + i.ToString() + ".jpg");
writer.WriteVideoFrame(image);
}
}
writer.Close();
MessageBox.Show("Video Completed!");
}
string filename;
string fullpath;
private void button1_Click_1(object sender, EventArgs e)
{
OpenFileDialog op = new OpenFileDialog();
op.ShowDialog();
filename = System.IO.Path.GetFileName(op.FileName);
fullpath = op.FileName;
textBox2.Text = fullpath;
pictureBox1.Image = new Bitmap(op.FileName);
}
41
private void button3_Click_1(object sender, EventArgs e)
{
int width = pictureBox1.Image.Width;
int height = pictureBox1.Image.Height;
// create instance of video writer
VideoFileWriter writer = new VideoFileWriter();
// create new video file
writer.Open("test.avi", width, height, 25, VideoCodec.MPEG4);
// create a bitmap to save into the video file
DirectoryInfo di = new
DirectoryInfo(Path.GetDirectoryName(Application.ExecutablePath.ToString())
+ "\\Frame\\");
for (int i = 0; i < di.GetFiles("*.*").Length - 1; i++)
{
if (filename == i.ToString() + ".jpg")
{
//label3.Text = filename;
Bitmap image = new
Bitmap(Path.GetDirectoryName(Application.ExecutablePath.ToString()) +
"\\Hide\\" + i.ToString() + ".jpg");
writer.WriteVideoFrame(image);
}
else
{
Bitmap image = new
Bitmap(Path.GetDirectoryName(Application.ExecutablePath.ToString()) +
"\\Frame\\" + i.ToString() + ".jpg");
writer.WriteVideoFrame(image);
}
42
}
writer.Close();
MessageBox.Show("Video Completed!");
}
class HideText
{
public enum State
{
Hiding,
Filling_With_Zeros
};
public static Bitmap invisbleText(string text, Bitmap bmp)
{
State state = State.Hiding;
int charIndex = 0;
int charValue = 0;
long pixelElementIndex = 0;
int zeros = 0;
// hold pixel elements
int R = 0, G = 0, B = 0;
// pass through the rows
for (int i = 0; i < bmp.Height; i++)
{
for (int j = 0; j < bmp.Width; j++)
{
Color pixel = bmp.GetPixel(j, i);
// now, clear the least significant bit (LSB) from each pixel
element
R = pixel.R - pixel.R % 2;
43
G = pixel.G - pixel.G % 2;
B = pixel.B - pixel.B % 2;
// for each pixel, pass through its elements (RGB)
for (int n = 0; n < 3; n++)
{
// check if new 8 bits has been processed
if (pixelElementIndex % 8 == 0)
{
// check if the whole process has finished
// we can say that it's finished when 8 zeros are added
if (state == State.Filling_With_Zeros && zeros == 8)
{
// apply the last pixel on the image
// even if only a part of its elements have been affected
if ((pixelElementIndex - 1) % 3 < 2)
{
bmp.SetPixel(j, i, Color.FromArgb(R, G, B));
}
// return the bitmap with the text hidden in
return bmp;
}
// check if all characters has been hidden
if (charIndex >= text.Length)
{
// start adding zeros to mark the end of the text
state = State.Filling_With_Zeros;
}
else
{
44
// move to the next character and process again
charValue = text[charIndex++];
}
}
switch (pixelElementIndex % 3)
{
case 0:
{
if (state == State.Hiding)
{
R += charValue % 2;
charValue /= 2;
}
} break;
case 1:
{
if (state == State.Hiding)
{
G += charValue % 2;
charValue /= 2;
}
} break;
case 2:
{
if (state == State.Hiding)
{
B += charValue % 2;
charValue /= 2;
}
45
bmp.SetPixel(j, i, Color.FromArgb(R, G, B));
} break;
}
pixelElementIndex++;
if (state == State.Filling_With_Zeros)
{
// increment the value of zeros until it is 8
zeros++;
}
}
}
}
return bmp;
}
public static string extractText(Bitmap bmp)
{
int colorUnitIndex = 0;
int charValue = 0;
// holds the text that will be extracted from the image
string extractedText = String.Empty;
// pass through the rows
for (int i = 0; i < bmp.Height; i++)
{
// pass through each row
for (int j = 0; j < bmp.Width; j++)
{
Color pixel = bmp.GetPixel(j, i);
// for each pixel, pass through its elements (RGB)
for (int n = 0; n < 3; n++)
46
{
switch (colorUnitIndex % 3)
{
case 0:
{
charValue = charValue * 2 + pixel.R % 2;
} break;
case 1:
{
charValue = charValue * 2 + pixel.G % 2;
} break;
case 2:
{
charValue = charValue * 2 + pixel.B % 2;
} break;
}
colorUnitIndex++;
// if 8 bits has been added, then add the current character to the
result text
if (colorUnitIndex % 8 == 0)
{
// reverse? of course, since each time the process happens
on the right (for simplicity)
charValue = reverseBits(charValue);
// can only be 0 if it is the stop character (the 8 zeros)
if (charValue == 0)
{
return extractedText;
}
47
// convert the character value from int to char
char c = (char)charValue;
// add the current character to the result text
extractedText += c.ToString();
}
}
}
}
return extractedText;
}
public static int reverseBits(int n)
{
int result = 0;
for (int i = 0; i < 8; i++)
{
result = result * 2 + n % 2;
n /= 2;
}
return result;
}
}
private void button4_Click(object sender, EventArgs e)
{

}
string fileid;
string mail;
private void button4_Click_1(object sender, EventArgs e)
{
48
//Bitmap bmp = new Bitmap(pictureBox1.Image);
label4.Text = sende123;
cmd = new SqlCommand("insert into frametb
values(@SenderName,@ReceiverName,@FrameName,@Keys,@Image,@Vide
o)", con);
cmd.Parameters.AddWithValue("@SenderName", sende123);
cmd.Parameters.AddWithValue("@ReceiverName", comboBox1.Text);
cmd.Parameters.AddWithValue("@FrameName", filename);
cmd.Parameters.AddWithValue("@Keys", textBox3.Text);
cmd.Parameters.AddWithValue("@Video", video + ".avi");
// cmd.Parameters.AddWithValue("@Image", "");
conv_photo1();
con.Open();
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("Record Saved!");
cmd = new SqlCommand("select max(id) as id from frametb ", con);
con.Open();
SqlDataReader dr22 = cmd.ExecuteReader();
if (dr22.Read())
{
fileid = dr22["id"].ToString();
}
con.Close();
con.Open();
cmd = new SqlCommand("select * from rregtb where Username='" +
comboBox1.Text + "'", con);
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
49
{
mail = dr["Email"].ToString();
}
con.Close();
string to = mail;
string from = "sampletest685@gmail.com";
// string subject = "Key";
// string body = TextBox1.Text;
string password = "mailtest2";
using (MailMessage mm = new MailMessage(from, to))
{
mm.Subject = "Keys";
mm.Body = "FileId " + fileid + " FileName: " + filename + " Key"
+ textBox3.Text;
//Image image = pictureBox1.Image;
//System.IO.MemoryStream stream = new
System.IO.MemoryStream();
//image.Save(stream, ImageFormat.Jpeg);
//stream.Position = 0;
//mm.Attachments.Add(new Attachment(stream, "Screenshot.jpg"));
mm.IsBodyHtml = false;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
NetworkCredential NetworkCred = new NetworkCredential(from,
password);
smtp.UseDefaultCredentials = true;
smtp.Credentials = NetworkCred;
smtp.Port = 587;
50
smtp.Send(mm);
MessageBox.Show("Mail Send!");
}
}
void conv_photo1()
{
MemoryStream ms;
//string path1 =
Path.GetDirectoryName(Application.ExecutablePath).ToString();
//converting photo to binary data
string ss = fullpath;
FileStream fs = new FileStream(ss, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
Byte[] bytes = br.ReadBytes((Int32)fs.Length);
br.Close();
fs.Close();
cmd.Parameters.AddWithValue("@Image", bytes);
}
private void Home_Load(object sender, EventArgs e)
{
con.Open();
cmd = new SqlCommand("select * from rregtb", con);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
comboBox1.Items.Add(dr["UserName"].ToString());
}
con.Close();
}
51
string file,ext;
private void button5_Click(object sender, EventArgs e)
{
OpenFileDialog op = new OpenFileDialog();
op.ShowDialog();
file = op.FileName;
ext = System.IO.Path.GetExtension(op.FileName);
if (ext == ".txt")
{
textBox1.Text = File.ReadAllText(op.FileName);
}
else
{
MessageBox.Show("Please Choose Text Document");

}
}
}
}

52
9.2.SCREENSHOTS

SENDER LOGIN:

UPLOAD VIDEO:

53
VIEW FRAME:

TEXTHIDING:

54
RECIEVER LOGIN:

TEXT EXTRAXTION:

55
CHAPTER 10
REFERENCES
1. Dongqing Zhang, B.L. Tseng and Shih-Fu Chang, “Accurate Overlay
Text Extraction for Digital Video Analysis”, International Conference on
Information Technology: Research and Education, Proceedings. Aug.
2003.
2. Muhammad Khaerul Anam, Eko Adi Sarwoko, Edy Suharto and Kharis
Khasburrahman, “Random Pixel Embedding for Hiding Secret Text over
Video File”, 1st International Conference on Informatics and
Computational Sciences (ICICoS), Nov.2017, pp: 41 – 46.
3. Amruta B. Bhojane and Priti A. Khodke, “Data Hiding In Video Stream
By Text Substitution”, International Journal of Science, Engineering and
Technology, July 2015, pp: 735 – 738.
4. Jaspreet Kaur and Jagroop Kaur, “Hiding Text in Video Using
Steganographic Technique - A Review”, International Journal of
Engineering Sciences, January 2016, Vol. 17, pp: 578 – 582.
5. K.V.Vinodkumar and V. Lokeswara Reddy, “A Novel Data Embedding
Technique for Hiding Text in Video File using Steganography”,
International Journal of Computer Applications, Vol. 77, September
2013, pp: 13 – 18.
6. K.Rosemary Euphrasi and M. Mary Shanthi Rani, “A Comparative Study
On Video Steganography in Spatial and IWT Domain”, ICACA,
Oct.2016, pp: 104 – 109.
7. O.Bardhan, A. Bhattacharya, B. P. Sinha, “A Steganographic Technique

56
Based on VLSB Method using RC4 Stream Cipher”, International
Conference on Advances in Computing, Communications and
informatics, 2014.
8. Swetha V, Prajith V, Kshema V, “Data Hiding Using Video 213.
9. H. M. Kelash, O. F. Abdel Wahab, O. A. Elshakankiry, and H. S. El-
Sayed, “Hiding data in video sequences using steganography algorithms,”
Int. Conf. ICT Converg., 2013 pp. 353–358.
10.Carli M, Campisi P, Neri (2006) A Data hiding driven by perceptual
features for secure communications. In: International Conference on
Networking, International Conference on Systems and International
Conference on Mobile Communications and Learning Technologies
(ICN/ICONS/MCL) 85–85 Multimed Tools Appl
11.Chae JJ, Manjunath BS (1999) Data hiding in video. In: Proceedings of
International Conference on Image Processing (ICIP 99) 311–315
12.Chandramouli R, Memon ND (2003) Steganography capacity: A
steganalysis perspective. In: Proceedings of SPIE 173–177
13.Chang K-C, Chang C-P, Huang PS, Tu T-M (2008) A novel image
steganographic method using tri-way pixel-value differencing. J
Multimed 3(2):37–44
14.Chang F-C, Hang H-M, Huang H-C (2007) Layered access control
schemes on watermarked scalable media. J VLSI Signal Process Syst
Signal Image Video Technol 49(3):443–455
15.Channalli S, Jadhav A (2009) Steganography an Art of hiding data. Int J
Comput Sci Eng (IJCSE) 1(3): 137–141
16.Cheddad A, Condell J, Curran K, Mc Kevitt P (2009) A skin tone
detection algorithm for an adaptive approach to steganography. Signal
Process 89(12):2465–2478

57
17.Cheddad A, Condell J, Curran K, Mc Kevitt P (2010) Digital image
steganography: survey and analysis of current methods. Signal Process
90(3):727–752
18.Das R, Tuithung T (2012) A novel steganography method for image
based on Huffman Encoding. In: 3rd National Conference on Emerging
Trends and Applications in Computer Science (NCETACS) 14–18
19.Eltahir ME, Kiah LM, Zaidan BB, Zaidan AA (2009) High rate video
streaming steganography. In: International Conference on Future
Computer and Communication (ICFCC 2009) 672–675
20.Fridrich J, Goljan M, Du R (2001) Detecting LSB steganography in color,
and gray-scale images. Multimed IEEE 8(4):22–28
21.Hamid N, Yahya A, Ahmad RB, Al-Qershi OM (2012) Image
steganography techniques: an overview. Int J Comput Sci Secur (IJCSS)
6(3):p168–p187
22.Hanafy AA, Salama GI, Mohasseb YZ (2008) A secure covert
communication model based on video steganography. In: Military
Communications Conference (MILCOM 2008) 1–6
23.Handel TG, Sandford Ii MT (1996) Hiding data in the OSI network
model. In: Proceedings of the First International Workshop on
Information Hiding 23–38

58

You might also like