Академический Документы
Профессиональный Документы
Культура Документы
2. INTRODUCTION
Steganography, from the Greek, means covered or secret writing, and is a long-practiced
form of hiding information. Although related to cryptography, they are not the same.
Steganography's intent is to hide the existence of the message, while cryptography scrambles a
message so that it cannot be understood.
More precisely,
“the goal of steganography is to hide messages inside other harmless messages in a way
that does not allow any enemy to even detect that there is a second secret message present.''
2
STEGANOGRAPHY
In the field of steganography, some terminology has developed. The adjectives cover,
embedded and stego were defined at the Information Hiding Workshop held in Cambridge,
England. The term “cover” is used to describe the original, innocent message, data, audio, still,
video and so on. When referring to audio signal steganography, the cover signal is sometimes
called the “host” signal.
The information to be hidden in the cover data is known as the “embedded”' data. The
“stego” data is the data containing both the cover signal and the “embedded” information.
Logically, the processing of placing the hidden or embedded data, into the cover data, is
sometimes known as embedding. Occasionally, especially when referring to image
steganography, the cover image is known as the container.
3
STEGANOGRAPHY
In the following section we will try to show how steganography can and is being used
through the media of images.
In this section we deal with data encoding in still digital images. In essence, image
steganography is about exploiting the limited powers of the human visual system (HVS). Any
plain text, cipher text, other images, or anything that can be embedded in a bit stream can be
hidden in an image. Image steganography has come quite far in recent years with the
development of fast, powerful graphical computers, and steganographic software is now readily
available over the Internet for everyday users.
Digital images are typically stored in either 24-bit or 8-bit per pixel files. 24-bit images
are sometimes known as true color images. Obviously, a 24-bit image provides more space for
hiding information; however, 24-bit images are generally large and not that common. A 24-bit
image 1024 pixels wide by 768 pixels high would have a size in excess of 2 megabytes. As such
large files would attract attention when they need to be transmitted across a network or the
Internet, image compression is desirable. However, compression brings with it other problems,
as will explain shortly.
4
STEGANOGRAPHY
without the original image for comparison. At times the existence of hidden information may be
known so detecting it is not always necessary. Disabling and rendering it useless seems to be the
next best alternative. With each method of hiding information there is a trade off between the
sizes of the payload (amount of hidden information) that can be embedded and the survivability
or robustness of that information to manipulation.
For LSB methods of inserting data, simply using a lossy compression technique, such as
JPEG, is enough to render the embedded message useless. Images compressed with such a
method are still pleasing to the human eye but no longer contain the hidden information.
Hidden information may also be overwritten. If information is added to some media
such that the added information cannot be detected, then there exists some amount of additional
information that may be added or removed within the same threshold which will overwrite or
remove the embedded covert information.
2.5 Methodology
2.4.1 Steganalysis
Hiding information within electronic media requires alterations of the media properties
that may introduce some form of degradation or unusual characteristics. These characteristics
may act as signatures that broadcast the existence of the embedded message, thus defeating the
purpose of steganography.
Some amount of distortion and degradation may occur to carriers of hidden messages even
though such distortions cannot be detected easily by the human perceptible system. This
distortion may be anomalous to the "normal" carrier that when discovered may point to the
existence of hidden information. Steganography tools vary in their approaches for hiding
information. Without knowing which tool is used and which, if any, stegokey is used; detecting
5
STEGANOGRAPHY
the hidden information may become quite complex. However, some of the steganographic
approaches have characteristics that act as signatures for the method or tool used.
Unusual patterns stand out and expose the possibility of hidden information. In text, small
shifts in word and line spacing may be somewhat difficult to detect by the casual observer.
However, appended spaces and "invisible" characters can be easily revealed by opening the file
with a common word processor. The text may look "normal" if typed out on the screen, but if the
file is opened in a word processor, the spaces, tabs, and other characters distort the text's
presentation.
Images too may display distortions from hidden information. Selecting the proper
combination of steganography tools and carriers is the key to successful information hiding.
Some images may become grossly degraded with even small amounts of embedded information.
This “visible noise” will give away the existence of hidden information.
Patterns become visible when evaluating many images used for applying steganography. Such
patterns are unusual sorting of color palettes, relationships between colors in color indexes,
exaggerated "noise" An approach used to identify such patterns is to compare the original cover-
images with the stego-images and note visible differences (known-cover attack). With this
knowledge-base, if the cover images are not available for comparison, the derived known
signatures are enough to imply the existence of a message and identify the tool used to embed
the message. However, in some cases recurring, predictable patterns are not readily apparent
even if distortion between the cover and stego-images is noticeable.
6
STEGANOGRAPHY
RAM : 4 G B or High
Software Tools
7
STEGANOGRAPHY
4.1 Introduction
Most JPEG files are complex to use it as cover image because it uses lossy compression so
that it looses the original image quality. BMP and GIF files uses lossless compression which
always returns original image without any data loss. The stego-key or password is the extensive
tool which is responsible for hiding and extracting the message.
System analysis is an important process. Analysis involves a detailed study of the current
system, leading specification of new system. Analysis is a detailed study of various operations
performed by a system and their relationships within and outside the system. During analysis,
data is collected on the available files, decision points and transactions handled by the present
system. Using the following steps it becomes easy to draw the exact boundary of the new system
under consideration:
All procedures, requirements must be analyzed and documented in the form of detailed
data flow diagrams (DFDs). System Analysis also includes sub-dividing of complex process
involving the entire system, identification of data store and manual processes.
8
STEGANOGRAPHY
4. SYSTEM ANALYSIS
User interacts with the image file by using commands – Opening image file (BMP/GIF),
opening data file, entering password, saving the image file.
4.3 System Specification
As a consequence of the system's design, our File System has the following specification:
• Maximum file size: 2Mbytes (24-bit image contains 1024*768 pixels where each pixel is
represented by 3bytes)
• Maximum color entries:24 bits per pixel, 224=16,777,216 colors
Features of our file system
• File Operations:
Open image file, open data file, save image file.
• Multiple document Interface (MDI) forms:
The form is used to develop the menu type interface to the user.
9
STEGANOGRAPHY
5. SYSTEM DESIGN
Based on the user requirements and the detailed analysis of the system, the system must
be designed. System designing is the most crucial phase in the development of nay system.
Normally, the design proceeds in two stages
10
STEGANOGRAPHY
key: parameter of fE
The following formula provides a very generic description of the pieces of the steganographic
process:
In this context, the cover_medium is the file in which we will hide the hidden_data, which may
also be encrypted using the stego_key. The resultant file is the stego_medium (which will, of
course. be the same type of file as the cover_medium). The cover_medium and, thus, the
stego_medium are typically image or audio files.
Steganographic messages may first be encrypted and then a cover message is modified to contain
the encrypted message, resulting in stego text. Only those who know the technique used can
recover the message and, if required, decrypt it.
11
STEGANOGRAPHY
The message may be a few thousand bits (often at 7 or 8 bits per text character)
embedded in millions of other bits. Probably the most typical use is digital images. Digital
images are commonly stored in either 24-bit or 8-bit files. If an 8-bit image is viewed as a grid
and the grid is made up of cells, these cells are called pixels.
Each pixel consists of an 8-bit binary number (or a single byte), and each 8-bit binary number
refers to the color palette (a set of colors defined within the image). All color variations for the
pixels are derived from three primary colors: red, green, and blue. Each primary color is
represented by 1 byte (= 8 bits).
Stego-Key
(eg-password)
Secret message
(to be hidden)
The term ``cover'' is used to describe the original, innocent message, data, audio, still,
video and so on. The information to be hidden in the cover data is known as the ``embedded''
data. The ``stego'' data is the data containing both the cover signal and the ``embedded''
information. Logically, the processing of putting the hidden or embedded data, into the cover
data, is sometimes known as embedding. Occasionally, especially when referring to image
steganography, the cover image is known as the container.
12
STEGANOGRAPHY
Forms Used :
Cover Image:
The term ``cover'' refers to original, innocent message. When referring to image
Steganography, the cover image is known as the container.
Stego-key:
Bit map (BMP) file format is an image file format used to store bitmap digital images,
especially on Microsoft windows. It uses an 8-bit or 24-bit palette. 8-bit Bmp files allow
256RGB colors in the image. 8-bits Bmp files uses lossless, a scheme that allows that software to
exactly reconstruct the original image.
Graphics Interchange Format (GIF) is an 8-bit per pixel bitmap image format. 8-bit Gif
files allow 256RGB colors in the image. Gif uses a lossless compression technique and the data
hidden in the message can be recovered without a problem.
Hide data file contains hidden message. Encrypt the hidden message before placing it
in the cover Image .The message can be text or another images. The message may be few
thousand bits(uses 8 bits per character) embedded in millions of other bits.
Extract Message:
By knowing the stego-key or password the recipient can recover the hidden message
sent by the sender.
13
STEGANOGRAPHY
14
STEGANOGRAPHY
6. DETAILED DESIGN
In the detailed design stage, computer oriented work began. At this stage, the design of
the system became more structured. Structure design is a blue print of a computer solution to a
given problem having the same components and inter-relationship among the same component as
the original problem. Input, output and processing specifications were drawn up in detail. In the
design stage, the programming language and the platform in which the new system will run were
also decided
Start
Seek 15
STEGANOGRAPHY
This diagram shows the flow for hiding of message inside the image file.
Start
Is Data Insufficient
Argumen Yes
ts Arguments
<4
No
Hide
Stop
16
STEGANOGRAPHY
Start
Is Data
Yes Insufficient
Argumen
ts Arguments
<3
No
Seek
Retrieve Data
Stop
17
STEGANOGRAPHY
7. IMPLEMENTATION
The Software package STEGONOGRAPHY has been implemented using
• Visual Basic 6.0 as Front-End
• C++ has source code
Information can be hidden many different ways in images. Straight message insertion can
be done, which will simply encode every bit of information in the image. More complex
encoding can be done to embed the message only in ``noisy'' areas of the image, that will attract
less attention. The message may also be scattered randomly throughout the cover image.
Steganography Methods :-
18
STEGANOGRAPHY
The least significant bit insertion method is probably the most well known image
steganography technique. It is a common, simple approach of embedding information in a
graphical image file. Unfortunately, it is extremely vulnerable to attacks, such as image
manipulation. A simple conversion from a GIF or BMP format to a lossy compression format
such as JPEG can destroy the hidden information in the image.
When applying LSB techniques to each byte of a 24-bit image, three bits can be encoded
into each pixel. (As each pixel is represented by three bytes) Any changes in the pixel bits will
be indiscernible to the human eye. For example, the letter A can be hidden in three pixels.
Assume the original three pixels are represented by the three 24-bit words below:
The emphasized bits are the only bits that actually changed. The main advantage of LSB
insertion is that data can be hidden in the least and second to least bits and still the human eye
would be unable to notice it.
When using LSB techniques on 8-bit images, more care needs to be taken, as 8-bit
formats are not as forgiving to data changes as 24-bit formats are. Care needs to be taken in the
selection of the cover image, so that changes to the data will not be visible in the stego-image.
When modifying the LSB bits in 8-bit images, the pointers to entries in the palette are
changed. It is important to remember that a change of even one bit could mean the difference
19
STEGANOGRAPHY
between a shade of red and a shade of blue. Such a change would be immediately noticeable on
the displayed image, and is thus unacceptable. For this reason, data-hiding experts recommend
using grey-scale palettes, where the differences between shades are not as pronounced.
Masking techniques are more suitable for use in lossy JPEG images than LSB insertion
because of their relative immunity to image operations such as compression and cropping.
Because they are high quality color images with good compression, it is desirable to use
JPEG images across networks such as the Internet. Indeed, JPEG images are becoming abundant
on the Internet.
JPEG images use the discrete cosine transform (DCT) to achieve compression. DCT is a
lossy compression transform, because the cosine values cannot be calculated precisely, and
rounding errors may be introduced. Variances between the original data and the recovered data
depend on the values and methods used to calculate the DCT.
Other methods also attempt to mark labels into the images by altering the brightness of
pixel blocks of the image by a selected value k. This value k is dependent on a lower quality
JPEG compressed version of the labeled block. This method is fairly resistant to JPEG
compression, depending on the size of the pixel blocks used, and offers low visibility of the
label. Unfortunately, it is not very suitable to real-time applications.
20
STEGANOGRAPHY
System Testing
System testing involves two kinds of activities one is integration testing and the other is
acceptance testing. Testing is the vital part of the implementation phase.
Testing:
The testing phase involves the testing of developed system using various kinds of data.
The common view of testing held by user is that it is performed to prove that there are no errors
in a program. An elaborate testing of the data is prepared and the system is tested using the test
data. The corrections are also noted for future use. The users are trained to operate the developed
system. A successful testing is one that finds an error. It makes logical assumptions that if all the
parts of the system are correct, the goal will be successfully achieved. The candidate system is
subject to variety of tests: on-line response, stress, recovery, security and usability tests.
A series of tests are performed for the proposed system, before system is ready for user
acceptance testing.
Unit Testing:
Unit Testing focuses verification effects on the smallest unit of software design of the
model that is known as module testing. The modules of the projects are tested separately. This
testing was carried out during programming stage itself. In unit testing we test the programs
making up a system. During unit testing the test locates errors in coding a logical that is
contained within a single module alone. Unit testing can be performed from the bottom-up
starting with the smallest and lowest-level modules and proceeding one at a time top-down
testing begins with the upper-level modules.
Integration testing:
Data can be tested across an interface: one module can have an adverse effect on another
sub function, when combines, may not reduce the design major function. Integration testing is a
systematic testing for constructing the program structure while at the same time conducting tests
to uncover errors associated with the interface.
21
STEGANOGRAPHY
The objective is to take unit –tested modules and build a combined and tested as a whole. Here
correction is difficult before the isolation of cause is complicated by the vast expense of the
entire program. Thus in the integration testing step, all the errors uncovered are corrected for the
next testing steps.
Validation testing :
Output Testing :
After performing the validation testing, the next step is output testing of the proposed
system since no system could be useful if it does not produce the required output in the specific
format. Asking the user about the format required then test the output generated or displayed by
the system under consideration. Here the output format is considered in two ways. One is on
screen and another is printed format. The output format on the screen to be correct as the format
was designed in the system design phase according to the user needs. For the hand copy also, the
output comes out with the specified requirements by the user.
8.2 Testing Summary
User acceptance of the system is the key factor for the success of any system. The
system under consideration is tested for user acceptance by consulting keeping in touch with the
prospective system user at time of developing and making changes wherever required.
22
STEGANOGRAPHY
9. CONCLUSION
23
STEGANOGRAPHY
Most data-hiding systems take advantage of human perceptual weaknesses, but have
weaknesses of their own. For now, it seems that no system of data-hiding is totally immune to
attack.
However, steganography has its place in security. It in no way can replace cryptography, but
is intended to supplement it. Its application in watermarking and fingerprinting, for use in
detection of unauthorized, illegally copied material, is continually being realized and developed.
Also, in places where standard cryptography and encryption is outlawed, steganography can be
used for covert data transmission. Steganography, formerly just an interest of the military, is now
gaining popularity among the masses. Soon, any computer user will be able to put his own
watermark on his artistic creations.
24
STEGANOGRAPHY
25
STEGANOGRAPHY
11. Bibliography
11.1 Books
11.2 Websites
• http://www.cs.uct.ac.za/courses/CS400W/NIS/papers99/
• http://members.tripod.com/steganography/stego.html
• http://www.cl.cam.ac.uk/~fapp2/steganography/
• http://www.iks-jena.de/mitarb/lutz/security/stegano.html
• http://www.all-nettools.com/privacy/stegano.htm
• http://www.aces.att.com/glossary/steganog.htm
• http://www.cdt.luth.se/~peppar/kurs/smd074/lekt/7/slide0.html
• http://www.ise.gmu.edu/~njohnson/ihws98/jjgmu.html
• http://www.jjtc.com/Steganography/
26