Secured Steganography To Send Seceret Message: Project ID: 1029
Secured Steganography To Send Seceret Message: Project ID: 1029
SECERET MESSAGE
Submitted By
Biswanath Roll No. 2236
NOVEMBER - 2012
(i)
CERTIFICATE
(meldl)
Project Guide
(i)
ABSTRACT
Steganography is the art of hiding the fact that communication is taking place, by hiding
information in other information. Many different carrier file formats can be used, but digital
images are the most popular because of their frequency on the internet. For hiding secret
information in images, there exists a large variety of steganography techniques some are more
complex than others and all of them have respective strong and weak points. Different
applications may require absolute invisibility of the secret information, while others require a
large secret message to be hidden. This project report intends to give an overview of image
steganography, its uses and techniques. It also attempts to identify the requirements of a good
steganography algorithm and briefly reflects on which steganographic techniques are more
suitable for which applications.
ACKNOWLEDGEMENT
2
I again owe my special thanks to Dr. Pndnk B.Tech. project coordinator for giving
me an opportunity to do this report.
Biswanath
Reg. no.:1KSKJ20
3
TABLE OF CONTENT
Abstract...i
Acknowledgement....................................................................................................................ii
List of figure..v
1.2 Objective.........................................................................................................................3
2. Project Description...............................................................................................................4
6. Flow Diagram.....................................................................................................................16
7. Modular View.....................................................................................................................17
(iv)
8. Work Progress.....................................................................................................................18
References..............................................................................................................................20
(iv)
LIST OF FIGURES
6
Secure steganography to send secret message
The growing possibilities of modern communications need the special means of security
especially on computer network. The network security is becoming more important as the
number of data being exchanged on the internet increases. Therefore, the confidentiality and
data integrity are requires to protect against unauthorized access and use. This has resulted in
an explosive growth of the field of information hiding.
0
Secure steganography to send secret message
1.2 Objective
The goal of steganography is covert communication. So, a fundamental requirement of this
steganography system is that the hider message carried by stego-media should not be sensible
to human beings.
1
Secure steganography to send secret message
The other goad of steganography is to avoid drawing suspicion to the existence of a hidden
message. This approach of information hiding technique has recently became important in a
number of application area
Steganography sometimes is used when encryption is not permitted. Or, more commonly,
steganography is used to supplement encryption. An encrypted file may still hide information
using steganography, so even if the encrypted file is deciphered, the hidden message is not
seen
2. PROJECT DESCRIPTION
Though the fields of steganography and cryptography are associated with one another, there is
a distinction to be made. Cryptography is the art of jumbling a message so that a would-be
eavesdropper cannot interpret the message. Steganography, on the other hand, is the art of
hiding a message so that a would-be eavesdropper is unaware of the messages presence.
While steganography has been around for centuries, the Digital Revolution has sparked a
renewed interest in the field. For instance, the mass media industry has shown increasing
interest in steganography to fight piracy. It is even rumored that the terrorist organization, Al-
Qaeda, has employed steganography to transmit orders to its operatives over the internet.
All digital file formats can be used to hide secret messages. This paper, however, focuses
specifically on the techniques employed in hiding information in digital image files.
2
Secure steganography to send secret message
Steganography is the art of sending hidden or invisible messages. The name is taken from a
work by Trithemus (1462-1516) entitled Steganographia and comes from the Greek
-, - meaning covered writing (Petitcolas et al 1999: 1062, Petitcolas 2000:
2, etc.). The practice of sending secret messages is nothing new, and attempts to cover the
messages by hiding them in something else (or by making them look like something else)
have been made fpr millennia. Many of the standard examples used by modern researchers to
explain steganography, in fact, come from the writings of Herodotus. For example, in around
440 BC, Herodotus writes
about Histus, who was being held captive and wanted to send a message without being
detected. He shaved the head of his favorite slave, tattooed a message on his scalp, and waited
for the hair to regrow, obscuring the message from guards (Petitcolas 2000: 3). Petitcolas
mentions that this method was in fact still used by Germans in the early 20th century.
Modern steganography is generally understood to deal with electronic media rather than
physical objects and texts. This makes sense for a number of reasons. First of all, because the
size of the information is generally (necessarily) quite small compared to the size of the data
in which it must be hidden (the cover text), electronic media is much easier to manipulate in
order to hide data and extract messages. Secondly, extraction itself can be automated when
the data is electronic, since computers can efficiently manipulate the data and execute the
algorithms necessary to retrieve the messages. Also, because there is simply so much
electronic information available, there are a huge number of potential cover texts available in
which to hide information, and there is a gargantuan amount of data an adversary attempting
to find
steganographically hidden messages must process. Electronic data also often includes
redundant, unnecessary, and unnoticed data spaces which can be manipulated in order to hide
messages. In a sense, these data spaces provide a sort of conceptual hidden compartment
into which secret messages can be inserted and sent off to the receiver.
This work provides an introduction to steganography in general, and discusses inguistic
steganography in particular. While much of modern steganography focuses on images, audio
signals, and other digital data, there is also a wealth of text sources in which information can
be hidden. While there are various ways in which one may hide information in text, there is a
specific set of techniques which uses the linguistic structure of a text as the space in which
information is hidden. We will discuss text methods, and provide justification for linguistic
solutions. Additionally, we will analyze the state-of-the-art in linguistic steganography, and
discuss both problems with these solutions, and a suggested vector for future solutions.
3
Secure steganography to send secret message
It is the art and science of hiding information such its presence cannot be detected and a
communication is happening. A secrete information is encoding in a manner such that the
very existence of the information is concealed. Paired with existing communication methods,
steganography can be used to carry out hidden exchanges.
The publishing and broadcasting industries have become interested in techniques for hiding
encrypted copyright marks and serial numbers in digital films, audio recordings, books and
multimedia products
4
Secure steganography to send secret message
1.1 Steganography
Steganographic information can be hidden in almost anything, and some cover objects are
more suitable for information hiding than others. This section will simply detail a few
common steganographic methods applied to various kinds of electronic media, along with an
explanation of the steganographic techniques used. Techniques can be grouped in many
different ways; Johnson and Katzenbeisser group steganographic techniques into six
categories by how the algorithm encodes information in the cover object: substitution
systems, transform domain techniques, spread spectrum techniques, statistical methods,
distortion techniques, and cover generation methods (2000: 43-44). In terms of linguistic
steganography, we will be mainly concerned with cover generation methods, although some
statistical methods and substitution systems will be described. Substitution systems insert the
hidden message into redundant areas of the cover object, statistical methods use the statistical
profile of the cover text in order to encode information, and cover generation texts encode
information in the way the cover object itself is generated (44). The descriptions that follow
are not supposed to be an exhaustive survey, but merely an introduction to some of the
existing methods; for a much more comprehensive description of modern steganographic
techniques, see Katzenbeisser and Petitcolas (2000) or Wayner (2002). One further comment
should be made; Kerkhoffs principle, which states that one must assume that an attacker has
knowledge of the protocol used and that all security must thus lie in the key used in the
protocol, is not to be ignored (Anderson and Petitcolas 1998, Petitcolas 2000). While we do
not specifically discuss secret keys here, it should be stated that we assume that the hidden
message is encrypted before being hidden in the cover text. While this does not protect a
protocol from being attacked if the introduction of random-looking data is inappropriate in the
context of the cover data, but it does prevent the message from being read. In many cases, the
fact that encrypted data looks like random data is intentionally used in spaces where such
random noise could realistically occur. In any event, we assume that the message itself is
cryptographically secure, and we therefore focus the protocols intended to hide such
messages.
Image steganography
Image steganography has gotten more popular press in recent years than other kinds of
steganography, possibly because of the flood of electronic image information available with
the advent of digital cameras and high-speed internet distribution. Image steganography often
involves hiding information in the naturally occurring noise within the image, and provides
a good illustration for such techniques.
5
Secure steganography to send secret message
Most kinds of information contain some kind of noise. Noise can be described as unwanted
distortion of information within the signal. Within an audio signal, the concept of noise is
obvious. For images, however, noise generally refers to the imperfections inherent in the
process of rendering an analog picture as a digital image. For example, the values of colors in
the palette for a digital image will not only not be the exact colors in the real image, and the
distribution of these colors will be also be imperfect. As Wayner mentions, the instantaneous
measurement of photons made by a digital camera also captures the randomness inherent in
their behavior, leading to a set of imperfect measurements which balance out to become a
digital image
(Wayner 2002: 152). By changing the least significant bit (LSB) in the color representation
for selected pixels, information can be hidden while often not significantly changing the
visual appearance of the image; this is known as image downgrading (Katzenbeisser 2000:
29,Johnson and Katzenbeisser 2000: 49). The greater the number of bits used to represent
colors, the less obvious the changes in palette values are in the visual representation of the
final image. While changing the LSB in order to hide information is a widely used
steganographic method,
Petitcolas et al note that it is trivial for a capable opponent to remove such information
(1999: 1065). Furthermore, lossy compression and other image transformations can easily
destroy hidden messages (Johnson and Jajodia 1998: 30).
There are many other methods for image steganography, however. For the images below, an
algorithm was used that attempts to avoid statistical distortion by taking advantage of the
discrete cosine transforms that are used to compress and approximate a digital image. The F5
algorithm improves upon previous methods for steganographic JPEGs by not only modifying
the compression coefficients, but by attempting to spread the modifications through the file in
such a way that their statistical profile still approximates a non-steganographic JPEG image
(Westfeld
2001; Wayner 2002: 181). The image below is a bitmap image which is compressed to a
JPEG image by the tool as the secret message is embedded. The basic model of
steganography consists of Carrier, Message and password. Carrier is also known as cover-
object, which the message is embedded and serves to hide the presence of the message.
Basically, the model for steganography is shown on following figure:
6
Secure steganography to send secret message
Cover-object C
F(C,M,K)
Stego-key, K
Message is the data that the sender wishes to remain it confidential. It can be plain text,
ciphertext, other image, or anything that can be embedded in a bit stream such as a copyright
mark, a covert communication, or a serial number. Password is known as stego-key, which
ensures that only recipient who know the corresponding decoding key will be able to extract
the message from a cover-object. The cover-object with the secretly embedded message is
then called the Stego-object.
Recovering message from a stego-object requires the cover-object itself and a corresponding
decoding key if a stego-key was used during the encoding process. The original image may or
may not be required in most applications to extract the message.
Audio that using digital audio formats such as wav, midi, avi, mpeg, mpi and
voc
File and Disk that can hides and append files by using the slack space
Text such as null characters, just alike morse code including html and java
Images file such as bmp, gif and jpg, where they can be both color and gray-
scale.
In general, the information hiding process extracts redundant bits from cover-object. The
process consists of two steps:
7
Secure steganography to send secret message
Those are,
8
Secure steganography to send secret message
This phase includes the identification of the problem, in order to identify the problem; we
have to know information about the problem, the purpose of the evaluation for problem to be
known. We have to clearly know about the clients requirements and the objectives of the
project.
Software design is a process through which the requirements are translated into a
representation of software. One of the software requirements have been analyzed and
specified, the software design involves three technical activities: design, coding generation
and testing. The design of the system is in modular form i.e. the software is logically
partitioned into components that perform specific functions and sub functions. The design
phase leads to modules that exhibit independent functional characteristics.
It even leads to interfaces that reduce the complexity of the connections between
modules and with the external environment. The design phase is of main importance because
in this activity, decisions ultimately affect the success of software implementation and
maintenance.
The development phase includes choosing of suitable software to solve the particular problem
given. The various facilities and the sophistication in the selected software give a better
development of the problem.
The coding phase is for translating the design of the system-produced during the design phase
into code in a given programming language, which can be executed by a computer and which
performs the computation specified by the design.
Testing is done in various ways such as testing the algorithm, programming code; sample data
debugging is also one of following the above testing. We are using the virtual android device
to test the android application. Same tool is used to debug the application. Otherwise we can
user a portable android smart phone to test the application.
9
Secure steganography to send secret message
MATLAB R2009 b
3.2.3 MatLab
MATLAB (matrix laboratory) is a numerical computing environment and fourth-generation
programming language. Developed by MathWorks, MATLAB allows matrix manipulations,
plotting of functions and data, implementation of algorithms, creation of user interfaces, and
interfacing with programs written in other languages, including C, C++, Java, and Fortran.
Although MATLAB is intended primarily for numerical computing, an optional toolbox uses
the MuPAD symbolic engine, allowing access to symbolic computing capabilities. An
additional package, Simulink, adds graphical multi-domain simulation and Model-Based
Design for dynamic and embedded systems.
10
Secure steganography to send secret message
Over the past few years, numerous steganography techniques that embed hidden messages in
multimedia objects have been proposed. There have been many techniques for hiding
information or messages in images in such a manner that alteration made to the image is
perceptually indiscernible. Commonly approaches are include LSB, Masking and filtering and
Transform techniques.
Although LSB hides the message in such way that the humans do not perceive it, it is
still possible for the opponent to retrieve the message due to the simplicity of the technique.
Therefore, malicious people can easily try to extract the message from the beginning of the
image if they are suspicious that there exists secret information that was embedded in the
image.
Masking and filtering techniques, usually restricted to 24 bits and gray scale image,
hide information by marking an image, in a manner similar to paper watermarks. The
technique perform analysis of the image, thus embed the information in significant areas so
that the hidden message is more integral to cover image than just hiding it in the noise level.
11
Secure steganography to send secret message
Step 5: Take first 8 byte of original data from the Cover Image.
Step 6: Replace the least significant bit by one bit of the data to be hidden.
This software provide the solution of this problem, it can accept any type of image to hide
information file, but finally it give the only BMP image as an output that has hidden file
inside it.
As with any other science, steganography has its own set of terminology. The term
cover is used to describe the original message in which we will hide our secret message.
Once we embed our secret message into the cover, the new message is known as the stego
data. The stego data is analogous the cipher text of cryptography.
12
Secure steganography to send secret message
Kerckhoffs principle, which states that the security of a system should not be based on the
obscurity of the algorithm, but on the strength of its key. Therefore the embedding algorithm
should require a key as an input. Additionally it is advisable to encrypt the secret message
prior to embedding it.
Though embedding algorithms may take many forms, there are some requirements
that all embedding algorithms should meet. Firstly, the distortion of the cover data as a result
of the embedding algorithm should be as imperceptible as possible. Secondly, no part of the
secret message should be contained in the header of the stego data file. The message must
become part of the cover data and should be immune to manipulation attacks such as re-
sampling or filtering. Ideally, it would also be a good idea to include error correcting codes
into the message so that if the stego data is damaged, the message can still be recovered.
Finally, it is imperative that the original cover data never fall into the hands of an
eavesdropper or be used twice. Since the embedding process is additive, the secret message
can be recovered if an eavesdropper has different stego files which utilize the same cover
data.
We will now explore some of the more popular techniques for embedding messages into
cover.
LSB modification is perhaps the most popular method to embed a message into cover data.
As its name suggests, this method works by modifying the least significant bit of one of the
RGB values of the pixel data. The secret message data is then scattered pseudo-randomly
across the image. This technique is analogous to the spread spectrum communication
technique of frequency hopping.
This method is quite effective against human detection because it is difficult for the
human eye to discern an LSB modified pixel. Also, any modifications that are made could
easily be attributed to noise that may already be contained in the image. However,
computer generated images, such as those generated by vector drawing applications like
Adobe Illustrator or Macromedia Flash, do not contain much noise and would therefore make
a poor choice as cover data.
While 24-bit true-color RGB data formats are best suited for LSB modification, it is possible
to use this method with 8-bit color-index data formats. This can be tricky, however, because
the palette is much smaller and pixel luminescence variation may be much greater and more
easily detected. Therefore, it is wise to attempt LSB modification with a grayscale or
monochromatic cover image.
13
Secure steganography to send secret message
There are, however, problems with LSB modification. For one, this method will only work
with raw image data. Lossy image compression formats, such as JPEG, do not store images
in an RGB format and are therefore not as forgiving to simple bit manipulation. Another
problem with LSB manipulation is that if the stego data is compressed with a lossy
compression algorithm, the secret message may be destroyed.
Steganography is the science of hiding secret messages within an otherwise normal, innocent
medium. Steganography has long been in use, even before the invention of the computer. For
example, warring nations used invisible ink and microdots to communicate messages
covertly. However, computer technology has taken steganography to the next level.
Nowadays, messages are typically hidden within digital images, video and audio. This paper
focuses on one particular popular technique, Least Significant Bit (LSB) Embedding, using
digital images as the medium. The terminology is that a message is hidden within a cover
image to produce a stego-image. First, the choice of a good cover image is discussed. Then,
variations of LSB Embedding are detailed. Finally, the advantages and disadvantages of LSB
Embedding are summarized.
The concept of LSB Embedding is simple. It exploits the fact that the level of
precision in many image formats is far greater than that perceivable by average human vision.
Therefore, an altered image with slight variations in its colors will be indistinguishable from
the original by a human being, just by looking at it. By using the least significant bits of the
pixels color data to store the hidden message, the image itself will seem unaltered.
14
Secure steganography to send secret message
Steganography system requires any type of image file and the information or message that is
to be hidden. It has two modules encrypt and decrypt.
The algorithm used for Encryption and Decryption in this application provides using
several layers lieu of using only LSB layer of image. Writing data starts from last layer (8st or
LSB layer); because significant of this layer is least and every upper layer has doubled
significant from its down layer. So every step we go to upper layer image quality decreases
and image retouching transpires.
The encrypt module is used to hide information into the image; no one can see that
information or file. This module requires any type of image and message and gives the only
one image file in destination.
The decrypt module is used to get the hidden information in an image file. It take the image
file as an output, and give two file at destination folder, one is the same image file and another
is the message file that is hidden it that.
Before encrypting file inside image we must save name and size of file in a definite place of
image. We could save file name before file information in LSB layer and save file size and
file name size in most right-down pixels of image. Writing this information is needed to
retrieve file from encrypted image in decryption state.
15
Secure steganography to send secret message
Start Application
Encryption Decryption
16
Secure steganography to send secret message
The receiver will collect the encrypted Bitmap image and decrypt it.
After decryption there are two files biz image file and text(message
file)
BMP FILE
17
Secure steganography to send secret message
18
Secure steganography to send secret message
BMP FILE
6.FLOW DIAGRAM
19
Secure steganography to send secret message
20
Secure steganography to send secret message
7. MODULAR VIEW
Secure Steganography
Encryption Decryption
21
Secure steganography to send secret message
22
Secure steganography to send secret message
9. References
23
Secure steganography to send secret message
24
Secure steganography to send secret message
25