PROJECT REPORT ON
QUALITATIVE SPATIAL IMAGE DATA HIDING FOR SECURE DATA TRANSMISSION
By
Jyoti Sutar [B8288556] Puja Daingade [B8288515] Chetna Galiyal [B8288518] Subhash Jayabhaye [B8288525]
DEPARTMENT OF INFORMATION TECHNOLOGY
MAHARASHTRA ACADEMY OF ENGINEERING ALANDI (DEVACHI), PUNE 2011 - 2012
PROJECT REPORT ON
QUALITATIVE SPATIAL IMAGE DATA HIDING FOR SECURE DATA TRANSMISSION By
Jyoti Sutar Puja Daingade Chetna Galiyal Subhash Jayabhaye Guided by
Mrs. Asha Choudhari Choudhari
DEPARTMENT OF INFORMATION TECHNOLOGY
MAHARASHTRA ACADEMY OF ENGINEERING ALANDI (DEVACHI), PUNE 2011 - 2012
PROJECT REPORT ON
QUALITATIVE SPATIAL IMAGE DATA HIDING FOR SECURE DATA TRANSMISSION By
Jyoti Sutar Puja Daingade Chetna Galiyal Subhash Jayabhaye Guided by
Mrs. Asha Choudhari Choudhari
DEPARTMENT OF INFORMATION TECHNOLOGY
MAHARASHTRA ACADEMY OF ENGINEERING ALANDI (DEVACHI), PUNE 2011 - 2012
MAHARASHTRA ACADEMY OF ENGINEERING ALANDI (DEVACHI), PUNE
DEPARTMENT OF INFORMATION TECHNOLOGY
CERTIFICATE
This is to certify that the seminar entitled ”QUALITATIVE SPATIAL IMAGE DATA HIDING FOR SECURE DATA TRANSMISSION” has been carried out by JYOTI SUTAR, PUJA DAINGADE, CHETNA GALIYAL, SUBHASH JAYABHAYE under my guidance in partial fulfillment of Fourth Year of Engineering in Information Technology of Pune University, Pune during the academic year 2011-2012.To the best of my knowledge and belief this seminar work has not been submitted elsewhere.
Mrs. Asha Choudhari
Prof. S M Bhagat
Guide
Head
i
Acknowledgement My project guide Mrs. Mrs. Asha Choudhari Choudhari and Head of the Departmen Departmentt Prof. S M Bhagat for their valuable guidance and for providing all the necessary facilities, which were were indispensab indispensable le in the comple completio tion n of this this project. project. We are also thankf thankful ul to all the staff members of the Department of Information Technology of Maharashtra Academy Of Engineering Alandi(D) Pune for their valuable time, support, comments,suggestions and persuasion. We would also like to thank the institute for providing the required facilities, Internet access and important books. Jyoti Sutar Puja Daingade Chetna Galiyal Subhash Jaybhai
ii
Abstract Steganography is a useful tool that allows covert transmission of information over an overt communications channel. steganography enables the user to transmit information masked inside of a file in plain view.Information hiding fall into two general categories based on the embedding (steganography) and detection techniques (steganalysis). The most important step within such process is the technique, which will be used for embedding the data. At the same time, the nature of the image must be studied well.Most of steganographic techniques utilize the LSB embedding applied either directly to pixel values, to indices in palette images, or to quantized the coefficients for image format. In spatial domain methods a steganographer modifies the secret data and the cover medium in the spatial domain, which involves encoding at the level of the LSBs.BMP image is used for hiding the text information which gives stego image as output to the receiver side.The steganography technique involves encoding and decoding steps which are based on the various algorithm. Thus by using this technique our data can be safe from intruder and we can transmit the data in secure way..
iii
Contents 1 Introduction
1
1.1 Aim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.3 Ob jectives and Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.4 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.5 Hardware And Software Requirements . . . . . . . . . . . . . . . . . . .
4
2 Literature Survey
5
2.1 Different types of hiding techniques . . . . . . . . . . . . . . . . . . . . .
7
2.1.1
Discrete Cosine Transform . . . . . . . . . . . . . . . . . . . . . .
7
2.1.2
DFT (discrete Fourier transform) . . . . . . . . . . . . . . . . . .
7
2.1.3
DWT (Discrete Wavelet Transform) . . . . . . . . . . . . . . . . .
7
2.2 Comparison between Spatial domain and Frequency domain . . . . . . .
8
2.3 Related workdone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
3 Concepts And Specifications
12
3.1 BMP Image File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
3.2 Technique used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
3.3 Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
3.3.1
Image embedding capacity . . . . . . . . . . . . . . . . . . . . . .
15
3.3.2
Perceptual transparency . . . . . . . . . . . . . . . . . . . . . . .
16
3.4 Project planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
iv
4 Designs And Specifications
19
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
4.1.1
Hide the information in Cover Image . . . . . . . . . . . . . . . .
19
4.1.2
Extract the information from Stego Image . . . . . . . . . . . . .
19
4.2 DFD’s (upto level 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
4.3 UML Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
4.4 Pro ject Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
4.4.1
Welcome Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
4.4.2
Login Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
4.4.3
Hide Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
4.4.4
Extract Module . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
5 PERFORMANCE EVALUATION AND TESTING
30
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
5.2 Need for Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
5.3 Purpose of Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
5.4 Features to be Tested . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
5.5 Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
6 RESULTS AND ANALYSIS
34
6.1 Description of Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
6.2 Zipping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
6.3 Effect Of Tampering . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
7 Applications
37
8
38
Future Scope And Conclusion 8.1 Future Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
8.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
Bibliography
38
v
List of Figures 2.1 Information hiding technique . . . . . . . . . . . . . . . . . . . . . . . . .
11
3.1 The Process Of Embedding Data . . . . . . . . . . . . . . . . . . . . . .
14
3.2 LSB information hiding algorithm . . . . . . . . . . . . . . . . . . . . . .
15
4.1 Block Diagram of Steganography . . . . . . . . . . . . . . . . . . . . . .
20
4.2 Context-level DFD for spatial image data hiding
. . . . . . . . . . . . .
21
4.3 Level 1 DFD for spatial image data hiding . . . . . . . . . . . . . . . . .
22
4.4 Level 2 DFD that refines the Embedding Process . . . . . . . . . . . . .
23
4.5 Use Case Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
4.6 Sequence Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
4.7 Welcome Page
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
4.8 Login Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
4.9 Hide Module
28
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.10 Extract Module
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vi
29
List of Tables 2.1 Literature Survey
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Comparison between spatial domain and frequency domain techniques
6
.
8
3.1 Schedule for Project Planning . . . . . . . . . . . . . . . . . . . . . . . .
18
5.1 Difference Between Original Image And Stego Image . . . . . . . . . . .
33
6.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
6.2 Comparison Between Stego Image and Zipped Image . . . . . . . . . . .
35
6.3 Comparison Between Stego Image and Tampered Image . . . . . . . . . .
36
vii
Chapter 1 Introduction Steganography comes from the Greek word which literally means, ”Covered or secret writing”.Steganography’s intent is to hide the existence of the message. 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. The only missing information for the ”enemy” is the short easily exchangeable random number sequence, the secret key, without the secret key, the ”enemy” should not have the slightest chance of even becoming suspicious that on an observed communication channel, hidden communication might take place. With the development of network technology, many information can rapidly be transmitted to everywhere through it, which can save much time and money of people.Each person can also find their information that they want on the Internet. However, due to the fact that digital information can be corrupted and stolen easily, security of protecting information has become a very important topic in recent years.Humans have continually sought new efficient and secret ways to protect confidential information. While electronic communication becoming widely accepted as the primary means of communication, information security and privacy are becoming a growing concern. Many methods have been proposed for protecting the security of digital information, including information hiding and cryptography. Information hiding is to conceal some 1
Introduction
information into digital media by modifying its content so that the information can’t be seen.Within the computer networks, confidential information may be found in two states; stored or transmitted through the network. During data exchange, it is a basic request that only the intended recipient has the ability to decipher the contents of the transmitted data. A common solution to this problem is the use of encryption to obscure the information content of the message. While encryption masks the meaning of the data, instances exist where it is preferred that the entire transmission process is not evident to any observer that is, even the fact that transmission is taking place is a secret. In this case, the transmission process itself should be hidden. Information Hiding (Steganographic) techniques are thus used to hide or cover the existence of transmitted data with other data, intuitively referred to as cover data. Information hiding has focused on carriers like images and audio files. It is mostly used when a sender wants to convey information to a recipient but does not want anyone else to know that the two parties are communicating. Many previous research efforts were concentrated in information hiding area on developing new techniques for hiding messages rather than enciphering them because hidden messages arouse less suspicion. So, the study of communications security includes not just the encryption of messages but also the traffic of messages security whose essence lies in hiding information techniques.To make the communication more secure, the secret information can be compressed and encrypted before it is hidden in the carrier. In this way the amount of information that is to be sent is minimized, and it is also easier to hide a random looking message into the carrier than to hide a message with a higher degree of regularity. Encrypting the compressed message before hiding is recommended to provide double protection.
2
Introduction
1.1
Aim
This project aims at a successful implementation of hiding the information in the cover image for secure data transmission and more efficient retrieval of data to authorized person. It performs the different boolean operators like AND, OR etc.
1.2
Motivation
Traditional content protection technologies, are unable to provide sufficient protection against various attacks in image data hiding. steganography can be more efficient than cryptography. Robust, high capacity, and secure data hiding schemes in steganography can provide required safeguard against these threats.
1.3
Objectives and Scope
1) To avoid insecure transmission of data. 2) To use cover image for hiding the information. 3) Difficult to retrieve the data by third party.
1.4
Features
Using the LSB technique for image steganography we will enhance the security.In this technique a steganographic schema based on statistical method is presented for BMP images in the spatial domain in which two bits in each selected pixel of an image is inserted.We are using Minimum error replacement (MER) and improved gray scale compensation (IGSC) steps to improve the final image visual quality.This technique provides high capacity for embedding the data.
3
Introduction
1.5
Hardware And Software Requirements
Pentium-4(2.66GHz, 504 Mbytes Memory) with Windows XP, Java ,Java Media Framework Java media package and Image Quality Measurement Tool, NetBeans 7.0 Implemented in Java.
4
Chapter 2 Literature Survey Literature survey is an important aspect, when it comes to gathering the information after the project is finalized. For the literature survey, we went through different websites, books and research papers. We also underwent its reader’s guide and user manual which is available online.Steganography, coming from the Greek words stegos, meaning roof or covered and graphia which means writing, is the art and science of hiding the fact that communication is taking place. Using Steganography, you can embed a secret message inside a piece of unsuspicious information and send it without anyone knowing of the existence of the secret message. Steganography and cryptography are closely related. Cryptography scrambles messages so they cannot be understood. Steganography on the other hand, will hide the message so there is no knowledge of the existence of the message in the first place. First of all we took an overview of all the available hiding techniques. It can be implemented in various format of images but we have used only in BMP image format.BMP image is used for hiding the text information which gives stego image as output to the receiver side.Then we thoroughly studied the hiding technique of BMP image using LSB technique. After that we studied the how the data is encoded in BMP cover image. And finally we studied about how the data is retrieved from stego image i.e. how to decoding technique is performed. We took help of following papers presented at different organizations to perform our literature survey. 5
Literature Survey
Table 2.1: Literature Survey Sr.no.
1.
2.
Title of papers with Au-
Year Of Pub-
Findings
Shortcomings
thors
lication
Content-Based Watermarking
2006
Technique for digital water-
Further modifications can not
using Image texture Author:
marking for secure data trans-
applied in digital watermark-
Mario Koppen, Xiufen Liu.
mission.
ing
Hide large amount of Informa-
present work was less effective
tion into carrier bitmap image.
at the pixels
technique for discriminating
is not suitable for active war-
Ismail Avcibas”, Nasir Mem-
between
den steganography where a
onb, Biilent Sankur’
stego-images..
A New Steganography Algo-
2004
rithm Based on Spatial Domain Author:
Wang Yan,
Ling-di Ping 3.
Simil arity Measur es. Author:
2001
cover-images
and
message is hidden in higher bit depths.
4.
Detection
Of
Steganalysis
LSB With
Steganography Image
5.
Image
2004
Binary
based
Smoothness
On
Author:
It can be used as a reference
The diversity of image data,
for the detection of steganog-
the randomness of both secret
raphy based on pixel value in-
messages and the embedding
crement/decrement.
process can also bring error to
Johnson N, Jajodia S, Westfeld
the estimation of the embed-
A.
ding ratio.
A New Image Steganography Technique Author:
2008
Hassan
Mathkour
It gives requirements of more
It does not supports some for-
robust
mats of images.
steganography
tech-
niques that take advantages of the presented strengths and avoids the limitations.
6.
StegoHunter:
This paper proposes a reli-
The selection of fixed value can
able framework for the detec-
not be done directly while its
Stego-Sensitive
tion of the Least Significant
on the basis of trial and er-
Threshold Close Color Pair
Bit (LSB) steganography using
ror method on a large set of
Signature Author: S.Geetha1,
digital media files as cover ob-
database.
Siva
jects.
of LSB based
Steganalysis
2005
Embedded Images on
S.Sivatha
Sindhu1,
R.Renganathan1,
P.Janaki
Raman1and Dr.N.Kamraj2 7.
Enhance the Image Sharing
2006
This technique not only main-
The common problem is that
with Steganography and Au-
tains secret image sharing and
all of these stego-images can-
thentication Author:
authentication ability but also
not recover to original cover
enhances the image quality.
images state.
Chia-
Chun Wu , Shang-Juh Kao, Wen-Chung Kuo and MinShiang Hwang 8.
For raw lossless compressed
the diversity of image data, the
Steganography Based On The
Reliable Detection Of LSB
2001
images the new algorithm has
randomness of both secret mes-
Difference Image Histogram
a better performance than the
sages and the embedding pro-
Author:
RS analysis method and im-
cess can also bring error to the
proves the computation speed
estimation of the embedding
significantly.
ratio.
Tao Zhang, Xijian
Ping
6
Literature Survey
2.1 2.1.1
Different types of hiding techniques Discrete Cosine Transform
This is a variation of the simple LSB technique. In this case, a discrete cosine transform (DCT) is used to transform 8 x 8 pixel blocks of the image into 64 DCT coefficients. This technique is used for files stored in the JPEG image format. The redundant bits selected to embed the hidden data are taken from the least-significant bits of the quantized DCT coefficients [6]. The modification on a single DCT coefficient 13 affects all 64 image pixel blocks. Thus the smoothening of the pixel alteration is virtually impossible for human visual detection.
2.1.2
DFT (discrete Fourier transform)
Hiding data in a transform domain is a popular practice in image watermarking. The discrete Fourier transform (DFT) is commonly used transform.The above transforms may be applied to image blocks or to the whole image frame.the full-frame two-dimensional discrete Fourier transform (DFT) coefficients of natural images and show that the independently and identically distributed model with unit exponential distribution is not a sufficiently accurate description of the statistics of normalized image periodograms. Consequently, the stochastic quantization index modulation (QIM) algorithm that aims at preserving this model is detectable in principle.
2.1.3
DWT (Discrete Wavelet Transform)
In DWT According to the simulation results, the PSNR is still a satisfactory value even the highest capacity case is applied. This is due to the different characteristics of DWT coefficients in different sub-bands. Since the most essential portion (the low frequency part) is kept unchanged while the secret messages are embedded in the high frequency sub-bands (corresponding to the edges portion of the original image), better PSNR is not a surprising result. Furthermore, respectable security is maintained as well since no message can be extracted without the ”Key matrix” and decoding rules. 7
Literature Survey
2.2
Comparison between Spatial domain and Frequency domain
Table 2.2: Comparison between spatial domain and frequency domain techniques Doma in
Spatial Domain
Frequency Domain
T ime domai n ( pi xel based)
Convert ing imag e i nto appropria te frequency domain
Types
Operates on LSB’s (1, 2, 3, 4, and even
There are 2 types. Full frame, which
5) depending on the image content.
is more robust, but it is more computationally cost. Block based (88 block, e.g.) which is less robust but less computationally cost.
Applications
Mainly for secure communications,
Mainly for watermarking, fingerprint-
since they require high payload
ing, broadcast monitoring, and other applications that require low payload but high robustness.
Robustness
Less robust, since any image process-
More robust, and can resist almost all
ing operations such as low pass filter-
image processing operations.
ing, JPEG compression, cropping, rotation, or scaling will mainly affect the embedded data Visibility
The visibility depends on the amount
It is less visible in almost all cases of
of data embedded and the image con-
the image
tent whether the area is smooth or texture. Capacity
Provide high capacity.
Provide low capacity.
Adaptation
Can be adapted to the area content.
Can be adapted to the area content
Decoding
Determining appropriate bits
Correlation detection with threshold value
2.3
Related workdone
Information hiding fall into two general categories based on the embedding (steganography) and detection techniques (steganalysis). The main objective of first category is to increase the payload, studying the properties of the stego-image before and after embedding process, and improving the robustness. The different techniques of steganalysis consider the performance of the detection process as the most important factors.Information 8
Literature Survey
hiding system includes several steps to achieve embedding of the secret message within a specific image. The most important step within such process is the technique, which will be used for embedding the data. At the same time, the nature of the image must be studied well. Most of steganographic techniques utilize the LSB embedding applied either directly to pixel values, to indices in palette images, or to quantized the coefficients for image format. Some of the recent research studied the nature of the stego and suggested new methodologies for increasing the capacity. Since the image is stored in a lossless format, there is much redundancy of which steganographic methods can take advantage. Although those methods that replace lower bit planes in the spatial domain are easily detectable by statistical tests, steganographic methods that affect the lower bit values of only a small percentage of the pixels are extremely difficult to detect by statistical means.Data hiding techniques operate in two existing domains,spatial domain and Frequency domain. Almost all spatial domain techniques are used for data hiding applications that require high payload and invisibility and do not require high robustness. In this domain, the images are divided into number of bit planes (usually eight) and use the first nth planes for embedding data since the noise in these planes are high. The image is divided into blocks and replaces a certain number of pixels from each block. While the frequency domain techniques are mainly used for digital watermarking, finger printing,authentication, copy control, tamper detection, integrity and ownership verification, self-correcting, and finally,broadcast monitoring. In such applications, a small amount of information is compulsory to be embedded in the cover media and hence these small amounts of information will cause small distortion and provide high invisibility. Information hiding, which refers to imperceptible embedding of information into a media host, has been considered as potential solutions to several problems, such as copyright protection, media authentication and covert communication, etc. There are two kinds of encryption techniques. One is based on transform domain. Popular transforms for the information hiding include the discrete Fourier transform(DFT), the twodimensional discrete cosine transform (DCT),the discrete wavelet transform (DWT) and 9
Literature Survey
the singular value decomposition (SVD), etc. In the transform domain, the perceptual distortion and the robustness can be easily balanced.By these methods the information is hidden in the high frequency heft of the carrier image code, which can not be observed by human eyes. Generally speaking, not much data can be concealed into a carrier image with all these methods.Another is based on spatial domain, a typical method to conceal information in the least significant bit (LSB). The LSB substitution algorithm is the simplest scheme to hide messages in a host image. It replaces the least significant bit(LSB) of each pixel with the encrypted message bit stream. Authenticated receivers can extract the message by deciphering the LSB of every pixel of the host image with apre-shared key. Because only the least significant bits of pixels are altered, it is visually imperceptible to humans, and the capacity of the algorithm is 1 bit per pixel. Here a new method is provided, which can create redundant space in a color image by color quantization and hide information in most significant bit of the image, including the most significant bit (shown in Figure a) , and the second significant bit ( shown in Figure b). The method is better than that in LSB since the least significant bit is very important to the visual effect of the image.
10
Literature Survey
Figure 2.1: Information hiding technique
11
Chapter 3 Concepts And Specifications 3.1
BMP Image File
Bitmap File Format To implement QUALITATIVE SPATIAL IMAGE DATA HIDING FOR SECURE DATA TRANSMISSION. It can be implemented in various format of images but we have used only in BMP image format.BMP image is used for hiding the text information which gives stego image as output to the receiver side.The steganography technique involves encoding and decoding steps which are based on the various algorithm. Thus by using this technique our data can be safe from intruder and we can transmit the data in secure way. A. Bitmap File Format:Bitmap images were introduced by Microsoft to be a standard image file format between users of their Windows operating system. The file format is now supported across multiple file systems and operating systems. A bitmap file can be broken into two main blocks, the header and the data. The header, which consists of 54 bytes, mainly contains the information of file type, file size and image size etc. The header can be broken into two sub-blocks. These are identified as the bitmap header, and the bitmap information. The data block of the bitmap file starts from the 55th byte, it contains the actual data of the image.
12
Concepts And Specifications
(1) The bitmap header The Bitmap Header is used to identify the file as a valid bitmap image. This is done primarily by the first two bytes,which read 0x42 and 0x4D (in ASCII: BM). The following four bytes express the size of the file, and the remaining eight bytes are reserved for application identification and offset lengths. The details structure of the bitmap header is as follows: typedefstructtagBITMAPFILEHEADER UINT bfType; // Bitmap identifier 0x42 0x4D (in ASCII it reads BM) DWORD bfSize; // Bitmap file size (in byte) UINT bfReserved1; // Reserved, usually zero UINT bfReserved2; // Reserved, usually zero DWORD bfOffBits; // Bitmap data offset BITMAPFILEHEADER; (2) The Bitmap information The Bitmap Information is composed of the next thirty bytes of the file, starting at byte fourteen. The structure is as follows: typedefstructtagBITMAPINFOHEADER DWORD biSize; // Bitmap header size LONG biWidth; // Bitmap image width (in pixels) LONG biHeight; // Bitmap image height (in pixels) WORD biPlanes; // Number of color planes (value mustbe 0) WORD biBitCount; // Bitmap color depth DWORD biCompression; // Bitmap compression method (For 24-bit images, the value is set to 0) DWORD biSizeImage; // Bitmap data size (For 24-bitimages, the value is set to 0) LONG biXPelsPerMeter; // Bitmap image horizontal rule LONG biYPelsPerMeter; // Bitmap image vertical resolution DWORD biClrUsed; // Number of colors used DWORD biClrImportant; // Number of important colors used BITMAPINFOHEADER; (3) Bitmap data This is the actual data part of the image, stored as pixels.The image stores itself in reverse order. The first line of data corresponds to the bottom line of an image, moving its way up.In a 24-bit image, each pixel is represented by 24 bits. All color variations for the pixels are derived from three primary colors: red, green and blue. Each primary 13
Concepts And Specifications
color is represented by 1 byte. For 24-bit image, it uses 3 bytes per pixel to represent a color value. The pixels are also stored in reverse -blue first, followed by green and then red. The property that is important to steganography is the fact that these pixels are explicitly written out in the file - which allows for easy identification and modification. B. Information Hiding Model
Figure 3.1: The Process Of Embedding Data
The embedded data is the message that one wishes to send secretly. It is usually using an algorithm,hidden in an innocuous object referred as a cover image or cover audio as appropriate, producing the stego-object. This process is called embedding. In contrast to this, the secret messages can also be recovered using the appropriate extraction algorithms. In order to make the communications more secure, a stego-key (it plays the role of a password) is used to control the hiding process so as to restrict detection and recovery of the embedded data to parties who know it.Fig shows demonstrates the embedding process.
14
Concepts And Specifications
3.2
Technique used
LSB technique:The LSB substitution algorithm is the simplest scheme to hide messages in a host image. It replaces the least significant bit (LSB) of each pixel with the encrypted message bit stream. Authenticated receivers can extract the message by deciphering the LSB of every pixel of the host image with a pre-shared key. Because only the least significant bits of pixels are altered, it is visually imperceptible to humans, and the capacity of the algorithm is 1 bit per pixel. The LSB information hiding algorithm is that the secret information is used to replace the carrier image pixel of least significant bit directly. In an image of true color bitmap, each value of pixel’s RGB is represented, respectively, with S0, S1, S2, S3, S4, S5, S6, S7 from low to high. The Secret data is embedded in the shadow bit of the byte, as shown in Figure 1.
Figure 3.2: LSB information hiding algorithm
3.3 3.3.1
Parameters Image embedding capacity
Data are hidden (or embedded) in a larger volume of data called a cover or a carrier. The cover is a computer file, such as text, image, audio, or video.Embedding capacity (also known as payload) is the amount of data that can be hidden in a cover, compared to the size of the cover. This feature can be measured numerically in units of bit-per-bit 15
Concepts And Specifications
(bpb). A steganographic algorithm with small embedding capacity may have other good features such as robustness, so it may be the ideal choice when only a small amount of data, such as a short message, has to be hidden.
3.3.2
Perceptual transparency
It is an exploit properties of the human visual .system ”perceptual” signal is imperceptible in the presence of other signals (needle in a haystack) . Perform analysis of image before embedding and place data in specific regions. It is the phenonmenon of seeing one surface behind another. Physically transparent surfaces allow the transmission of a certain amount of light rays through them. Sometimes nearly the totality of rays is transmitted across the surface without significant changes of direction. sometimes only light at a certain wavelength is transmitted, as for coloured glass. transparency illusion would be generated by coherent convergence and translation in colour space. However, also in colour space, evidence was found in which the perceptual appearance does not reflect the physical model. Attacks:A. visual attacks:Making use of the ability of humans to clearly discern between noise and visual patterns. B. statistical attacks : which are much easier to automate. The idea of the statistical attack is to compare the theoretically expected frequency distribution in steganograms with some sample distribution observed in the possibly changed carrier medium. 1.Tampering:Due to use of tampering, it makes difficult for an attacker to alter or forge a message once imbedded. Image tampering detection and steganalysis can be classified 16
Concepts And Specifications
into two categories. In the first category, manipulation-specific methods are developed with the aim of detecting a particular type of tampering operation such as compression, filtering, gamma correction, and re-sampling, or for identifying the presence of hidden data embedded using a specific steganographic embedding algorithm. Although these methods work well in detecting a particular type of tampering or steganographic embedding operation, it would require an exhaustive search over all the possible kinds of operations to establish the integrity of a digital image. In the second category, classifierbased approaches are proposed for generic tampering detection and for blind steganlysis on digital images. These techniques provide a framework for universal image forensic analysis independent of the nature of tampering or stego manipulations.The basic idea behind our approach is that image manipulations, such as tampering and steganographic embedding, change the image noise statistics in specific ways. 2.Compression (Zip compression):The ZIP file format is a data compression and archive format. A ZIP file contains one or more files that have been compressed, to reduce file size, or stored as is. The ZIP file format permits a number of compression algorithms. If you add encrypted files to a compressed folder, the files will be unencrypted when extracted, which might result in unintentional disclosure of personal or sensitive information. For that reason, you should avoid compressing encrypted files.
3.4
Project planning
Project planning is part of project management, which relates to the use of schedules to plan and subsequently report progress within the project environment. Initially, the project scope is de ned and the appropriate methods for completing the project are determined. Following this step, the durations for the various tasks necessary to complete the work are listed and grouped into a work breakdown structure. Once established and agreed, the plan becomes what is known as the baseline. Progress will be measured against the baseline throughout the life of the project. Analyzing progress compared to the baseline
17
Concepts And Specifications
is known as earned value management.
Table 3.1: Schedule for Project Planning Sr.no.
Name of Sub module
From
To
1.
Pr oblem defini tion and Final -
15-07-2010
15-08-2010
ization 2.
Preparation of Synop- sis
16-08-2010
31-08-2010
3.
Understanding and studyi ng
1-09-2010
15-09-2010
the problem statement in detail 4.
Literature Survey
16-09-2010
30-09-2010
5.
Study of hiding techniques of
1-10-2010
15-10-2010
16-10-2010
31-10-2010
steganography 6.
Study of LSB hiding technique and BMP image file format
7.
Preliminary Design
1-11-2010
15-11-2010
8.
Work on Module 1
1-01-2011
15-01-2011
9.
Work on Module 1
16-01-2011
31-01-2011
10.
Work on Module 2
1-02-2011
28-02-2011
11.
Work on Module 2
1-03-2011
15-03-2011
12.
Results and analysis
16-03-2011
30-03-2011
13.
Report Preparation
1-04-2011
15-04-2011
18
Chapter 4 Designs And Specifications 4.1
Introduction
For the implementation purpose, we have divided our project into 2 modules.
4.1.1
Hide the information in Cover Image
In this module, we capture the cover image and hide the information into the cover image. That means encoding technique is performed here.
4.1.2
Extract the information from Stego Image
In this module, we give the password to the authorized person through telephone. And here we extract the information from stego image by using the password. Finally we get the original information. That means decoding technique is performed here.
19
Designs And Specifications
Figure 4.1: Block Diagram of Steganography
20
Designs And Specifications
4.2
DFD’s (upto level 2)
Figure 4.2: Context-level DFD for spatial image data hiding
21
Designs And Specifications
Figure 4.3: Level 1 DFD for spatial image data hiding
22
Designs And Specifications
Figure 4.4: Level 2 DFD that refines the Embedding Process
23
Designs And Specifications
4.3
UML Diagrams
Figure 4.5: Use Case Diagram
24
Designs And Specifications
Figure 4.6: Sequence Diagram
25
Designs And Specifications
4.4 4.4.1
Project Modules Welcome Page
Welcome page greets the user. It consist of two menus namely (System and Steganography).
Figure 4.7: Welcome Page
26
Designs And Specifications
4.4.2
Login Page
Login page provides user name and password to invoke the system.
Figure 4.8: Login Module
27
Designs And Specifications
4.4.3
Hide Module
In this module, we capture the cover image and hide the information into the cover image. That means encoding technique is performed here.
Figure 4.9: Hide Module
28
Designs And Specifications
4.4.4
Extract Module
In this module, we give the password to the authorized person through telephone. And here we extract the information from stego image by using the password. Finally we get the original information. That means decoding technique is performed here.
Figure 4.10: Extract Module
29
Chapter 5 PERFORMANCE EVALUATION AND TESTING 5.1
Introduction
Testing is a process of executing a program with the intention of finding errors. Testing demonstrates that a software or hardware function appears to be working according to specification that behavior and performance requirements appear to have been met. The basic goal is to design a set of test cases that have a likehood of finding the errors. Data collection for testing is conducted, to provide a good reliability and some indication of software quality as a whole. Software testing is the process to access the quality of computer software. This includes, but is not limited to the process of executing a program or application with the intent of finding bugs. Quality is not an absolute, it is value to some person.. with that in mind, testing can never completely establish the correctness of arbitrary computer software; testing furnishes a criticism or comparison that compares the state and behavior of the product against the specification. Software testing is used in association with verification and validation. Verification: refers to the set of activities that ensure that the software implements the
30
PERFORMANCE EVALUATION AND TESTING
specific function correctly. Validation: refers to the set of activities that ensure that software which has been built is traceable to customer requirements. Test Plan: The test strategy defines multiple test levels, which are going to be performed for the project. Activities at each level must be planned well in advance and and it has to be formally documented. Based on the individual plans only, the individual test levels are carried out. Entry means the entry point to that phase. For example, for unit testing, the coding must be complete and then only the unit testing can be started. Task is the activity that is performed. Exit tells the completion criteria of the phase, after the validation is done.
5.2
Need for Testing
The reason for testing is to find errors. Every program or software has errors in it, against the common views that there are no errors in it if the program or software is working fine. Executing the programs with the intension of finding errors in it is therefore testing; hence a successful test is the one that finds errors. Testing is an activity, but however it is restricted to being performed after the development, starting with requirement specifications. Test cases are designed with a purpose in mind. A test case is a set of data that a system will process as a normal input. The software units are designed in the modules and routines that are assembled and integrated to perform the required function of the system. Test routines once gathered and evaluated, provide a qualitative indication of a software quality and reliability and serve as basis for design modification if required.
5.3
Purpose of Testing
1. To check the system across its functionality. 2. For Quality Assurance. 3. Identification of implementation errors before the product is shipped.
31
PERFORMANCE EVALUATION AND TESTING
4. Certain bugs are easy to find during testing.
5.4
Features to be Tested
To check the reliability of software, it will be tested across different inputs. The system should not fail for any kind of proper input given to it. All the data should be properly inserted and processed by the system.
5.5
Approach
The testing process is made up of 2 types. 1. Static testing 2. Dynamic testing Static testing refers to test something that is not running. It can be achieved by 1. Reviews 2. Inspections 3. Walkthroughs Dynamic testing refers to test the code through executing it. It is made up of 4 phases. 1. Unit testing 2. Integration testing. 3. Functional testing 4. System testing Testing of our project was perfomed in hardware lab of M.A.E. Alandi. The test cases and results for our project will be as follows:
32
PERFORMANCE EVALUATION AND TESTING
Table 5.1: Difference Between Original Image And Stego Image Sr.no.
Original Image
Stego Image
1.
2.
3.
4.
5.
33
Chapter 6 RESULTS AND ANALYSIS 6.1
Description of Image Table 6.1: Description Sr.no.
Stego Image
Amount of Information hidden
1.
It is the standard bmp image.The exact bytes are extracted from this image are 9364.
2.
It is the standard bmp image. The exact bytes are extracted from this image are 14691.
34
RESULTS AND ANALYSIS
Sr.no.
Stego Image
Amount of Information hidden
3.
It is the standard bmp image of Lena. The exact bytes are extracted from this image are 14030.
4.
It is the standard bmp image. The exact bytes are extracted from this image are 13862.
5.
It is the standard bmp image. The exact bytes are extracted from this image are 12639.
6.2
Zipping Table 6.2: Comparison Between Stego Image and Zipped Image Sr.no.
Stego Image
Zipped Image
1.
36.6KB.
29.7KB
2.
57.4KB
33.1KB
3.
54.8KB
48.1KB
4.
54.2KB
36.2KB
5.
49.4KB
24.5KB
35
RESULTS AND ANALYSIS
6.3
Effect Of Tampering Table 6.3: Comparison Between Stego Image and Tampered Image Sr.no.
Stego Image
Tampered Image
1.
The size of stego image1 before
The size of the stego image re-
tampering is 36.6KB.
mains costant but due to use of tampering the data below the tampered part gets destroyed.
2.
The size of stego image1 before
The size of the stego image re-
tampering is 57.4KB
mains costant but due to use of tampering the data below the tampered part gets destroyed.
3.
The size of stego image1 before
The size of the stego image re-
tampering is 54.8KB
mains costant but due to use of tampering the data below the tampered part gets destroyed.
4.
The size of stego image1 before
The size of the stego image re-
tampering is 54.2KB
mains costant but due to use of tampering the data below the tampered part gets destroyed.
5.
The size of stego image1 before
The size of the stego image re-
tampering is 49.4KB
mains costant but due to use of tampering the data below the tampered part gets destroyed.
Here,we have performed the tampering and gone through Zipping. The bytes extracted from the stego image and tampered image remains constant,but the data below the tampered part gets destroyed.The winzip is used here to compress the image size.The zipped image can be extracted by unzipping to it.Thus the zipping operation remains sustain for this steganography application.
36
Chapter 7 Applications 1) It is used for copyright protection, content labeling and hidden annotations. 2) It is also used for authentication and integrity verification secure communication. 3) A small amount of information is compulsory to be embedded in the cover media and hence these small amounts of information will cause small distortion and provide high invisibility. 4) Frequency domain techniques are mainly used for digital watermarking, fingerprinting, authentication, copy control, tamper detection, integrity and ownership verification, selfcorrecting, and finally, broadcast monitoring. 5) To enhance robustness of images search engine and smart IDs where individuals details are embedded in their photographs. 6) LSB embedding technique for electronic patient record based on bi-polar multiplebased data hiding. 7) Hiding data on the network in case of a breach. 8) Peer-to-peer private communications. 9)Posting secret communications on the Web to avoid transmission. 10) Embedding corrective audio or image data in case corrosion occurs from a poor connection or transmission.
37
Chapter 8 Future Scope And Conclusion 8.1
Future Scope
LSB techniques used with BITMAP format could prove to be beneficial for hiding data in BMP images in spatial domain over the network. High level security of confidential information can be achieved in spatial domain Distortion caused is less , so data could be easily retrieved and reconstructed by the intended receiver will help in its wider use. The proposed system which we are using for standalone system but the same technique could be implemented for multiple machine over the network.
8.2
Conclusion
In this technique, we satisfy the aim that says steganography is an effective way to obscure information and hide sensitive information. The present algorithm allows an individual to hide information inside other information with hopes that the transfer medium will be so obscure that no one would ever think to examine the contents of the file.The technique we have implemented is only for BMP images. It can be use for other formats like PNG,GIF,JPEG etc.
38
Bibliography [1] H. Arafat Ali ”Qualitative Spatial Image Data Hiding for Secure Data Transmission” G VIP Journal, Volume 7, Issue 2, August, 2007.
[2] Hao-Kuan Tso ”Information Hiding Method Using Sharing Images” 2 010 Fourth International Conference on Genetic and Evolutionary Computing. [3] Fridrich J, Goljan M, Du R. ”Detecting LSB steganography in color and gray-scale images.” I EEE Multimedia, 2001, Vol.8, No.4,pp22-28. [4] Shawn D. Dickman ”An Overview of Steganography” James Madison University Infosec Techreport Department of Computer Science JMU-INFOSEC-TR-2007-002. [5] Fu Bing1, Zhou Xiansan*2 ”Information Hiding Technique in Most Significant Bit of Still Image”. [6] Tao Zhang, Xijian Ping ”Reliable Detection Of LSB Steganography Based On The Difference Image Histogram”. [7] Chia-Chun Wu a, Shang-Juh Kao a, Wen-Chung Kuo b and Min-Shiang Hwang c,*” Enhance the Image Sharing with Steganography and Authentication”. [8] Fahim Irfan Alam et al ”An Investigation into Encrypted Message Hiding Through Images Using LSB” I nternational Journal of Engineering Science and Technology (IJEST). [9] WangYan ”A New Steganography Algorithm Based on Spatial Domain”.
39