A Genetic algorithm based crypt-steganography technique for message hiding in JPEG images Aleem Ali*, Sherin Zafarb, Reshmi Philip a)M. Tech Scholar, Jamia Hamdard(Hamdard University), Hamdard Nager, N. D-110062 b) F/O Engg, University Polytechnic, JMI, New Delhi-110025 Email: [email protected] com, [email protected] com, [email protected] com Running Head: A Genetic algorithm based crypt-steganography technique for message hiding in JPEG images *To whom correspondence should be addressed Aleem Ali M. Tech Scholar, Jamia Hamdard(Hamdard University), Hamdard Nager, N.
D-110062 Abstract Genetic algorithm based method of message hiding employs the features of both Cryptography and Steganography to provide high level protection of secret information . The developed system generates the CRC of the message to be hidden, compresses it to achieve faster speed of transmission and asks for a JPEG image which acts as a carrier of the message. The compressed message is then embedded into JPEG image by P01 algorithm using a secret key at the sending end, hence generating a crypt-stego JPEG image.
At the receiving end, the compressed message is extracted from crypt-stego using the same secret key which was used for embedding. The use of cryptography along with genetic algorithm makes the proposed “Crypt-Stegnography” technique more secure and maintains privacy and secrecy of the message. Genetic algorithm maintains appropriate peak signal to noise ratio of JPEG images which results in lesser probability of detection of secret message. The use of P01 technique ensures high embedding capacity. The experiments carried out through the developed system proves higher embedding capacity and maintains secrecy of data.
Keywords Crypt-Steganography ,Compression -Decompression, CRC Generation and verification,P01,GA. Introduction As an important component of multimedia information security information hiding has received wide attention in recent years. It includes digital watermark for digital rights management and steganography for secret communication. The former aims at copyright declaration and the later means hiding communication content in secret channel to resist detection . The steganography tools available in internet nowadays are numerous.
Most of them are based on the so-call LSB (least-significant-bit substitution) method. This class of steganography is a persistent research hot spot because of its high embedding capacity, variability and simplicity . It is based on the insensibility of human perception to images low bit plane . It can further categorize as either single pixel substitution or block-based substitution. The block-based method has a better image character conserving property comparing to single pixel substitution due to its blocking strategy.
The following formula provides a very generic description of the pieces of the steganographic process: cover_medium + hidden_data + stego_key = stego_mediumNote: 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.
The aim of our project is to develop “Crypt –Steganography” that uses cryptography along with genetic algorithm that makes our system more secure and maintains privacy and secrecy of the message. Crypt steganography “Crypt-Stegnography” is significantly more sophisticated than allowing a user to hide large amounts of information within image and audio files. This form of steganography is used in conjunction with cryptography so that the information is doubly protected; first it is encrypted and then hidden so that an adversary has to first find the information and then decrypt it.
Crypt-Stegnography can be specified by the following formula:
1. Sending End Message file(CRC generated+compressed)+Cover medium(JPEG image)+Secret key=Crypt-Stego Jpeg Image
2. Recieving End Crypt-Stego Jpeg Image+Secret key=De-embedded Message file from Crypt-Stego Jpeg Image. De-Embedded message file is then decompressed and CRC is verified to make the system more secure. Using genetic algorithm over LSB subsitution for embedding high capacity information Hidden files or pictures can be hidden in picture files because pictures files are so complex.
Pictures on a computer are represented by tons and tons of pixels. Each pixel consists of a variation of all three primary colors, red, green and blue. In a standard 24-bit bitmap, 8 bits will represent each of the three colors. 8 times 3 is 24. That means there are 256 different variations of each color in every pixel that makes up a picture. So, to represent the color white, the code would look like. Now, the human eye cannot distinguish the difference between too many colors and so the color would look exactly the same as white.
Because of this, the last digit in every bit in every pixel could be changed. This is the basis of the Least Significant Bit Insertion technique . The least-significant-bit (LSB) substitution which is commonly used in steganography would degrade the quality of host image significantly when embedding high-capacity information . To overcome this drawback our developed system “Crypt-Steganography” uses genetic algorithm that finds a best plus solution for P01 technique and minimizes peak signal to noise ratio of JPEG images which results in lesser probability of detection of secret message.
Plus 01(P01)is an improved method to least significant bits(LSB)-based steganographic techniques ,which not only foils typical attacks against LSB based techniques ,but also provide high embedding capacity. Here GA is used to optimize performance,such as maintains appropriate PSNR(Peak Signal to Noise Ratio). The developed system has following advantages:Appropriate will be the PSNR lesser will be the chances of detection of secret message and this is maintained by the Genetic Algorithm used in our developed system. Provides high embedding capacity.
Provides no visual differences between original image and crypt-stego image. System overview and flow chart The proposed method generates the CRC of the message to be hidden , compresses it to achieve faster speed of transmission and asks for a JPEG image which acts as a carrier of the message. The compressed message is then embedded into JPEG image by P01 algorithm using a secret key at the sending end, hence generating a “Crypt-stego” JPEG image. At the receiving end ,the compressed message is extracted from crypt-stego using the same secret key which was used for embedding .
The use of cryptography along with genetic algorithm makes the proposed “Crypt-Stegnography” technique more secure and maintains privacy and secrecy of the message. Genetic algorithm finds a best plus solution for P01 technique and maintains appropriate peak signal to noise ratio of JPEG images which results in lesser probability of detection of secret message. The use of P01 technique ensures high embedding capacity. P01 strategy based on genetic algorithm Plus 01 (P01) embedding is an improved method to LSB-based steganography techniques, which is easy to implement but difficult to detect.
In fact, if the LSB of a given coefficient does not match the message bit to be embedded, LSB-based steganography techniques add one to the even coefficients or subtract one from the odd coefficients, while P01 randomly inserts by zero or one to change the original value. Here we present concretely how to use P01 properly in JPEG images to get high capacity while preserving high security. Quantized DCT coefficients consist of three parts, stated as DC coefficients, zero AC coefficients and non-zero AC coefficients.
First, DC coefficients represent the mean luminance within a block, so changes to them are more likely to result in perceptual artificial blockiness. Second, zero AC coefficients occur at middle and high frequency continuously, so modifications to them break the structure of continuous zeros and abrupt non-zero values give a hint of the existence of secret bits. Last but the most important, non-zero AC coefficients occur at low and middle frequency, and perturbations to them do not affect the visual quality as much as DC members.
So non-zero AC coefficients are proper choices for carrying secret bits. P01 should be used in JPEG in this way : A negative even coefficient represents a steganographic one, a negative odd coefficient means a zero, while a positive even coefficient represents a steganographic zero, and a positive odd coefficient means a one. During embedding, if the secret bit is the same as what its corresponding non-zero AC coefficient represents, the coefficient is unchanged , otherwise the coefficient is inserted by zero or one randomly. Testing crypt- steganography method using P01 genetic algorithm
The above tables shows the comparison between the “Crypt Steganography” method using P01 genetic algorithm and other methods, for different JPEG images considering PSNR as the comparison formula. As shown in above tables, PSNR is maximised using the “Crypt Steganography” method and also provides a better performance than other algorithms. Hence the developed system is also a balance tradeoff between embedding quality and computation cost. In the developed system a greedy strategy is adopted to initialize the chromosomes by finding a collection of local optimal solutions as the ancestors for enhancing efficiency by using genetic algorithm.
The following conventions are used in the algorithm : PN = Pernutations available after both the cover and secret image are divided into N blocks. K = Chromosomes. N = Size of chromosomes. L = No of times repetition is done. Step 1: Sending End The message file (CRC generated+compressed) is embedded inside a cover medium(JPEG image)by using a secret key to get a Crypt-Stego Jpeg image. Step 2 : Maintaining PSNR using genetic algorithm. Note: There would be PN possible permutations available after both the cover and secret image are divided into N blocks. And each permutation represents a possible mapping function .
Obviously the evaluation of all these permutations for best mapping function selection could not finish within polynomial time. We utilize genetic algorithm for P01 function searching searching procedure. This procedure is described as follows: 2. 1 > Initialize K chromosomes with size N. The value inside each sequence is produced randomly. They cover the scope of 1~N. 2. 2 > Three operations will be conducted on each chromosome: reproduction, mutation and crossover. Especially the crossover results are checked and modified to make sure no repeat snippets, specified in .
This step produces 3* K chromosomes. 2. 3 > Fitness evaluation is conducted to select k best chromosomes as the survival of evolution. 2. 4 > Repeat 2. 1, 2. 2, 2. 3 L times, the chromosome with best fitness function is chosen. This is selected as the replace tab for block mapping between secret and cover images. 2. 5 > A pixel modification procedure is done for the purpose of handling least significant bit overturning. Note: If N could be assigned with arbitrary value, the solution space would be infinitely enlarged.
Then we can test all possible N values to find the best dividing length. Take into consideration the cost of genetic algorithm for best mapping function selection, the overall time complexity would be still a polynomial. On one hand, N=1 indicates that our method would map each pixel of the secret image into the most similar pixel in the cover image. But in such condition the mapping function is astonishingly huge (the number of pixels in cover image is M, the maximum number of this mapping table would be M *log2 M bits) and hence unacceptable.
According to above discussion, the selection of N can be considered as a tradeoff between the image property conserving of the mapping function and the size of mapping function. As the dividing number N increase from 1 to M, the PSNR value would firstly increase and then decrease. Furthermore, to reduce this degeneration of image quality, the mapping function (replace table) should be expressed more compactly. For example, it is converted into the form that each block of secret image has a serial number according to the mapping procedure, which indicates the sequential position of its according block in cover image.
The overall fitness function can be described as follows: Fitness function : f(n) = (M - N) - (Zij-Hij) + C*(log10N) /1000 Then PSNR = 10 log10 R2 / f(n) Note: This is defined as the fitness function in our genetic algorithm. In which the information gain is measured in accordance with MSE. M and N are the number of rows and columns in the input image, C is scale coefficient, Zi and Hi represent the pixel value before and after modification separately. The extracting procedure is simply the reverse procedure of embedding.
R is the maximum fluctuation in the input image data type. Step 3 : Compression of Crypt-Stego image To minimise the size differences between original image and Crypt-Stego image compression of Crypt-Stego image can be done which shows minimal size differences between the two images and in some cases the size of crypt-stego image is even reduced. Step 4 : Receiving End Now, the Crypt-Stego Jpeg image is taken and secret key is applied to de-embed secret message file from Crypt-Stego Jpeg image. De-Embedded message file is then decompressed and CRC is verified to make the system more secure.
Conclusion and future work Steganography is a fascinating and effective method of hiding data that has been used throughout history. Methods that can be employed to uncover such devious tactics, but the first step are awareness that such methods even exist. There are many good reasons to use this type of data hiding, including watermarking or a more secure central storage method for such things as passwords, or key processes. Regardless, the technology is easy to use and difficult to detect. The developed system provides an easy and secure message transmission across the network.
At the sending end the CRC generated message is compressed and embedded within an image file and then transmitted. At the receiving end, CRC is verified and message is retrieved and decompressed from the image. The developed systems contains two sessions. The first deals with embedding, retrieving and authentication of data. The second session will provide the utilities for compression and decompression of data. Futureb scope Currently the enhancement of cryptographic and steganographic algorithms and their implementation are in progress.
The following have being identified as future scope:
I. Implementation of cryptographic algorithm in hardware.
II. Development of public key algorithms for steganography and cryptography
III. Steganography using video as cover media
- Rongrong Ji, Hongxun Yao, Shaohui Liu, Liang Wang, "Genetic Algorithm Based Optimal Block Mapping Method for LSB Substitution”, iih-msp, pp. 215-218, 2006
- Ran Zan Wang, Chi-Fang, Ja-Chen, “Image hiding by optimal LSB Substituition and Genetic algorithm”, Lin pattern Recognition, pp. 683, 2001.
- Ejji Kawaguchi, Richard O Eason, “Principle anof BPCS – Steganography”, SPIE’s International Symposium on Voice, Video, and data Communications, pp. 464-473, 1998.
- Chi-Kwong, M Cheng “Hiding data in images by simple LSB substituition”, Pattern Recognition, pp. 469-474, 2004.
- Shiuh-Jeng Wang, “Steganography of capacity required using modulo operator for embedding secret image”, Applied Mathematics and Computation, pp. 99-116, 2005.
- Westfeld, “F5 — a steganographic algorithm — high capacity despite better steganalysis”, Information Hiding, Fourth International Workshop, pp. 89-302, 2001.
- J. Fridrich, M. Goljan, and D. Hogea, “Attacking the OutGuess”, Proceedings of the ACM Workshop on Multimedia and Security, pp. 1-13, 2002 .
- J. Fridrich, M. Goljan and D. Hogea,“Steganalysis of JPEG images: breaking the F5 algorithm”, Lecture notes in computer science, pp. 310-232, 2003.
- J. Fridrich, M. Goljan and R. Du, “Steganalysis Based on JPEG Compatibility”, Special session on Theoretical and Practical Issues in Digital Watermarking and Data Hiding, SPIE Multimedia Systems and Applications IV, pp. 275-280, 2001.
- JozsefLenti,“StegnographicMethods”,PeriodicaPolytechnica4, pp. 249–258, 2000.
-  Kristy Westphal “Stegnography Revealed”, Security focus,pp. 2-28, 2003-04-0
-  K. Solanki, A. Sarkar, and B. S. Manjunath, “YASS: Yet another steganographic scheme that resists blind Steganalysis", Information Hiding, 9th International Workshop, Springer-Verlag, pp. 16-31, 2007.
-  M. Madavi, S. Samavi, V. Sabeti, “Transform domain steganography using random blocking for uncompressed images”, 4th Iranian Society of Cryptology Conference, pp. 292-295, 2007.
-  M. Ramkumar, A. N. Akansu, “Capacity estimates for data hiding in compressed images”, IEEE Transaction on Image Processing, pp. 1252-1263, 2001 .
-  NeilF. Johnson, “Stegnography” Technical report IEEE Computer, pp. 26-34, 1995.
-  N. Provos, “Defending against statistical steganalysis”, 10th USENIX Security Symposium, pp. 323-335, 2001.
- Lifang Yu, Yao Zhao, Rongrong Ni, ZhenfengZhu “PM1 Stegnography in JPEG images using Genetic algorithm” Springer-Verlag pp. 393-400, 2008.
-  R. E. Newman, I. S. Moskowitz, LiWu Chang and M. M. Brahmadesam, “Information Hiding”, 5th International Workshop, pp. 58-277, 2002.
-  Srihari Shridharan, “A Computationally Secure and Randomized Method for Cryptography and Spatial Domain Stegnography” Library. Ru, pp. 13-32, 2007.
-  V. Sabeti, S. Samavi, M. Mahdavi, S. Shirani , "Steganalysis of Pixel-Value Differencing Steganographic Method,” Proceedings of IEEE Pacific Rim conference, pp. 292-295, 2007.
-  Danish Raza Rizvi “ Data Security and Authentication Using Steganography” National conference on Issues and Challenges in Internet & Mobile Computing, pp. 5-8, 2008.
-  R. J. Anderson and F. A. P. Petitcolas, “On the Limits of Steganography”, Selected Areas in Comm. , pp. 474–481, 1998.
- F. A. P. Petitcolas, R. J. Anderson, and M. G. Kuhn, “Information Hiding—A Survey”, Proc. IEEE, pp. 1062–1078, 1999.
- B. Chen and G. W. Wornell, “Quantization Index Modulation” IEEE Trans. Information Theory, Methods for Digital Watermarking and Information Embedding, pp. 1423–1443, 2001.
- N. F. Johnson and S. Jajodia, “Exploring Steganography: Seeing the Unseen", Computer portal, pp. 26–34, 1998.
-  J. Sciences Militaires (J. Military Science, in French), A. Kerckhoffs, “La Cryptographie Militaire (Military Cryptography)", pp. 161-191, 1883.
- Huynh-Thu, Q. Ghanbari, "Scope of validity of PSNR in image/video quality assessment", Electronics Letters pp. 800–801, 2008.
-  J. Fridrich, T. Pevny, and J. Kodovsky, “Statistically Undetectable JPEG Steganography: Dead End Challenges and Opportunities", ACM MM&S Workshop, Dallas, TX, pp. 3-14, 2007.
-  G J Simmons,“Prisoners Problem and the Subliminal Channel”, Proc Int Conf Advances in Cryptology, pp. 51–67, 1984.
-  A D Ker ,“Steganalysis of LSB Matching in Grayscale Images”, IEEE Signal Processing Letters, 2005.
-  Shao-Hui Liu , Tian-Hang Chen , Hong-Xun Yao Wen Ga ,“A variable depth LSB data hiding technique in images”, The third international conference on Machine Learning and Cybernetics, pp. 3990 – 3994, 2004.
- Yi-Ta Wu, Frank Y Shih, “Genetic Algorithm Based Methodology for Breaking the Steganalytic Systems”, IEEE Transactions on systems, man, and cybernetics PartB :cybernetics, pp. 24-31, 2006.
-  E Kawaguchi, R Eason, “Principle and applications of BPCS- Steganography”, Multimedia Systems and Applications, pp. 64– 472, 1998.
-  N F Johnson, Z Duric and S Jajodia, Boston, Kluwer, “Information hiding : Steganography and watermarking-Attacks and Counter measures”, Academic Publishers, pp. 161 pages,2000.
- Ran-Zan Wang, Chi-Fang Lin, Ja-Chen Lin, "Image hiding by optimal LSB substitution and genetic algorithm”, Pattern Recognition, pp. 671-683, 2001.
-  “Chi-Kwong Chang, L M Chen, "Improved hiding data in images by optimal moderately significant-bit replacement”, Electronics Letters, pp. 1017 –1018, 2001.